From owner-p4-projects@FreeBSD.ORG Sun Dec 23 03:55:40 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8DE4716A419; Sun, 23 Dec 2007 03:55:40 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0BED916A417 for ; Sun, 23 Dec 2007 03:55:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0D0AA13C442 for ; Sun, 23 Dec 2007 03:55:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN3tbcW083104 for ; Sun, 23 Dec 2007 03:55:37 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN3tb5N083101 for perforce@freebsd.org; Sun, 23 Dec 2007 03:55:37 GMT (envelope-from jb@freebsd.org) Date: Sun, 23 Dec 2007 03:55:37 GMT Message-Id: <200712230355.lBN3tb5N083101@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 131452 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 03:55:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131452 Change 131452 by jb@jb_freebsd1 on 2007/12/23 03:54:52 This machine is too slow to boot and shutdown with the USB support built in. Bye-bye USB bye-bye. Affected files ... .. //depot/projects/dtrace/src/sys/amd64/conf/YABBA#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/amd64/conf/YABBA#2 (text+ko) ==== @@ -8,3 +8,32 @@ # This panics my Dell 531S. Bad ohci, no biscuit. nodevice ohci +nodevice uhci # UHCI PCI->USB interface +nodevice ehci # EHCI PCI->USB interface (USB 2.0) +nodevice usb # USB Bus (required) +nodevice ugen # Generic +nodevice uhid # "Human Interface Devices" +nodevice ukbd # Keyboard +nodevice ulpt # Printer +nodevice umass # Disks/Mass storage - Requires scbus and da +nodevice ums # Mouse +nodevice ural # Ralink Technology RT2500USB wireless NICs +nodevice rum # Ralink Technology RT2501USB wireless NICs +nodevice urio # Diamond Rio 500 MP3 player +nodevice uscanner # Scanners +nodevice ucom # Generic com ttys +nodevice uark # Technologies ARK3116 based serial adapters +nodevice ubsa # Belkin F5U103 and compatible serial adapters +nodevice ubser # BWCT console serial adapters +nodevice uftdi # For FTDI usb serial adapters +nodevice uipaq # Some WinCE based devices +nodevice uplcom # Prolific PL-2303 serial adapters +nodevice uvisor # Visor and Palm devices +nodevice uvscom # USB serial support for DDI pocket's PHS +nodevice aue # ADMtek USB Ethernet +nodevice axe # ASIX Electronics USB Ethernet +nodevice cdce # Generic USB over Ethernet +nodevice cue # CATC USB Ethernet +nodevice kue # Kawasaki LSI USB Ethernet +nodevice rue # RealTek RTL8150 USB Ethernet +nodevice udav # Davicom DM9601E USB From owner-p4-projects@FreeBSD.ORG Sun Dec 23 03:59:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A25BC16A419; Sun, 23 Dec 2007 03:59:43 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 87A0016A417 for ; Sun, 23 Dec 2007 03:59:42 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 70B4313C447 for ; Sun, 23 Dec 2007 03:59:42 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN3xg1j083224 for ; Sun, 23 Dec 2007 03:59:42 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN3xgE0083221 for perforce@freebsd.org; Sun, 23 Dec 2007 03:59:42 GMT (envelope-from jb@freebsd.org) Date: Sun, 23 Dec 2007 03:59:42 GMT Message-Id: <200712230359.lBN3xgE0083221@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 131453 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 03:59:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=131453 Change 131453 by jb@jb_freebsd1 on 2007/12/23 03:58:59 The init functions are static on FreeBSD so they don't need to be declared here. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/cyclic_impl.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/cyclic_impl.h#3 (text) ==== @@ -424,8 +424,10 @@ cyb_arg_t cyb_arg; } cyc_backend_t; +#if defined(sun) extern void cyclic_init(cyc_backend_t *be, hrtime_t resolution); extern void cyclic_mp_init(void); +#endif #ifdef DEBUG #define CYCLIC_TRACE From owner-p4-projects@FreeBSD.ORG Sun Dec 23 04:32:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E40B116A41A; Sun, 23 Dec 2007 04:32:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5C7F416A418 for ; Sun, 23 Dec 2007 04:32:17 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5DCD613C45D for ; Sun, 23 Dec 2007 04:32:17 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN4WHpf089638 for ; Sun, 23 Dec 2007 04:32:17 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN4WHuH089635 for perforce@freebsd.org; Sun, 23 Dec 2007 04:32:17 GMT (envelope-from jb@freebsd.org) Date: Sun, 23 Dec 2007 04:32:17 GMT Message-Id: <200712230432.lBN4WHuH089635@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 131454 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 04:32:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131454 Change 131454 by jb@jb_freebsd1 on 2007/12/23 04:32:07 Fix the test-and-set. The return type is inverted. Oops. Enable the mp_init() function so that it can be called via a SYSINIT at the end of SI_SUB_SMP after the APs are launched. This case occurs if the cyclic module is loaded from the boot loader, in which case it initialises itself as early as possible to support tracing what happens on cpu0, in proc0 and thread0. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#8 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#8 (text) ==== @@ -610,7 +610,11 @@ break; if (cyc_coverage[ndx].cyv_why != NULL || - casptr(&cyc_coverage[ndx].cyv_why, NULL, why) != 0) { +#if defined(sun) + casptr(&cyc_coverage[ndx].cyv_why, NULL, why) != NULL) { +#else + atomic_cmpset_ptr((volatile uintptr_t *) &cyc_coverage[ndx].cyv_why, (uintptr_t) NULL, (uintptr_t) why) == 0) { +#endif if (++ndx == CY_NCOVERAGE) ndx = 0; @@ -2866,7 +2870,11 @@ return (cyclic_resolution); } +#if defined(sun) void +#else +static void +#endif cyclic_init(cyc_backend_t *be, hrtime_t resolution) { ASSERT(MUTEX_HELD(&cpu_lock)); @@ -2900,8 +2908,12 @@ * find the already initialized CPU, and initialize every other CPU with the * same backend. Finally, we register a cpu_setup function. */ +#if defined(sun) void -cyclic_mp_init() +#else +static void +#endif +cyclic_mp_init(void) { cpu_t *c; #if !defined(sun) @@ -2926,13 +2938,11 @@ } #if defined(sun) } while ((c = c->cpu_next) != cpu_list); + + register_cpu_setup_func((cpu_setup_func_t *)cyclic_cpu_setup, NULL); #else } #endif - -#if defined(sun) - register_cpu_setup_func((cpu_setup_func_t *)cyclic_cpu_setup, NULL); -#endif mutex_exit(&cpu_lock); } @@ -2948,7 +2958,10 @@ if ((pc = pcpu_find(id)) == NULL) continue; - c = &cyclic_cpu[pc->pc_cpuid]; + c = &cyclic_cpu[id]; + + if (c->cpu_cyclic == NULL) + continue; cyclic_offline(c); cyclic_unconfigure(c); @@ -3115,7 +3128,9 @@ cyc_id_t *idp; CYC_PTRACE1("online", cpu); +#if defined(sun) ASSERT(c->cpu_flags & CPU_ENABLE); +#endif ASSERT(MUTEX_HELD(&cpu_lock)); ASSERT(cpu->cyp_state == CYS_OFFLINE); From owner-p4-projects@FreeBSD.ORG Sun Dec 23 04:35:21 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A42CF16A468; Sun, 23 Dec 2007 04:35:21 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 57A4B16A41B for ; Sun, 23 Dec 2007 04:35:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 594BB13C45A for ; Sun, 23 Dec 2007 04:35:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN4ZK0Q090146 for ; Sun, 23 Dec 2007 04:35:20 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN4ZKHE090143 for perforce@freebsd.org; Sun, 23 Dec 2007 04:35:20 GMT (envelope-from jb@freebsd.org) Date: Sun, 23 Dec 2007 04:35:20 GMT Message-Id: <200712230435.lBN4ZKHE090143@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 131455 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 04:35:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=131455 Change 131455 by jb@jb_freebsd1 on 2007/12/23 04:34:32 Add a SYSINIT to the end of the SI_SUB_SMP to initialise the cyclic device on the APs just launched. If the cyclic device is loaded after the kernel is booted, this isn't necessary because all the CPUs are listed in the pcpu list. It's only in the case where the cyclic device is loaded by the boot loader that it will be initialised on cpu0 well before and APs are launched. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/amd64/cyclic_machdep.c#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/amd64/cyclic_machdep.c#2 (text+ko) ==== @@ -86,6 +86,15 @@ c->cpu_intr_actv &= ~(1 << CY_LOCK_LEVEL); } +static void +cyclic_ap_start(void *dummy) +{ + /* Initialise the rest of the CPUs. */ + cyclic_mp_init(); +} + +SYSINIT(cyclic_ap_start, SI_SUB_SMP, SI_ORDER_ANY, cyclic_ap_start, NULL); + /* * Machine dependent cyclic subsystem initialisation. */ From owner-p4-projects@FreeBSD.ORG Sun Dec 23 04:36:22 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5119E16A469; Sun, 23 Dec 2007 04:36:22 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0FD4D16A421 for ; Sun, 23 Dec 2007 04:36:22 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1163E13C45B for ; Sun, 23 Dec 2007 04:36:22 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN4aLOJ090193 for ; Sun, 23 Dec 2007 04:36:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN4aLSx090190 for perforce@freebsd.org; Sun, 23 Dec 2007 04:36:21 GMT (envelope-from jb@freebsd.org) Date: Sun, 23 Dec 2007 04:36:21 GMT Message-Id: <200712230436.lBN4aLSx090190@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 131456 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 04:36:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=131456 Change 131456 by jb@jb_freebsd1 on 2007/12/23 04:36:02 Initialise the CPU mutex and ensure it gets locked around calls that have asserts which check that it is locked. Leave the cyclic_fire() call disabled for now. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/kern/kern_cyclic.c#6 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/kern/kern_cyclic.c#6 (text+ko) ==== @@ -32,8 +32,24 @@ static void cyclic_load(void *dummy) { + int i; + + mutex_init(&cpu_lock, "Cyclic CPU lock", MUTEX_DEFAULT, NULL); + + mutex_enter(&cpu_lock); + + /* + * "Enable" all CPUs even though they may not exist just so + * that the asserts work. On FreeBSD, if a CPU exists, it is + * enabled. + */ + for (i = 0; i < MAXCPU; i++) + cyclic_cpu[i].cpu_flags &= CPU_ENABLE; + /* Initialise the machine-dependent backend. */ cyclic_machdep_init(); + + mutex_exit(&cpu_lock); } SYSINIT(cyclic_register, SI_SUB_CYCLIC, SI_ORDER_SECOND, cyclic_load, NULL) @@ -41,8 +57,14 @@ static void cyclic_unload(void) { + mutex_enter(&cpu_lock); + /* Uninitialise the machine-dependent backend. */ cyclic_machdep_uninit(); + + mutex_exit(&cpu_lock); + + mutex_destroy(&cpu_lock); } SYSUNINIT(cyclic_unregister, SI_SUB_CYCLIC, SI_ORDER_SECOND, cyclic_unload, NULL); @@ -58,8 +80,10 @@ c->cpu_intr_actv |= (1 << CY_HIGH_LEVEL); +#ifdef DOODAD /* Fire any timers that are due. */ cyclic_fire(c); +#endif c->cpu_intr_actv &= ~(1 << CY_HIGH_LEVEL); } From owner-p4-projects@FreeBSD.ORG Sun Dec 23 04:43:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 325EF16A468; Sun, 23 Dec 2007 04:43:39 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 009DC16A418 for ; Sun, 23 Dec 2007 04:43:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F3FC313C45D for ; Sun, 23 Dec 2007 04:43:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN4hbr9091476 for ; Sun, 23 Dec 2007 04:43:37 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN4hTH3091435 for perforce@freebsd.org; Sun, 23 Dec 2007 04:43:29 GMT (envelope-from jb@freebsd.org) Date: Sun, 23 Dec 2007 04:43:29 GMT Message-Id: <200712230443.lBN4hTH3091435@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 131457 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 04:43:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=131457 Change 131457 by jb@jb_freebsd1 on 2007/12/23 04:42:41 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/nanobsd/article.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/faq/book.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#12 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/ports/chapter.sgml#9 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#50 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/share/sgml/mailing-lists.ent#5 integrate .. //depot/projects/dtrace/ports/MOVED#57 integrate .. //depot/projects/dtrace/src/contrib/openpam/CREDITS#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/HISTORY#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/INSTALL#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/LICENSE#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/MANIFEST#4 delete .. //depot/projects/dtrace/src/contrib/openpam/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/README#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/RELNOTES#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/aclocal.m4#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/autogen.sh#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/bin/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/bin/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/bin/su/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/bin/su/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/bin/su/su.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/compile#1 branch .. //depot/projects/dtrace/src/contrib/openpam/config.h.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/configure#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/configure.ac#5 integrate .. //depot/projects/dtrace/src/contrib/openpam/depcomp#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam.man#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_borrow_cred.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_free_data.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_free_envlist.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_get_option.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_log.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_nullconv.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_readline.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_restore_cred.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_set_option.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/openpam_ttyconv.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam.conf.5#5 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam.man#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_acct_mgmt.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_authenticate.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_chauthtok.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_close_session.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_conv.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_end.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_error.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_get_authtok.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_get_data.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_get_item.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_get_user.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_getenv.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_getenvlist.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_info.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_open_session.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_prompt.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_putenv.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_set_data.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_set_item.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_setcred.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_setenv.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_sm_acct_mgmt.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_sm_authenticate.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_sm_chauthtok.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_sm_close_session.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_sm_open_session.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_sm_setcred.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_start.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_strerror.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_verror.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_vinfo.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/doc/man/pam_vprompt.3#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/openpam.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/openpam_attr.h#1 branch .. //depot/projects/dtrace/src/contrib/openpam/include/security/openpam_version.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/pam_appl.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/pam_constants.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/pam_modules.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/include/security/pam_types.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/install-sh#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_borrow_cred.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_configure.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_dispatch.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_dynamic.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_findenv.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_free_data.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_free_envlist.c#5 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_get_option.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_impl.h#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_load.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_log.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_nullconv.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_readline.c#5 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_restore_cred.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_set_option.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_static.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/openpam_ttyconv.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_acct_mgmt.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_authenticate.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_authenticate_secondary.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_chauthtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_close_session.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_end.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_error.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_get_authtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_get_data.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_get_item.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_get_mapped_authtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_get_mapped_username.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_get_user.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_getenv.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_getenvlist.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_info.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_open_session.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_prompt.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_putenv.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_set_data.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_set_item.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_set_mapped_authtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_set_mapped_username.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_setcred.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_setenv.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_acct_mgmt.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_authenticate.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_authenticate_secondary.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_chauthtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_close_session.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_get_mapped_authtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_get_mapped_username.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_open_session.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_set_mapped_authtok.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_set_mapped_username.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_sm_setcred.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_start.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_strerror.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_verror.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_vinfo.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/lib/pam_vprompt.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/ltconfig#4 delete .. //depot/projects/dtrace/src/contrib/openpam/ltmain.sh#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/misc/gendoc.pl#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/missing#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/mkinstalldirs#4 delete .. //depot/projects/dtrace/src/contrib/openpam/modules/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_deny/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_deny/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_deny/pam_deny.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_permit/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_permit/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_permit/pam_permit.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_unix/Makefile.am#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_unix/Makefile.in#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/modules/pam_unix/pam_unix.c#4 integrate .. //depot/projects/dtrace/src/contrib/openpam/stamp-h.in#4 delete .. //depot/projects/dtrace/src/games/fortune/datfiles/fortunes#26 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/grantpt.c#5 integrate .. //depot/projects/dtrace/src/lib/libpam/libpam/Makefile#4 integrate .. //depot/projects/dtrace/src/lib/libpam/modules/pam_krb5/pam_krb5.c#4 integrate .. //depot/projects/dtrace/src/lib/libpam/modules/pam_ssh/pam_ssh.c#5 integrate .. //depot/projects/dtrace/src/lib/libpam/modules/pam_unix/pam_unix.c#5 integrate .. //depot/projects/dtrace/src/lib/libutil/pty.c#6 integrate .. //depot/projects/dtrace/src/sbin/devd/devd.hh#4 integrate .. //depot/projects/dtrace/src/share/man/man4/ng_car.4#4 integrate .. //depot/projects/dtrace/src/share/man/man7/ports.7#9 integrate .. //depot/projects/dtrace/src/sys/dev/aac/aac.c#10 integrate .. //depot/projects/dtrace/src/sys/i386/pci/pci_pir.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/init_main.c#23 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thread.c#19 integrate .. //depot/projects/dtrace/src/sys/kern/sched_ule.c#21 integrate .. //depot/projects/dtrace/src/sys/netinet/in_pcb.c#16 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/grackle.c#7 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/macio.c#6 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/uninorth.c#8 integrate .. //depot/projects/dtrace/src/sys/powerpc/psim/iobus.c#6 integrate .. //depot/projects/dtrace/src/sys/vm/vm_page.c#28 integrate .. //depot/projects/dtrace/src/sys/vm/vm_phys.c#3 integrate .. //depot/projects/dtrace/src/sys/vm/vm_phys.h#2 integrate .. //depot/projects/dtrace/src/usr.bin/usbhidctl/usbhid.c#5 integrate .. //depot/projects/dtrace/src/usr.sbin/mergemaster/mergemaster.sh#5 integrate .. //depot/projects/dtrace/src/usr.sbin/ppp/auth.c#4 integrate .. //depot/projects/dtrace/www/de/java/index.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/amd64.sgml#7 integrate .. //depot/projects/dtrace/www/de/projects/projects.sgml#3 integrate .. //depot/projects/dtrace/www/de/share/sgml/news.xml#15 integrate .. //depot/projects/dtrace/www/en/platforms/amd64/motherboards.sgml#21 integrate .. //depot/projects/dtrace/www/en/projects/projects.sgml#12 integrate .. //depot/projects/dtrace/www/share/sgml/commercial.consult.xml#11 integrate .. //depot/projects/dtrace/www/share/sgml/commercial.hardware.xml#6 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/nanobsd/article.sgml#4 (text+ko) ==== @@ -15,7 +15,7 @@ - $FreeBSD: doc/en_US.ISO8859-1/articles/nanobsd/article.sgml,v 1.2 2007/12/10 21:44:19 blackend Exp $ + $FreeBSD: doc/en_US.ISO8859-1/articles/nanobsd/article.sgml,v 1.3 2007/12/21 21:19:54 gabor Exp $ 2006 @@ -326,6 +326,23 @@ + Adding packages + + Packages can be added to a NanoBSD + image using a custom function. The following fuction will install + all the packages located in + /usr/src/tools/tools/nanobsd/packages: + + install_packages () ( +mkdir -p ${NANO_WORLDDIR}/packages +cp /usr/src/tools/tools/nanobsd/packages/* ${NANO_WORLDDIR}/packages +chroot ${NANO_WORLDDIR} sh -c 'cd packages; pkg_add -v *;cd ..;' +rm -rf ${NANO_WORLDDIR}/packages +) +customize_cmd install_packages + + + Configuration file example A complete example of a configuration file for building a ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/faq/book.sgml#13 (text+ko) ==== @@ -10,7 +10,7 @@ The FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/faq/book.sgml,v 1.805 2007/07/30 09:18:51 remko Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/faq/book.sgml,v 1.807 2007/12/20 22:15:51 gabor Exp $ 1995 @@ -1046,6 +1046,22 @@ #FreeBSD is. + + Channel ##FreeBSD on + Freenode + is a general help channel with about 300 users at any time. + The conversations have been known to run off-topic for a while, + but priority is given to users with FreeBSD questions. We are + good about helping you understand the basics, referring to the + Handbook whenever possible, and directing you where to learn + more about the topic you need help with. We are a primarily + English speaking channel, though we have users from all over + the world. If you would like to speak in your native language, + try to ask the question in English and then relocate to another + channel ##freebsd-lang as + appropriate. + + Channel #FreeBSD on DALNET @@ -2556,6 +2572,32 @@ + + + How do I use my delete key in sh and + csh? + + + + For the Bourne Shell, add the + following lines to your .shrc. See &man.sh.1; + and &man.editrc.5;. + + bind ^? ed-delete-next-char # for console +bind ^[[3~ ed-delete-next-char # for xterm + + For the C Shell, add the following + lines to your .cshrc. See &man.csh.1;. + + bindkey ^? delete-char # for console +bindkey ^[[3~ delete-char # for xterm + + For more information, see this page. + + + + ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#13 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -3072,6 +3072,21 @@ + Address limits + + The number of unique source MAC addresses behind an + interface can limited. Once the limit is reached packets + with unknown source addresses are dropped until an + existing host cache entry expires or is removed. + + The following example sets the maximum number of Ethernet + devices for CustomerA on + vlan100 to 10. + + &prompt.root; ifconfig bridge0 ifmaxaddr vlan100 10 + + + SNMP Monitoring The bridge interface and STP parameters can be monitored ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#12 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -4099,6 +4099,10 @@ a sectorsize of 4 kilobytes and the detach on last close option set: + geli_swap_flags="-e blowfish -l 128 -s 4096 -d" + + For systems prior to &os; 6.2-RELEASE, use the following line: + geli_swap_flags="-a blowfish -l 128 -s 4096 -d" Please refer to the description of the onetime command ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/ports/chapter.sgml#9 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -1117,6 +1117,26 @@ job. + + + Reconfiguring Ports + + When building certain ports, you may be presented with a + ncurses-based menu from which you can select certain build options. + It is not uncommon for users to wish to revisit this menu to add, + remove, or change these options after a port has been built. There + are many ways to do this. One option is to go into the directory + containing the port and type make + config, which will simply present the menu + again with the same options selected. Another option is to use + make showconfig which + will show you all the configuration options for the port. Yet + another option is to execute make + rmconfig which will remove all selected + options and allow you to start over. All of these options, and + others, are explained in great detail in in the man page for + &man.ports.7;. + ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#50 (text+ko) ==== @@ -1,7 +1,7 @@ 700055 + + + 7.0-STABLE after 7.0-RELEASE + 700100 + 8.0-CURRENT. Separating wide and single byte ctype. ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/share/sgml/mailing-lists.ent#5 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -170,6 +170,10 @@ FreeBSD-emulatie mailinglijst"> freebsd-emulatie"> + +FreeBSD-eol mailinglijst"> +freebsd-eol"> + FreeBSD FireWire (IEEE 1394) discussion mailinglijst"> freebsd-firewire"> @@ -226,6 +230,10 @@ FreeBSD Internet service provider mailinglijst"> freebsd-isp"> + +FreeBSD jails mailinglijst"> +freebsd-jail"> + FreeBSD Java Language mailinglijst"> freebsd-java"> @@ -234,7 +242,7 @@ FreeBSD gerelateerd werk mailinglijst"> freebsd-jobs"> - + FreeBSD KDE/Qt en KDE applicaties mailinglijst"> freebsd-kde"> @@ -382,6 +390,10 @@ FreeBSD C99 en POSIX compliance mailinglijst"> freebsd-standards"> + +FreeBSD sun4v porting mailinglijst"> +freebsd-sun4v"> + FreeBSD test mailinglijst"> freebsd-test"> ==== //depot/projects/dtrace/ports/MOVED#57 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1521 2007/12/17 01:43:56 araujo Exp $ +# $FreeBSD: ports/MOVED,v 1.1522 2007/12/21 15:31:17 garga Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -3343,3 +3343,4 @@ java/linux-sun-jdk12|java/linux-sun-jdk16|2007-12-11|Obsolete version x11-wm/ion-3||2007-12-12|Removed by insistence of software author net/sipp|benchmarks/sipp|2007-12-16|new category +sysutils/xdd|benchmarks/xdd|2007-12-21|Moved to a better category ==== //depot/projects/dtrace/src/contrib/openpam/CREDITS#4 (text) ==== @@ -14,6 +14,7 @@ Andrew Morgan Brian Fundakowski Feldman Christos Zoulas + Daniel Richard G. Darren J. Moffat Dmitry V. Levin Emmanuel Dreyfus @@ -24,11 +25,13 @@ Hubert Feyrer Mark Murray Mike Petullo + Mikhail Teterin Mikko Työläjärvi Robert Watson Ruslan Ermilov Solar Designer Takanori Saneto + Wojciech A. Koszek Yar Tikhiy -$P4: //depot/projects/openpam/CREDITS#12 $ +$Id: CREDITS 400 2007-10-24 15:04:23Z des $ ==== //depot/projects/dtrace/src/contrib/openpam/HISTORY#4 (text) ==== @@ -1,4 +1,27 @@ -OpenPAM Figwort 2005-06-16 +OpenPAM Hydrangea 2007-12-21 + + - ENHANCE: when compiling with GCC, mark up API functions with GCC + attributes where appropriate. + + - BUGFIX: fixed numerous warnings uncovered by GCC 4. + + - ENHANCE: building the documentation is now optional. + + - ENHANCE: corrected a number of mistakes and style issues in the + build system. + + - ENHANCE: API function arguments are now const where appropriate, to + match corresponding changes in the Solaris PAM and Linux-PAM APIs. + + - ENHANCE: corrected a number of C namespace violations. + + - ENHANCE: the module cache has been removed, allowing long-lived + applications to pick up module changes. This also allows multiple + threads to use PAM simultaneously (as long as they use separate PAM + contexts), since the module cache was the only part of OpenPAM that + was not thread-safe. +============================================================================ +OpenPAM Figwort 2005-06-16 - BUGFIX: Correct several small signedness and initialization bugs discovered during review by the NetBSD team. @@ -304,4 +327,4 @@ First (beta) release. ============================================================================ -$P4: //depot/projects/openpam/HISTORY#24 $ +$Id: HISTORY 409 2007-12-21 11:38:50Z des $ ==== //depot/projects/dtrace/src/contrib/openpam/INSTALL#4 (text) ==== @@ -16,23 +16,29 @@ Use the "configure" shell script to configure OpenPAM for your system. Options include: + --enable-debug + Turn debugging on by default. + --with-modules-dir=DIR Indicates the directory where PAM modules will be installed. This option should not be used if you intend to install PAM modules in the system library directory. - --with-pam-su - Builds the sample PAM application. + --without-doc + Skips the documentation. --with-pam-unix Builds the sample PAM module. + --with-su + Builds the sample su(1) implementation. + For more information about configuration options, use the --help option. A typical invocation might look like this: - # ./configure --with-pam-su --with-pam-unix + # ./configure --with-pam-unix --with-su 3. COMPILATION @@ -49,4 +55,4 @@ # make install -$P4: //depot/projects/openpam/INSTALL#4 $ +$Id: INSTALL 388 2006-04-12 10:31:52Z des $ ==== //depot/projects/dtrace/src/contrib/openpam/LICENSE#4 (text) ==== @@ -1,5 +1,6 @@ Copyright (c) 2002-2003 Networks Associates Technology, Inc. +Copyright (c) 2004-2007 Dag-Erling Smørgrav All rights reserved. This software was developed for the FreeBSD Project by ThinkSec AS and @@ -31,4 +32,4 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -$P4: //depot/projects/openpam/LICENSE#6 $ +$Id: LICENSE 408 2007-12-21 11:36:24Z des $ ==== //depot/projects/dtrace/src/contrib/openpam/Makefile.am#4 (text) ==== @@ -1,5 +1,17 @@ -# $P4: //depot/projects/openpam/Makefile.am#3 $ +# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $ + +SUBDIRS = lib bin modules include -SUBDIRS = lib bin modules doc include +if WITH_DOC +SUBDIRS += doc +endif -EXTRA_DIST = CREDITS HISTORY INSTALL LICENSE MANIFEST README RELNOTES +EXTRA_DIST = \ + CREDITS \ + HISTORY \ + INSTALL \ + LICENSE \ + README \ + RELNOTES \ + autogen.sh \ + misc/gendoc.pl ==== //depot/projects/dtrace/src/contrib/openpam/Makefile.in#4 (text) ==== @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -14,7 +14,7 @@ @SET_MAKE@ -# $P4: //depot/projects/openpam/Makefile.am#3 $ +# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ @@ -38,6 +38,7 @@ build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ +@WITH_DOC_TRUE@am__append_1 = doc DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(top_srcdir)/configure INSTALL compile config.guess \ @@ -49,7 +50,7 @@ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno -mkinstalldirs = $(mkdir_p) +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = SOURCES = @@ -62,7 +63,7 @@ uninstall-recursive ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) +DIST_SUBDIRS = lib bin modules include doc DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -105,6 +106,7 @@ EXEEXT = @EXEEXT@ F77 = @F77@ FFLAGS = @FFLAGS@ +GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -127,20 +129,20 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ +SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ -WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@ -WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@ +WITH_DOC_FALSE = @WITH_DOC_FALSE@ +WITH_DOC_TRUE = @WITH_DOC_TRUE@ WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@ WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@ -ac_ct_AR = @ac_ct_AR@ +WITH_SU_FALSE = @WITH_SU_FALSE@ +WITH_SU_TRUE = @WITH_SU_TRUE@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_F77 = @ac_ct_F77@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ @@ -148,6 +150,8 @@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -155,23 +159,30 @@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ @@ -180,8 +191,17 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ -SUBDIRS = lib bin modules doc include -EXTRA_DIST = CREDITS HISTORY INSTALL LICENSE MANIFEST README RELNOTES +SUBDIRS = lib bin modules include $(am__append_1) +EXTRA_DIST = \ + CREDITS \ + HISTORY \ + INSTALL \ + LICENSE \ + README \ + RELNOTES \ + autogen.sh \ + misc/gendoc.pl + all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive @@ -254,7 +274,13 @@ # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -266,7 +292,7 @@ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ @@ -274,7 +300,13 @@ mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ @@ -295,7 +327,7 @@ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -370,6 +402,7 @@ distdir: $(DISTFILES) $(am__remove_distdir) mkdir $(distdir) + $(mkdir_p) $(distdir)/misc @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -396,15 +429,17 @@ || exit 1; \ fi; \ done - list='$(SUBDIRS)'; for subdir in $$list; do \ + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || mkdir "$(distdir)/$$subdir" \ + || $(mkdir_p) "$(distdir)/$$subdir" \ || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="../$(top_distdir)" \ - distdir="../$(distdir)/$$subdir" \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ distdir) \ || exit 1; \ fi; \ @@ -415,15 +450,15 @@ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir - $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-tarZ: distdir - $(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir @@ -436,7 +471,7 @@ $(am__remove_distdir) dist dist-all: distdir - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then @@ -445,11 +480,11 @@ distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\ + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ - bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\ + bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ @@ -530,7 +565,7 @@ clean-generic: distclean-generic: - -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" ==== //depot/projects/dtrace/src/contrib/openpam/README#4 (text) ==== @@ -24,4 +24,4 @@ Please direct bug reports and inquiries to des@freebsd.org. -$P4: //depot/projects/openpam/README#5 $ +$Id: README 320 2006-02-16 20:33:19Z des $ ==== //depot/projects/dtrace/src/contrib/openpam/RELNOTES#4 (text) ==== @@ -1,6 +1,6 @@ - Release notes for OpenPAM Figwort - ================================= + Release notes for OpenPAM Hydrangea + =================================== This release corresponds to the code used in FreeBSD-CURRENT as of the release date. It has also been tested on several other platforms, and @@ -26,4 +26,4 @@ Please direct bug reports and inquiries to . -$P4: //depot/projects/openpam/RELNOTES#22 $ +$Id: RELNOTES 404 2007-11-28 12:31:04Z des $ ==== //depot/projects/dtrace/src/contrib/openpam/aclocal.m4#4 (text) ==== @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.8.5 -*- Autoconf -*- +# generated automatically by aclocal 1.9.6 -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -13,7 +13,7 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -# serial 47 AC_PROG_LIBTOOL +# serial 51 AC_PROG_LIBTOOL # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) @@ -123,7 +123,7 @@ # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' +Xsed='sed -e 1s/^X//' [sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] # Same as above, but do not quote variable references. @@ -143,7 +143,7 @@ default_ofile=libtool can_build_shared=yes -# All known linkers require a `.a' archive for static linking (except M$VC, +# All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a ltmain="$ac_aux_dir/ltmain.sh" @@ -163,6 +163,7 @@ test -z "$AS" && AS=as test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Dec 23 09:07:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D34A16A420; Sun, 23 Dec 2007 09:07:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8158716A419 for ; Sun, 23 Dec 2007 09:07:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8136F13C45D for ; Sun, 23 Dec 2007 09:07:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN97GSI052645 for ; Sun, 23 Dec 2007 09:07:16 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN97Gx8052642 for perforce@freebsd.org; Sun, 23 Dec 2007 09:07:16 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 23 Dec 2007 09:07:16 GMT Message-Id: <200712230907.lBN97Gx8052642@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 131459 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 09:07:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131459 Change 131459 by hselasky@hselasky_laptop001 on 2007/12/23 09:06:44 Bugfixes and improvements for "usb_template.c". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#6 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#6 (text+ko) ==== @@ -672,7 +672,7 @@ dd = (void *)desc; /* get HW control endpoint 0 profile */ - (methods->get_hw_ep_profile) (ues->udev, &pf, 0); + (methods->get_hw_ep_profile) (udev, &pf, 0); if (pf == NULL) { return (USBD_INVAL); } @@ -713,6 +713,7 @@ return (USBD_INVAL); } } + return (0); /* success */ } if (desc->bDescriptorType != UDESC_CONFIG) { return (USBD_INVAL); @@ -735,6 +736,7 @@ usbd_hw_ep_get_needs(ues, UE_INTERRUPT, 0) || usbd_hw_ep_get_needs(ues, UE_CONTROL, 0) || usbd_hw_ep_get_needs(ues, UE_BULK, 0)) { + PRINTFN(-1, ("Could not get needs\n")); return (USBD_INVAL); } for (ep = ues->ep; ep != ues->ep_max; ep++) { @@ -747,6 +749,7 @@ */ if (usbd_hw_ep_find_match(ues, ep, 1) && usbd_hw_ep_find_match(ues, ep, 0)) { + PRINTFN(-1, ("Could not find match\n")); return (USBD_INVAL); } } @@ -760,6 +763,7 @@ usbd_hw_ep_get_needs(ues, UE_INTERRUPT, 1) || usbd_hw_ep_get_needs(ues, UE_CONTROL, 1) || usbd_hw_ep_get_needs(ues, UE_BULK, 1)) { + PRINTFN(-1, ("Could not update endpoint address\n")); return (USBD_INVAL); } return (0); /* success */ @@ -1002,14 +1006,16 @@ /* some error happened */ return (uts->err); } + /* sanity check */ + if (uts->size == 0) { + return (USBD_INVAL); + } /* allocate zeroed memory */ - if (uts->size > 0) { uts->buf = malloc(uts->size, M_USB, M_WAITOK | M_ZERO); if (uts->buf == NULL) { /* could not allocate memory */ return (USBD_NOMEM); } - } /* second pass */ uts->size = 0; @@ -1025,6 +1031,7 @@ /* some error happened during second pass */ goto error; } + /* * Resolve all endpoint addresses ! */ @@ -1032,19 +1039,22 @@ uts->err = usbd_hw_ep_resolve(udev, buf); if (uts->err) { PRINTFN(-1, ("Could not resolve endpoints for " - "Device Descriptor\n")); + "Device Descriptor, error = %s\n", + usbd_errstr(uts->err))); goto error; } + for (n = 0;; n++) { buf = usbd_temp_get_config_desc(udev, NULL, n); + if (buf == NULL) { + break; + } uts->err = usbd_hw_ep_resolve(udev, buf); if (uts->err) { - if (buf == NULL) { - break; - } PRINTFN(-1, ("Could not resolve endpoints for " - "Config Descriptor %u\n", n)); + "Config Descriptor %u, error = %s\n", n, + usbd_errstr(uts->err))); goto error; } } From owner-p4-projects@FreeBSD.ORG Sun Dec 23 09:07:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 767C016A51C; Sun, 23 Dec 2007 09:07:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0BDC716A41A for ; Sun, 23 Dec 2007 09:07:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A596813C461 for ; Sun, 23 Dec 2007 09:07:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN97GVm052651 for ; Sun, 23 Dec 2007 09:07:16 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN97G29052648 for perforce@freebsd.org; Sun, 23 Dec 2007 09:07:16 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 23 Dec 2007 09:07:16 GMT Message-Id: <200712230907.lBN97G29052648@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 131460 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 09:07:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131460 Change 131460 by hselasky@hselasky_laptop001 on 2007/12/23 09:07:11 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#7 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#7 (text+ko) ==== @@ -713,7 +713,7 @@ return (USBD_INVAL); } } - return (0); /* success */ + return (0); /* success */ } if (desc->bDescriptorType != UDESC_CONFIG) { return (USBD_INVAL); @@ -763,7 +763,7 @@ usbd_hw_ep_get_needs(ues, UE_INTERRUPT, 1) || usbd_hw_ep_get_needs(ues, UE_CONTROL, 1) || usbd_hw_ep_get_needs(ues, UE_BULK, 1)) { - PRINTFN(-1, ("Could not update endpoint address\n")); + PRINTFN(-1, ("Could not update endpoint address\n")); return (USBD_INVAL); } return (0); /* success */ @@ -1011,11 +1011,11 @@ return (USBD_INVAL); } /* allocate zeroed memory */ - uts->buf = malloc(uts->size, M_USB, M_WAITOK | M_ZERO); - if (uts->buf == NULL) { - /* could not allocate memory */ - return (USBD_NOMEM); - } + uts->buf = malloc(uts->size, M_USB, M_WAITOK | M_ZERO); + if (uts->buf == NULL) { + /* could not allocate memory */ + return (USBD_NOMEM); + } /* second pass */ uts->size = 0; @@ -1031,7 +1031,6 @@ /* some error happened during second pass */ goto error; } - /* * Resolve all endpoint addresses ! */ @@ -1039,11 +1038,10 @@ uts->err = usbd_hw_ep_resolve(udev, buf); if (uts->err) { PRINTFN(-1, ("Could not resolve endpoints for " - "Device Descriptor, error = %s\n", - usbd_errstr(uts->err))); + "Device Descriptor, error = %s\n", + usbd_errstr(uts->err))); goto error; } - for (n = 0;; n++) { buf = usbd_temp_get_config_desc(udev, NULL, n); @@ -1053,8 +1051,8 @@ uts->err = usbd_hw_ep_resolve(udev, buf); if (uts->err) { PRINTFN(-1, ("Could not resolve endpoints for " - "Config Descriptor %u, error = %s\n", n, - usbd_errstr(uts->err))); + "Config Descriptor %u, error = %s\n", n, + usbd_errstr(uts->err))); goto error; } } From owner-p4-projects@FreeBSD.ORG Sun Dec 23 09:12:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DBB1416A41B; Sun, 23 Dec 2007 09:12:22 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6089316A417 for ; Sun, 23 Dec 2007 09:12:22 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 609A313C465 for ; Sun, 23 Dec 2007 09:12:22 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN9CMID053589 for ; Sun, 23 Dec 2007 09:12:22 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN9CMSP053585 for perforce@freebsd.org; Sun, 23 Dec 2007 09:12:22 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 23 Dec 2007 09:12:22 GMT Message-Id: <200712230912.lBN9CMSP053585@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 131461 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 09:12:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131461 Change 131461 by hselasky@hselasky_laptop001 on 2007/12/23 09:11:41 o Add some more debug prints printing out the different cases in the "usbd_callback_wrapper()". o Clear "manual_status" when the end of the control transfer has been reached in USB device side mode. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#83 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#83 (text+ko) ==== @@ -2246,6 +2246,8 @@ /* check first recurse flag */ if (!xfer->flags_int.recursed_1) { + PRINTFN(2, ("case 2 not recursed\n")); + mtx_unlock(xfer->usb_mtx); mtx_assert(xfer->usb_mtx, MA_NOTOWNED); @@ -2259,11 +2261,15 @@ * Reversal, LOR */ dropped_usb_mtx = 1; + } else { + PRINTFN(2, ("case 2 recursed\n")); } } else { if (context == USBD_CONTEXT_CALLBACK) { /* case 4 */ + PRINTFN(2, ("case 4\n")); + /* * During possible unlocked periods, * the USB transfer can have been @@ -2283,6 +2289,8 @@ } else { /* case 1 or case 3 */ + PRINTFN(2, ("case 1\n")); + /* * By clearing the "usb_thread" * variable we are signalling that a @@ -2305,6 +2313,8 @@ * 5) HW interrupt done callback or other source. */ + PRINTFN(2, ("case 5\n")); + /* * We have to postpone the callback due to the fact we * will have a Lock Order Reversal, LOR, if we try to @@ -3035,7 +3045,6 @@ /* reset frame stuff */ xfer->frlengths[0] = 0; - xfer->frlengths[1] = 0; usbd_set_frame_offset(xfer, 0, 0); usbd_set_frame_offset(xfer, sizeof(req), 1); @@ -3064,6 +3073,10 @@ wValue = UGETW(req.wValue); wIndex = UGETW(req.wIndex); + PRINTFN(2, ("req 0x%02x 0x%02x 0x%04x 0x%04x " + "off=0x%x rem=0x%x\n", req.bmRequestType, + req.bRequest, wValue, wIndex, off, rem)); + /* demultiplex the control request */ switch (req.bmRequestType) { @@ -3311,6 +3324,10 @@ usbd_copy_in(xfer->frbuffers + 1, 0, ptr, max_len); } xfer->frlengths[1] = max_len; + } else { + /* the end is reached, send status */ + xfer->flags.manual_status = 0; + xfer->frlengths[1] = 0; } return (0); /* success */ From owner-p4-projects@FreeBSD.ORG Sun Dec 23 09:14:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2ACD816A47F; Sun, 23 Dec 2007 09:14:25 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B49B216A474 for ; Sun, 23 Dec 2007 09:14:24 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B368313C50D for ; Sun, 23 Dec 2007 09:14:24 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBN9EOL6054065 for ; Sun, 23 Dec 2007 09:14:24 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBN9EOqR054060 for perforce@freebsd.org; Sun, 23 Dec 2007 09:14:24 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 23 Dec 2007 09:14:24 GMT Message-Id: <200712230914.lBN9EOqR054060@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 131462 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 09:14:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131462 Change 131462 by hselasky@hselasky_laptop001 on 2007/12/23 09:13:23 Use the "cdce" USB template as default in USB device side mode until further. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#78 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#78 (text+ko) ==== @@ -1670,7 +1670,19 @@ } /* allow device time to set new address */ usbd_delay_ms(udev, USB_SET_ADDRESS_SETTLE); + } else { + + /* + * TODO: Make some kind of command that lets the user choose + * the USB template. + */ + err = usbd_temp_setup(udev, &usb_template_cdce); + if (err) { + PRINTFN(-1, ("setting up USB template failed\n")); + goto done; + } } + /* * Get the first 8 bytes of the device descriptor ! * From owner-p4-projects@FreeBSD.ORG Sun Dec 23 12:02:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C3D416A46B; Sun, 23 Dec 2007 12:02:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A8ADA16A417 for ; Sun, 23 Dec 2007 12:02:23 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A19B513C4E7 for ; Sun, 23 Dec 2007 12:02:23 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNC2NWP080634 for ; Sun, 23 Dec 2007 12:02:23 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNC2Mis080628 for perforce@freebsd.org; Sun, 23 Dec 2007 12:02:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 12:02:22 GMT Message-Id: <200712231202.lBNC2Mis080628@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 131465 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 12:02:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=131465 Change 131465 by rwatson@rwatson_cinnamon on 2007/12/23 12:02:03 Integrate zcopybpf branch. Affected files ... .. //depot/projects/zcopybpf/src/sys/arm/at91/at91.c#5 integrate .. //depot/projects/zcopybpf/src/sys/boot/forth/support.4th#2 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.powerpc#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aac.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mfi/mfi.c#7 integrate .. //depot/projects/zcopybpf/src/sys/dev/mfi/mfi_pci.c#5 integrate .. //depot/projects/zcopybpf/src/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/re/if_re.c#9 integrate .. //depot/projects/zcopybpf/src/sys/dev/uart/uart_cpu_powerpc.c#3 integrate .. //depot/projects/zcopybpf/src/sys/i386/pci/pci_pir.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/init_main.c#7 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_thread.c#9 integrate .. //depot/projects/zcopybpf/src/sys/kern/sched_ule.c#11 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_bus.c#6 integrate .. //depot/projects/zcopybpf/src/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_car.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in_pcb.c#8 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_offload.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_offload.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_subr.c#12 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_syncache.c#12 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_usrreq.c#10 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/aim/ofw_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/conf/NOTES#5 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/_bus.h#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/bus.h#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powermac/grackle.c#3 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powermac/macio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powermac/uninorth.c#4 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/zcopybpf/src/sys/powerpc/psim/iobus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_page.c#10 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_phys.c#4 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_phys.h#4 integrate Differences ... ==== //depot/projects/zcopybpf/src/sys/arm/at91/at91.c#5 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.14 2007/12/17 05:08:54 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.15 2007/12/19 17:34:17 imp Exp $"); #include #include @@ -396,6 +396,48 @@ #define NORMDEV 50 +/* + * Standard priority levels for the system. 0 is lowest and 7 is highest. + * These values are the ones Atmel uses for its Linux port, which differ + * a little form the ones that are in the standard distribution. Also, + * the ones marked with 'TWEEK' are different based on experience. + */ +static int irq_prio[32] = +{ + 7, /* Advanced Interrupt Controller (FIQ) */ + 7, /* System Peripherals */ + 1, /* Parallel IO Controller A */ + 1, /* Parallel IO Controller B */ + 1, /* Parallel IO Controller C */ + 1, /* Parallel IO Controller D */ + 5, /* USART 0 */ + 5, /* USART 1 */ + 5, /* USART 2 */ + 5, /* USART 3 */ + 0, /* Multimedia Card Interface */ + 2, /* USB Device Port */ + 4, /* Two-Wire Interface */ /* TWEEK */ + 5, /* Serial Peripheral Interface */ + 4, /* Serial Synchronous Controller 0 */ + 6, /* Serial Synchronous Controller 1 */ /* TWEEK */ + 4, /* Serial Synchronous Controller 2 */ + 0, /* Timer Counter 0 */ + 6, /* Timer Counter 1 */ /* TWEEK */ + 0, /* Timer Counter 2 */ + 0, /* Timer Counter 3 */ + 0, /* Timer Counter 4 */ + 0, /* Timer Counter 5 */ + 2, /* USB Host port */ + 3, /* Ethernet MAC */ + 0, /* Advanced Interrupt Controller (IRQ0) */ + 0, /* Advanced Interrupt Controller (IRQ1) */ + 0, /* Advanced Interrupt Controller (IRQ2) */ + 0, /* Advanced Interrupt Controller (IRQ3) */ + 0, /* Advanced Interrupt Controller (IRQ4) */ + 0, /* Advanced Interrupt Controller (IRQ5) */ + 0 /* Advanced Interrupt Controller (IRQ6) */ +}; + static int at91_attach(device_t dev) { @@ -432,13 +474,11 @@ bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SVR + i * 4, i); /* Priority. */ - /* XXX: Give better priorities to IRQs */ bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SMR + i * 4, - 0); + irq_prio[i]); if (i < 8) bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_EOICR, 1); - } bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SPU, 32); /* No debug. */ ==== //depot/projects/zcopybpf/src/sys/boot/forth/support.4th#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/sys/boot/forth/support.4th,v 1.16 2006/10/13 20:48:17 ru Exp $ +\ $FreeBSD: src/sys/boot/forth/support.4th,v 1.17 2007/12/19 17:06:32 ambrisko Exp $ \ Loader.rc support functions: \ @@ -463,8 +463,10 @@ : digit? line_pointer c@ >r + r@ [char] - = r@ [char] 0 >= r> [char] 9 <= and + or ; : quote? ==== //depot/projects/zcopybpf/src/sys/conf/files.powerpc#7 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.powerpc,v 1.70 2007/12/16 01:02:47 marcel Exp $ +# $FreeBSD: src/sys/conf/files.powerpc,v 1.71 2007/12/19 18:00:48 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -85,6 +85,7 @@ powerpc/powerpc/atomic.S standard powerpc/powerpc/autoconf.c standard powerpc/powerpc/bcopy.c standard +powerpc/powerpc/bus_machdep.c standard powerpc/powerpc/busdma_machdep.c standard powerpc/powerpc/copystr.c standard powerpc/powerpc/cpu.c standard ==== //depot/projects/zcopybpf/src/sys/dev/aac/aac.c#5 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.125 2007/12/07 18:05:41 emaste Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.127 2007/12/20 21:13:58 emaste Exp $"); /* * Driver for the Adaptec 'FSA' family of PCI/SCSI RAID adapters. @@ -2980,15 +2980,13 @@ switch (event->ev_type) { case AAC_EVENT_CMFREE: - mtx_lock(&sc->aac_io_lock); + mtx_assert(&sc->aac_io_lock, MA_OWNED); if (aac_alloc_command(sc, (struct aac_command **)arg)) { aac_add_event(sc, event); - mtx_unlock(&sc->aac_io_lock); return; } free(event, M_AACBUF); wakeup(arg); - mtx_unlock(&sc->aac_io_lock); break; default: break; @@ -3019,6 +3017,7 @@ M_NOWAIT | M_ZERO); if (event == NULL) { error = EBUSY; + mtx_unlock(&sc->aac_io_lock); goto out; } event->ev_type = AAC_EVENT_CMFREE; @@ -3050,12 +3049,13 @@ * Pass the FIB to the controller, wait for it to complete. */ mtx_lock(&sc->aac_io_lock); - if ((error = aac_wait_command(cm)) != 0) { + error = aac_wait_command(cm); + mtx_unlock(&sc->aac_io_lock); + if (error != 0) { device_printf(sc->aac_dev, "aac_wait_command return %d\n", error); goto out; } - mtx_unlock(&sc->aac_io_lock); /* * Copy the FIB and data back out to the caller. @@ -3067,14 +3067,13 @@ size = sizeof(struct aac_fib); } error = copyout(cm->cm_fib, ufib, size); - mtx_lock(&sc->aac_io_lock); out: if (cm != NULL) { + mtx_lock(&sc->aac_io_lock); aac_release_command(cm); + mtx_unlock(&sc->aac_io_lock); } - - mtx_unlock(&sc->aac_io_lock); return(error); } ==== //depot/projects/zcopybpf/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ ***************************************************************************/ #include -__FBSDID("$FreeBSD: src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c,v 1.2 2007/12/17 08:17:50 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c,v 1.3 2007/12/18 23:00:25 kmacy Exp $"); #include #include @@ -110,6 +110,7 @@ prp = pffindtype(AF_INET, SOCK_STREAM); pru_sosend = prp->pr_usrreqs->pru_sosend; pru_soreceive = prp->pr_usrreqs->pru_soreceive; +#ifdef TCP_USRREQS_OVERLOAD tcp_usrreqs.pru_connect = cxgb_tcp_usrreqs.pru_connect; tcp_usrreqs.pru_abort = cxgb_tcp_usrreqs.pru_abort; tcp_usrreqs.pru_listen = cxgb_tcp_usrreqs.pru_listen; @@ -119,6 +120,7 @@ tcp_usrreqs.pru_close = cxgb_tcp_usrreqs.pru_close; tcp_usrreqs.pru_shutdown = cxgb_tcp_usrreqs.pru_shutdown; tcp_usrreqs.pru_rcvd = cxgb_tcp_usrreqs.pru_rcvd; +#endif } ==== //depot/projects/zcopybpf/src/sys/dev/mfi/mfi.c#7 (text) ==== @@ -51,7 +51,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.33 2007/08/25 23:58:44 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.34 2007/12/19 17:22:07 ambrisko Exp $"); #include "opt_mfi.h" @@ -774,16 +774,12 @@ free(log_state, M_MFIBUF); return (error); } - /* - * Don't run them yet since we can't parse them. - * We can indirectly get the contents from - * the AEN mechanism via setting it lower then - * current. The firmware will iterate through them. - */ + /* The message log is a circular buffer */ for (seq = log_state->shutdown_seq_num; - seq <= log_state->newest_seq_num; seq++) { + seq != log_state->newest_seq_num; seq++) { mfi_get_entry(sc, seq); } + mfi_get_entry(sc, seq); } else seq = seq_start; mfi_aen_register(sc, seq, class_locale.word); ==== //depot/projects/zcopybpf/src/sys/dev/mfi/mfi_pci.c#5 (text) ==== @@ -51,7 +51,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_pci.c,v 1.9 2007/08/25 23:58:45 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_pci.c,v 1.10 2007/12/19 17:23:47 ambrisko Exp $"); /* PCI/PCI-X/PCIe bus interface for the LSI MegaSAS controllers */ @@ -117,6 +117,7 @@ {0x1000, 0x0411, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Brocton IOP */ {0x1000, 0x0413, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Verde ZCR */ {0x1028, 0x0015, 0xffff, 0xffff, MFI_FLAGS_1064R, "Dell PERC 5/i"}, + {0x1000, 0x0060, 0x1028, 0xffff, MFI_FLAGS_1078, "Dell PERC 6"}, {0x1000, 0x0060, 0xffff, 0xffff, MFI_FLAGS_1078, "LSI MegaSAS 1078"}, {0, 0, 0, 0, 0, NULL} }; ==== //depot/projects/zcopybpf/src/sys/dev/ofw/openpromio.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ofw/openpromio.c,v 1.7 2005/05/19 15:23:17 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ofw/openpromio.c,v 1.8 2007/12/20 00:31:04 marius Exp $"); #include #include @@ -101,12 +101,17 @@ char *buf; int error; + if ((flags & FREAD) == 0) + return (EPERM); + prop = buf = NULL; error = 0; - oprom = *(void **)data; switch (cmd) { case OPROMCHILD: case OPROMNEXT: + if (data == NULL || *(void **)data == NULL) + return (EINVAL); + oprom = *(void **)data; error = copyin(&oprom->oprom_size, &len, sizeof(len)); if (error != 0) break; @@ -135,6 +140,9 @@ break; case OPROMGETPROP: case OPROMNXTPROP: + if (data == NULL || *(void **)data == NULL) + return (EINVAL); + oprom = *(void **)data; error = copyin(&oprom->oprom_size, &len, sizeof(len)); if (error != 0) break; ==== //depot/projects/zcopybpf/src/sys/dev/powermac_nvram/powermac_nvram.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/powermac_nvram/powermac_nvram.c,v 1.1 2006/08/01 22:19:00 sobomax Exp $ + * $FreeBSD: src/sys/dev/powermac_nvram/powermac_nvram.c,v 1.2 2007/12/19 18:00:48 marcel Exp $ */ #include @@ -40,6 +40,7 @@ #include #include #include +#include #include #include ==== //depot/projects/zcopybpf/src/sys/dev/re/if_re.c#9 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.99 2007/12/08 00:14:09 yongari Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.100 2007/12/20 07:26:20 yongari Exp $"); /* * RealTek 8139C+/8169/8169S/8110S/8168/8111/8101E PCI NIC driver @@ -643,8 +643,12 @@ if (ifp->if_flags & IFF_ALLMULTI || ifp->if_flags & IFF_PROMISC) { if (ifp->if_flags & IFF_PROMISC) rxfilt |= RL_RXCFG_RX_ALLPHYS; - if (ifp->if_flags & IFF_ALLMULTI) - rxfilt |= RL_RXCFG_RX_MULTI; + /* + * Unlike other hardwares, we have to explicitly set + * RL_RXCFG_RX_MULTI to receive multicast frames in + * promiscuous mode. + */ + rxfilt |= RL_RXCFG_RX_MULTI; CSR_WRITE_4(sc, RL_RXCFG, rxfilt); CSR_WRITE_4(sc, RL_MAR0, 0xFFFFFFFF); CSR_WRITE_4(sc, RL_MAR4, 0xFFFFFFFF); ==== //depot/projects/zcopybpf/src/sys/dev/uart/uart_cpu_powerpc.c#3 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/uart/uart_cpu_powerpc.c,v 1.3 2007/04/02 22:00:22 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/uart/uart_cpu_powerpc.c,v 1.4 2007/12/19 18:00:49 marcel Exp $"); #include #include @@ -38,8 +38,8 @@ #include #include -bus_space_tag_t uart_bus_space_io = PPC_BUS_SPACE_IO; -bus_space_tag_t uart_bus_space_mem = PPC_BUS_SPACE_MEM; +bus_space_tag_t uart_bus_space_io = &bs_le_tag; +bus_space_tag_t uart_bus_space_mem = &bs_le_tag; int uart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2) ==== //depot/projects/zcopybpf/src/sys/i386/pci/pci_pir.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/pci/pci_pir.c,v 1.120 2006/11/09 18:03:36 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/pci/pci_pir.c,v 1.121 2007/12/21 16:53:27 jhb Exp $"); #include #include @@ -398,12 +398,6 @@ pci_pir_dump_links(); } - /* Check for unique IRQ masks. */ - TAILQ_FOREACH(pci_link, &pci_links, pl_links) { - if (pci_link->pl_irqmask != 0 && powerof2(pci_link->pl_irqmask)) - pci_link->pl_irq = ffs(pci_link->pl_irqmask) - 1; - } - /* * Check to see if the BIOS has already routed any of the links by * checking each device connected to each link to see if it has a @@ -516,15 +510,20 @@ } /* - * Pick a new interrupt if we don't have one already. We look for - * an interrupt from several different sets. First, we check the - * set of PCI only interrupts from the $PIR. Second, we check the - * set of known-good interrupts that the BIOS has already used. - * Lastly, we check the "all possible valid IRQs" set. + * Pick a new interrupt if we don't have one already. We look + * for an interrupt from several different sets. First, if + * this link only has one valid IRQ, use that. Second, we + * check the set of PCI only interrupts from the $PIR. Third, + * we check the set of known-good interrupts that the BIOS has + * already used. Lastly, we check the "all possible valid + * IRQs" set. */ if (!PCI_INTERRUPT_VALID(pci_link->pl_irq)) { - irq = pci_pir_choose_irq(pci_link, - pci_route_table->pt_header.ph_pci_irqs); + if (pci_link->pl_irqmask != 0 && powerof2(pci_link->pl_irqmask)) + irq = ffs(pci_link->pl_irqmask) - 1; + else + irq = pci_pir_choose_irq(pci_link, + pci_route_table->pt_header.ph_pci_irqs); if (!PCI_INTERRUPT_VALID(irq)) irq = pci_pir_choose_irq(pci_link, pir_bios_irqs); if (!PCI_INTERRUPT_VALID(irq)) ==== //depot/projects/zcopybpf/src/sys/kern/init_main.c#7 (text+ko) ==== @@ -42,7 +42,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/init_main.c,v 1.288 2007/12/04 12:28:07 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/init_main.c,v 1.289 2007/12/22 04:56:48 julian Exp $"); #include "opt_ddb.h" #include "opt_init_path.h" @@ -421,6 +421,7 @@ knlist_init(&p->p_klist, &p->p_mtx, NULL, NULL, NULL); STAILQ_INIT(&p->p_ktr); p->p_nice = NZERO; + td->td_tid = PID_MAX + 1; td->td_state = TDS_RUNNING; td->td_pri_class = PRI_TIMESHARE; td->td_user_pri = PUSER; ==== //depot/projects/zcopybpf/src/sys/kern/kern_thread.c#9 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_thread.c,v 1.264 2007/12/16 06:21:19 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_thread.c,v 1.265 2007/12/22 04:56:48 julian Exp $"); #include #include @@ -251,7 +251,8 @@ { mtx_init(&tid_lock, "TID lock", NULL, MTX_DEF); - tid_unrhdr = new_unrhdr(PID_MAX + 1, INT_MAX, &tid_lock); + /* leave one number for thread0 */ + tid_unrhdr = new_unrhdr(PID_MAX + 2, INT_MAX, &tid_lock); thread_zone = uma_zcreate("THREAD", sched_sizeof_thread(), thread_ctor, thread_dtor, thread_init, thread_fini, ==== //depot/projects/zcopybpf/src/sys/kern/sched_ule.c#11 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.219 2007/12/15 23:13:31 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.220 2007/12/21 23:30:18 wkoszek Exp $"); #include "opt_hwpmc_hooks.h" #include "opt_sched.h" @@ -1758,6 +1758,23 @@ } /* + * Block a thread for switching. Similar to thread_block() but does not + * bump the spin count. + */ +static inline struct mtx * +thread_block_switch(struct thread *td) +{ + struct mtx *lock; + + THREAD_LOCK_ASSERT(td, MA_OWNED); + lock = td->td_lock; + td->td_lock = &blocked_lock; + mtx_unlock_spin(lock); + + return (lock); +} + +/* * Handle migration from sched_switch(). This happens only for * cpu binding. */ @@ -1794,23 +1811,6 @@ } /* - * Block a thread for switching. Similar to thread_block() but does not - * bump the spin count. - */ -static inline struct mtx * -thread_block_switch(struct thread *td) -{ - struct mtx *lock; - - THREAD_LOCK_ASSERT(td, MA_OWNED); - lock = td->td_lock; - td->td_lock = &blocked_lock; - mtx_unlock_spin(lock); - - return (lock); -} - -/* * Release a thread that was blocked with thread_block_switch(). */ static inline void ==== //depot/projects/zcopybpf/src/sys/kern/subr_bus.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.202 2007/11/30 21:30:14 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.203 2007/12/19 22:05:07 imp Exp $"); #include "opt_bus.h" @@ -1220,13 +1220,16 @@ * @brief Get the maximum unit number used in a devclass * * Note that this is one greater than the highest currently-allocated - * unit. + * unit. If a null devclass_t is passed in, -1 is returned to indicate + * that not even the devclass has been allocated yet. * * @param dc the devclass to examine */ int devclass_get_maxunit(devclass_t dc) { + if (dc == NULL) + return (-1); return (dc->maxunit); } ==== //depot/projects/zcopybpf/src/sys/modules/cxgb/tom/Makefile#2 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/sys/modules/cxgb/tom/Makefile,v 1.2 2007/12/17 08:17:51 kmacy Exp $ +# $FreeBSD: src/sys/modules/cxgb/tom/Makefile,v 1.3 2007/12/18 23:00:25 kmacy Exp $ TOM = ${.CURDIR}/../../../dev/cxgb/ulp/tom .PATH: ${TOM} KMOD= tom SRCS= cxgb_tom.c cxgb_cpl_io.c cxgb_listen.c cxgb_tom_sysctl.c cxgb_cpl_socket.c -SRCS+= cxgb_tcp_subr.c cxgb_tcp_usrreq.c +#SRCS+= cxgb_tcp_subr.c cxgb_tcp_usrreq.c SRCS+= opt_compat.h opt_inet.h opt_inet6.h opt_ipsec.h opt_mac.h opt_tcpdebug.h opt_ddb.h SRCS+= device_if.h bus_if.h pci_if.h ==== //depot/projects/zcopybpf/src/sys/netgraph/ng_car.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/netgraph/ng_car.c,v 1.4 2007/06/13 11:01:17 mav Exp $ + * $FreeBSD: src/sys/netgraph/ng_car.c,v 1.5 2007/12/19 22:50:14 mav Exp $ */ /* @@ -263,6 +263,7 @@ hook_p dest = hinfo->dest; struct mbuf *m = NULL; int error = 0; + int len; /* Node is useless without destination hook. */ if (dest == NULL) { @@ -298,11 +299,18 @@ } \ } while (0) + /* Packet is counted as 128 tokens for better resolution */ + if (hinfo->conf.opt & NG_CAR_COUNT_PACKETS) { + len = 128; + } else { + len = m->m_pkthdr.len; + } + /* Check commited token bucket. */ - if (hinfo->tc - m->m_pkthdr.len >= 0) { + if (hinfo->tc - len >= 0) { /* This packet is green. */ ++hinfo->stats.green_pkts; - hinfo->tc -= m->m_pkthdr.len; + hinfo->tc -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.green_action); } else { @@ -310,10 +318,10 @@ ng_car_refillhook(hinfo); /* Check commited token bucket again after refill. */ - if (hinfo->tc - m->m_pkthdr.len >= 0) { + if (hinfo->tc - len >= 0) { /* This packet is green */ ++hinfo->stats.green_pkts; - hinfo->tc -= m->m_pkthdr.len; + hinfo->tc -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.green_action); /* If not green and mode is SHAPE, enqueue packet. */ @@ -324,8 +332,7 @@ /* If not green and mode is RED, calculate probability. */ } else if (hinfo->conf.mode == NG_CAR_RED) { /* Is packet is bigger then extended burst? */ - if (m->m_pkthdr.len - (hinfo->tc - m->m_pkthdr.len) > - hinfo->conf.ebs) { + if (len - (hinfo->tc - len) > hinfo->conf.ebs) { /* This packet is definitely red. */ ++hinfo->stats.red_pkts; hinfo->te = 0; @@ -333,13 +340,13 @@ /* Use token bucket to simulate RED-like drop probability. */ - } else if (hinfo->te + (m->m_pkthdr.len - hinfo->tc) < + } else if (hinfo->te + (len - hinfo->tc) < hinfo->conf.ebs) { /* This packet is yellow */ ++hinfo->stats.yellow_pkts; - hinfo->te += m->m_pkthdr.len - hinfo->tc; + hinfo->te += len - hinfo->tc; /* Go to negative tokens. */ - hinfo->tc -= m->m_pkthdr.len; + hinfo->tc -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.yellow_action); } else { /* This packet is probaly red. */ @@ -350,10 +357,10 @@ /* If not green and mode is SINGLE/DOUBLE RATE. */ } else { /* Check extended token bucket. */ - if (hinfo->te - m->m_pkthdr.len >= 0) { + if (hinfo->te - len >= 0) { /* This packet is yellow */ ++hinfo->stats.yellow_pkts; - hinfo->te -= m->m_pkthdr.len; + hinfo->te -= len; NG_CAR_PERFORM_MATCH_ACTION(hinfo->conf.yellow_action); } else { /* This packet is red */ @@ -430,6 +437,19 @@ sizeof(bconf->downstream)); bcopy(&priv->lower.conf, &bconf->upstream, sizeof(bconf->upstream)); + /* Convert internal 1/(8*128) of pps into pps */ + if (bconf->downstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->downstream.cir /= 1024; + bconf->downstream.pir /= 1024; + bconf->downstream.cbs /= 128; + bconf->downstream.ebs /= 128; + } + if (bconf->upstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->upstream.cir /= 1024; + bconf->upstream.pir /= 1024; + bconf->upstream.cbs /= 128; + bconf->upstream.ebs /= 128; + } } break; case NGM_CAR_SET_CONF: @@ -438,19 +458,45 @@ (struct ng_car_bulkconf *)msg->data; /* Check for invalid or illegal config. */ - if ((msg->header.arglen != sizeof(*bconf)) - || (bconf->downstream.cir > 1000000000) - || (bconf->downstream.pir > 1000000000) - || (bconf->upstream.cir > 1000000000) - || (bconf->upstream.pir > 1000000000) - || (bconf->downstream.cbs == 0 - && bconf->downstream.ebs == 0) - || (bconf->upstream.cbs == 0 - && bconf->upstream.ebs == 0)) + if (msg->header.arglen != sizeof(*bconf)) { + error = EINVAL; + break; + } + /* Convert pps into internal 1/(8*128) of pps */ + if (bconf->downstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->downstream.cir *= 1024; + bconf->downstream.pir *= 1024; + bconf->downstream.cbs *= 125; + bconf->downstream.ebs *= 125; + } + if (bconf->upstream.opt & NG_CAR_COUNT_PACKETS) { + bconf->upstream.cir *= 1024; + bconf->upstream.pir *= 1024; + bconf->upstream.cbs *= 125; + bconf->upstream.ebs *= 125; + } + if ((bconf->downstream.cir > 1000000000) || + (bconf->downstream.pir > 1000000000) || + (bconf->upstream.cir > 1000000000) || + (bconf->upstream.pir > 1000000000) || + (bconf->downstream.cbs == 0 && + bconf->downstream.ebs == 0) || + (bconf->upstream.cbs == 0 && + bconf->upstream.ebs == 0)) { error = EINVAL; break; } + if ((bconf->upstream.mode == NG_CAR_SHAPE) && + (bconf->upstream.cir == 0)) { + error = EINVAL; + break; + } + if ((bconf->downstream.mode == NG_CAR_SHAPE) && + (bconf->downstream.cir == 0)) { + error = EINVAL; + break; + } /* Copy downstream config. */ bcopy(&bconf->downstream, &priv->upper.conf, @@ -653,7 +699,11 @@ /* If we have more packet, try it. */ m = hinfo->q[hinfo->q_first]; - hinfo->tc -= m->m_pkthdr.len; + if (hinfo->conf.opt & NG_CAR_COUNT_PACKETS) { + hinfo->tc -= 128; + } else { + hinfo->tc -= m->m_pkthdr.len; + } } } @@ -707,7 +757,11 @@ /* If this is a first packet in the queue. */ if (len == 0) { - hinfo->tc -= m->m_pkthdr.len; + if (hinfo->conf.opt & NG_CAR_COUNT_PACKETS) { + hinfo->tc -= 128; + } else { + hinfo->tc -= m->m_pkthdr.len; + } /* Schedule queue processing. */ ng_car_schedule(hinfo); ==== //depot/projects/zcopybpf/src/sys/netgraph/ng_car.h#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/netgraph/ng_car.h,v 1.1 2007/05/15 16:09:23 mav Exp $ + * $FreeBSD: src/sys/netgraph/ng_car.h,v 1.2 2007/12/19 22:50:14 mav Exp $ */ #ifndef _NETGRAPH_NG_CAR_H_ @@ -115,6 +115,7 @@ /* mode options (opt) */ #define NG_CAR_COLOR_AWARE 1 +#define NG_CAR_COUNT_PACKETS 2 /* Bulk config */ struct ng_car_bulkconf { ==== //depot/projects/zcopybpf/src/sys/netinet/in_pcb.c#8 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/in_pcb.c,v 1.197 2007/10/24 19:03:58 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/in_pcb.c,v 1.198 2007/12/22 10:06:11 rwatson Exp $"); #include "opt_ddb.h" #include "opt_ipsec.h" @@ -197,8 +197,12 @@ #ifdef IPSEC error = ipsec_init_policy(so, &inp->inp_sp); - if (error != 0) + if (error != 0) { +#ifdef MAC + mac_inpcb_destroy(inp); +#endif goto out; +} #endif /*IPSEC*/ #ifdef INET6 if (INP_SOCKAF(so) == AF_INET6) { ==== //depot/projects/zcopybpf/src/sys/netinet/tcp_offload.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/tcp_offload.c,v 1.1 2007/12/17 07:56:27 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/tcp_offload.c,v 1.2 2007/12/19 05:17:40 kmacy Exp $"); #include #include @@ -72,23 +72,17 @@ ifp = rt->rt_ifp; if ((ifp->if_capenable & IFCAP_TOE) == 0) { - printf("no toe capability on %p\n", ifp); - error = EINVAL; goto fail; } tdev = TOEDEV(ifp); if (tdev == NULL) { - printf("tdev not set\n"); - error = EPERM; goto fail; } if (tdev->tod_can_offload(tdev, so) == 0) { - printf("not offloadable\n"); - error = EPERM; goto fail; } ==== //depot/projects/zcopybpf/src/sys/netinet/tcp_offload.h#2 (text+ko) ==== @@ -24,7 +24,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/netinet/tcp_offload.h,v 1.1 2007/12/17 07:56:27 kmacy Exp $ + * $FreeBSD: src/sys/netinet/tcp_offload.h,v 1.2 2007/12/18 22:59:07 kmacy Exp $ */ #ifndef _NETINET_TCP_OFFLOAD_H_ @@ -216,8 +216,10 @@ int tcp_offload_connect(struct socket *so, struct sockaddr *nam); /* - * The tcp_gen_* routines are wrappers around the toe_usrreqs calls, - * in the non-offloaded case they translate to tcp_output. + * The tcp_output_* routines are wrappers around the toe_usrreqs calls + * which trigger packet transmission. In the non-offloaded case they + * translate to tcp_output. The tcp_offload_* routines notify TOE + * of specific events. I the non-offloaded case they are no-ops. * * Listen is a special case because it is a 1 to many relationship * and there can be more than one offload driver in the system. @@ -233,7 +235,7 @@ #define SO_OFFLOADABLE(so) ((so->so_options & SO_NO_OFFLOAD) == 0) static __inline int -tcp_gen_connect(struct socket *so, struct sockaddr *nam) +tcp_output_connect(struct socket *so, struct sockaddr *nam) { struct tcpcb *tp = sototcpcb(so); int error; @@ -251,7 +253,7 @@ } static __inline int -tcp_gen_send(struct tcpcb *tp) +tcp_output_send(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE @@ -262,7 +264,7 @@ } static __inline int -tcp_gen_rcvd(struct tcpcb *tp) +tcp_output_rcvd(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE @@ -273,7 +275,7 @@ } static __inline int -tcp_gen_disconnect(struct tcpcb *tp) +tcp_output_disconnect(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE @@ -284,7 +286,7 @@ } static __inline int -tcp_gen_reset(struct tcpcb *tp) +tcp_output_reset(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE @@ -295,7 +297,7 @@ } static __inline void -tcp_gen_detach(struct tcpcb *tp) +tcp_offload_detach(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE @@ -305,7 +307,7 @@ } static __inline void -tcp_gen_listen_open(struct tcpcb *tp) +tcp_offload_listen_open(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE @@ -315,7 +317,7 @@ } static __inline void -tcp_gen_listen_close(struct tcpcb *tp) +tcp_offload_listen_close(struct tcpcb *tp) { #ifndef TCP_OFFLOAD_DISABLE >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Dec 23 14:09:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EE15516A421; Sun, 23 Dec 2007 14:09:38 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A083716A41B for ; Sun, 23 Dec 2007 14:09:38 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9B94413C442 for ; Sun, 23 Dec 2007 14:09:38 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNE9cOH011898 for ; Sun, 23 Dec 2007 14:09:38 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNE9c3h011895 for perforce@freebsd.org; Sun, 23 Dec 2007 14:09:38 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 14:09:38 GMT Message-Id: <200712231409.lBNE9c3h011895@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 131468 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 14:09:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=131468 Change 131468 by rwatson@rwatson_cinnamon on 2007/12/23 14:08:41 Fix comment to refer to correct ioctl. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#25 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#25 (text+ko) ==== @@ -970,7 +970,7 @@ * BIOCFEEDBACK Set packet feedback mode. * BIOCGETZBUF Query current zero-copy buffer locations. * BIOCSETZBUF Set current zero-copy buffer locations. - * BIOCSETZBUF Acknowledge reading zero-copy buffers. + * BIOCACKZBUF Acknowledge reading zero-copy buffers. * BIOCGETZMAX Get maximum zero-copy buffer size. * BIOCGETZNEXT Get next ready zero-copy buffer location */ From owner-p4-projects@FreeBSD.ORG Sun Dec 23 14:11:41 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 703F716A468; Sun, 23 Dec 2007 14:11:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 14ECB16A41B for ; Sun, 23 Dec 2007 14:11:41 +0000 (UTC) (envelope-from ticso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id ECCEA13C448 for ; Sun, 23 Dec 2007 14:11:40 +0000 (UTC) (envelope-from ticso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNEBeB5012624 for ; Sun, 23 Dec 2007 14:11:40 GMT (envelope-from ticso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNEBeLA012621 for perforce@freebsd.org; Sun, 23 Dec 2007 14:11:40 GMT (envelope-from ticso@freebsd.org) Date: Sun, 23 Dec 2007 14:11:40 GMT Message-Id: <200712231411.lBNEBeLA012621@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ticso@freebsd.org using -f From: Bernd Walter To: Perforce Change Reviews Cc: Subject: PERFORCE change 131469 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 14:11:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=131469 Change 131469 by ticso@ticso on 2007/12/23 14:10:49 somehow a variable declaration was lost CVS version is OK Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#38 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#38 (text+ko) ==== @@ -255,6 +255,7 @@ struct dos_partition *dp; struct disklabel *d; char *sec; + int i; if (!dsk_meta) { sec = dmadat->secbuf; From owner-p4-projects@FreeBSD.ORG Sun Dec 23 14:11:42 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4038D16A525; Sun, 23 Dec 2007 14:11:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3E7A916A420 for ; Sun, 23 Dec 2007 14:11:41 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2126C13C44B for ; Sun, 23 Dec 2007 14:11:41 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNEBehj012630 for ; Sun, 23 Dec 2007 14:11:40 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNEBeUq012627 for perforce@freebsd.org; Sun, 23 Dec 2007 14:11:40 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 14:11:40 GMT Message-Id: <200712231411.lBNEBeUq012627@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 131470 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 14:11:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=131470 Change 131470 by rwatson@rwatson_cinnamon on 2007/12/23 14:11:11 Remove trailing whitespace. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#26 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#26 (text+ko) ==== @@ -981,7 +981,7 @@ { struct bpf_d *d = dev->si_drv1; int error = 0; - + /* * Refresh PID associated with this descriptor. */ From owner-p4-projects@FreeBSD.ORG Sun Dec 23 14:21:53 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E5F8316A46B; Sun, 23 Dec 2007 14:21:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 788AF16A468 for ; Sun, 23 Dec 2007 14:21:52 +0000 (UTC) (envelope-from ticso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5D2E813C4E8 for ; Sun, 23 Dec 2007 14:21:52 +0000 (UTC) (envelope-from ticso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNELq3T014528 for ; Sun, 23 Dec 2007 14:21:52 GMT (envelope-from ticso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNELqNq014525 for perforce@freebsd.org; Sun, 23 Dec 2007 14:21:52 GMT (envelope-from ticso@freebsd.org) Date: Sun, 23 Dec 2007 14:21:52 GMT Message-Id: <200712231421.lBNELqNq014525@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ticso@freebsd.org using -f From: Bernd Walter To: Perforce Change Reviews Cc: Subject: PERFORCE change 131472 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 14:21:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=131472 Change 131472 by ticso@ticso on 2007/12/23 14:21:43 disable register dumping debug output Affected files ... .. //depot/projects/arm/src/sys/dev/mii/rlswitch.c#4 edit Differences ... ==== //depot/projects/arm/src/sys/dev/mii/rlswitch.c#4 (text+ko) ==== @@ -57,7 +57,7 @@ #include "miibus_if.h" -#define RL_DEBUG +//#define RL_DEBUG //#define RL_VLAN static int rlswitch_probe(device_t); From owner-p4-projects@FreeBSD.ORG Sun Dec 23 15:56:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8C10816A468; Sun, 23 Dec 2007 15:56:33 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F355D16A421 for ; Sun, 23 Dec 2007 15:56:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EF08413C459 for ; Sun, 23 Dec 2007 15:56:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNFuWIT029672 for ; Sun, 23 Dec 2007 15:56:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNFuWCf029669 for perforce@freebsd.org; Sun, 23 Dec 2007 15:56:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 15:56:32 GMT Message-Id: <200712231556.lBNFuWCf029669@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 131475 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 15:56:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131475 Change 131475 by rwatson@rwatson_cinnamon on 2007/12/23 15:55:54 Integrate zcopybpf. Affected files ... .. //depot/projects/zcopybpf/src/sys/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/arm/at91/libat91/spi_flash.c#3 integrate .. //depot/projects/zcopybpf/src/sys/net/bpf.c#27 integrate .. //depot/projects/zcopybpf/src/sys/net/bpf.h#14 integrate Differences ... ==== //depot/projects/zcopybpf/src/sys/boot/arm/at91/boot2/bwct_board.c#2 (text+ko) ==== @@ -1,81 +1,115 @@ #include -__FBSDID("$FreeBSD: src/sys/boot/arm/at91/boot2/bwct_board.c,v 1.1 2007/07/13 14:27:04 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/arm/at91/boot2/bwct_board.c,v 1.2 2007/12/23 14:57:35 ticso Exp $"); #include +#include "at91rm9200_lowlevel.h" +#include "at91rm9200.h" #include "emac.h" #include "lib.h" #include "ee.h" #include "board.h" #include "sd-card.h" -unsigned char mac[6]; +unsigned char mac[6] = { 0x00, 0x0e, 0x42, 0x02, 0x00, 0x28 }; + +static void USART0_Init(); +static void USART1_Init(); +static void USART2_Init(); +static void USART3_Init(); +static void DS1672_Init(); static void -MacFromEE() -{ -#if 0 - uint32_t sig; +DS1672_Init() { + uint8_t buf[] = {0x00, 0xa9}; - sig = 0; - EERead(0, (uint8_t *)&sig, sizeof(sig)); - if (sig != 0xaa55aa55) - return; - EERead(48, mac, 3); - EERead(48+5, mac+3, 3); -#else - mac[0] = 0x00; - mac[1] = 0x0e; - mac[2] = 0x42; - mac[3] = 0x02; - mac[4] = 0x00; - mac[5] = 0x21; -#endif - printf("MAC %x:%x:%x:%x:%x:%x\n", mac[0], - mac[1], mac[2], mac[3], mac[4], mac[5]); + EEWrite(0xd0, buf, sizeof(buf)); } -#ifdef XMODEM_DL -#define FLASH_OFFSET (0 * FLASH_PAGE_SIZE) -#define KERNEL_OFFSET (220 * FLASH_PAGE_SIZE) -#define KERNEL_LEN (6 * 1024 * FLASH_PAGE_SIZE) +static void +USART0_Init() { + + AT91PS_PIO pPio = (AT91PS_PIO)AT91C_BASE_PIOA; + AT91PS_PMC pPMC = (AT91PS_PMC)AT91C_BASE_PMC; + + // setup GPIO + pPio->PIO_ASR = AT91C_PA17_TXD0 | AT91C_PA18_RXD0; + pPio->PIO_PDR = AT91C_PA17_TXD0 | AT91C_PA18_RXD0; + + // enable power + pPMC->PMC_PCER = 1u << AT91C_ID_US0; +} static void -UpdateFlash(int offset) -{ - char *addr = (char *)0x20000000 + (1 << 20); /* Load to base + 1MB */ - int len, i, off; +USART1_Init() { + + AT91PS_PIO pPio = (AT91PS_PIO)AT91C_BASE_PIOA; + AT91PS_PMC pPMC = (AT91PS_PMC)AT91C_BASE_PMC; + + // setup GPIO + pPio->PIO_ASR = AT91C_PB20_TXD1 | AT91C_PB21_RXD1; + pPio->PIO_PDR = AT91C_PB20_TXD1 | AT91C_PB21_RXD1; - while ((len = xmodem_rx(addr)) == -1) - continue; - printf("\nDownloaded %u bytes.\n", len); - for (i = 0; i < len; i+= FLASH_PAGE_SIZE) { - off = i + offset; - SPI_WriteFlash(off, addr + i, FLASH_PAGE_SIZE); - } + // enable power + pPMC->PMC_PCER = 1u << AT91C_ID_US1; } -void -Update(void) -{ - UpdateFlash(FLASH_OFFSET); + +static void +USART2_Init() { + + AT91PS_PIO pPio = (AT91PS_PIO)AT91C_BASE_PIOA; + AT91PS_PMC pPMC = (AT91PS_PMC)AT91C_BASE_PMC; + + // setup GPIO + pPio->PIO_ASR = AT91C_PA23_TXD2 | AT91C_PA22_RXD2; + pPio->PIO_PDR = AT91C_PA23_TXD2 | AT91C_PA22_RXD2; + + // enable power + pPMC->PMC_PCER = 1u << AT91C_ID_US2; } -#else -void -Update(void) -{ +static void +USART3_Init() { + + AT91PS_PIO pPio = (AT91PS_PIO)AT91C_BASE_PIOA; + AT91PS_PMC pPMC = (AT91PS_PMC)AT91C_BASE_PMC; + + // setup GPIO + pPio->PIO_BSR = AT91C_PA5_TXD3 | AT91C_PA6_RXD3; + pPio->PIO_PDR = AT91C_PA5_TXD3 | AT91C_PA6_RXD3; + + // enable power + pPMC->PMC_PCER = 1u << AT91C_ID_US3; } -#endif void board_init(void) { - EEInit(); - MacFromEE(); - EMAC_Init(); - sdcard_init(); - EMAC_SetMACAddress(mac); + printf("\n\n"); + printf("BWCT FSB-A920-1\n"); + printf("http://www.bwct.de\n"); + printf("\n"); + printf("AT92RM9200 180MHz\n"); + printf("Initialising USART0\n"); + USART0_Init(); + printf("Initialising USART1\n"); + USART1_Init(); + printf("Initialising USART2\n"); + USART2_Init(); + printf("Initialising USART3\n"); + USART3_Init(); + printf("Initialising TWI\n"); + EEInit(); + printf("Initialising DS1672\n"); + DS1672_Init(); + printf("Initialising Ethernet\n"); + printf("MAC %x:%x:%x:%x:%x:%x\n", mac[0], + mac[1], mac[2], mac[3], mac[4], mac[5]); + EMAC_Init(); + EMAC_SetMACAddress(mac); + printf("Initialising SD-card\n"); + sdcard_init(); } #include "../bootspi/ee.c" ==== //depot/projects/zcopybpf/src/sys/boot/arm/at91/libat91/spi_flash.c#3 (text+ko) ==== @@ -19,7 +19,7 @@ * only. * END_BLOCK * - * $FreeBSD: src/sys/boot/arm/at91/libat91/spi_flash.c,v 1.4 2007/03/28 22:38:01 imp Exp $ + * $FreeBSD: src/sys/boot/arm/at91/libat91/spi_flash.c,v 1.5 2007/12/23 14:46:30 ticso Exp $ *****************************************************************************/ #include "at91rm9200.h" @@ -256,11 +256,12 @@ value = pSPI->SPI_RDR; value = pSPI->SPI_SR; + value = GetFlashStatus() & 0xFC; #ifdef BOOT_BWCT - if (((value = GetFlashStatus()) & 0xFC) != 0xB4) + if (value != 0xB4 && value != 0xAC) printf(" Bad SPI status: 0x%x\n", value); #else - if (((value = GetFlashStatus()) & 0xFC) != 0xBC) + if (value != 0xBC) printf(" Bad SPI status: 0x%x\n", value); #endif } ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#27 (text+ko) ==== @@ -33,7 +33,7 @@ * * @(#)bpf.c 8.4 (Berkeley) 1/9/95 * - * $FreeBSD: src/sys/net/bpf.c,v 1.183 2007/10/24 19:03:57 rwatson Exp $ + * $FreeBSD: src/sys/net/bpf.c,v 1.184 2007/12/23 14:10:33 rwatson Exp $ */ #include "opt_bpf.h" @@ -982,7 +982,7 @@ struct bpf_d *d = dev->si_drv1; int error = 0; - /* + /* * Refresh PID associated with this descriptor. */ BPFD_LOCK(d); @@ -997,7 +997,7 @@ case BIOCGBLEN: case BIOCFLUSH: case BIOCGDLT: - case BIOCGDLTLIST: + case BIOCGDLTLIST: case BIOCGETIF: case BIOCGRTIMEOUT: case BIOCGSTATS: @@ -1548,7 +1548,7 @@ if (kn->kn_filter != EVFILT_READ) return (1); - /* + /* * Refresh PID associated with this descriptor. */ BPFD_LOCK(d); ==== //depot/projects/zcopybpf/src/sys/net/bpf.h#14 (text+ko) ==== @@ -34,7 +34,7 @@ * @(#)bpf.h 8.1 (Berkeley) 6/10/93 * @(#)bpf.h 1.34 (LBL) 6/16/96 * - * $FreeBSD: src/sys/net/bpf.h,v 1.48 2007/10/21 13:23:32 mlaier Exp $ + * $FreeBSD: src/sys/net/bpf.h,v 1.49 2007/12/23 14:10:33 rwatson Exp $ */ #ifndef _NET_BPF_H_ @@ -590,7 +590,7 @@ /* * Juniper-private data link type, as per request from - * Hannes Gredler . + * Hannes Gredler . * The DLT_ are used for prepending meta-information * like interface index, interface name * before standard Ethernet, PPP, Frelay & C-HDLC Frames @@ -607,7 +607,7 @@ /* * Juniper-private data link type, as per request from - * Hannes Gredler . + * Hannes Gredler . * The DLT_ is used for internal communication with a * voice Adapter Card (PIC) */ @@ -682,7 +682,7 @@ /* * Juniper-private data link type, as per request from - * Hannes Gredler . + * Hannes Gredler . * The DLT_ is used for internal communication with a * integrated service module (ISM). */ @@ -723,7 +723,7 @@ /* * Juniper-private data link type, as per request from - * Hannes Gredler . + * Hannes Gredler . * The DLT_ is used for capturing data on a secure tunnel interface. */ #define DLT_JUNIPER_ST 200 From owner-p4-projects@FreeBSD.ORG Sun Dec 23 16:49:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 88B1E16A421; Sun, 23 Dec 2007 16:49:29 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 377A316A419 for ; Sun, 23 Dec 2007 16:49:29 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3474C13C465 for ; Sun, 23 Dec 2007 16:49:29 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNGnTcO047132 for ; Sun, 23 Dec 2007 16:49:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNGnSUD047129 for perforce@freebsd.org; Sun, 23 Dec 2007 16:49:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 16:49:29 GMT Message-Id: <200712231649.lBNGnSUD047129@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 131478 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 16:49:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=131478 Change 131478 by rwatson@rwatson_cinnamon on 2007/12/23 16:48:44 Rework setup portion of zero-copy support for libpcap: - Test environmental variable only once when creating descriptor. - Rename environmental variable to BPF_ZEROCOPY to match kernel option - If the environmental variable is present, try to set the zero-copy buffer mode, and if that fails, fall back to normal operation (which is what the comment suggests it does; instead it was failing descriptor allocation if the setmode ioctl failed). - When mmaping of shared buffers fails, follow the normal error path. - Clean up the free path for zero-copy buffers. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#10 edit .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-int.h#6 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#10 (text+ko) ==== @@ -788,14 +788,10 @@ * attach to, so we do that here also. */ #ifdef BIOCSETBUFMODE - if (getenv("BPF_ZERO_COPY")) { - bufmode = BPF_BUFMODE_ZBUF; - if (ioctl(fd, BIOCSETBUFMODE, (caddr_t)&bufmode) < 0) { - snprintf(ebuf, PCAP_ERRBUF_SIZE, "BIOCSETBUFMODE: %s", - pcap_strerror(errno)); - goto bad; - } - + bufmode = BPF_BUFMODE_ZBUF; + if (getenv("BPF_ZEROCOPY") && + ioctl(fd, BIOCSETBUFMODE, (caddr_t)&bufmode) == 0) { + p->zerocopy = 1; if (ioctl(fd, BIOCGETZMAX, (caddr_t)&zbufmax) < 0) { snprintf(ebuf, PCAP_ERRBUF_SIZE, "BIOCGETZMAX: %s", pcap_strerror(errno)); @@ -806,8 +802,6 @@ * XXXRW: This logic should be revisited. */ p->zbufsize = 32768; - if (p->zbufsize % getpagesize() != 0) - p->zbufsize = getpagesize(); if (p->zbufsize > zbufmax) p->zbufsize = zbufmax; @@ -816,12 +810,9 @@ p->zbuf2 = mmap(NULL, p->zbufsize, PROT_READ | PROT_WRITE, MAP_ANON, -1, 0); if (p->zbuf1 == MAP_FAILED || p->zbuf2 == MAP_FAILED) { - if (p->zbuf1 != MAP_FAILED) - munmap(p->zbuf1, p->zbufsize); - if (p->zbuf2 != MAP_FAILED) - munmap(p->zbuf1, p->zbufsize); snprintf(ebuf, PCAP_ERRBUF_SIZE, "mmap: %s", pcap_strerror(errno)); + goto bad; } bzero(&bz, sizeof(bz)); @@ -1059,7 +1050,7 @@ #endif /* set timeout */ p->to_ms = to_ms; - if (to_ms != 0 && getenv("BPF_ZERO_COPY") == NULL) { + if (to_ms != 0 && !p->zerocopy) { /* * XXX - is this seconds/nanoseconds in AIX? * (Treating it as such doesn't fix the timeout @@ -1252,21 +1243,19 @@ (void)close(fd); #ifdef BIOCSETBUFMODE - if (p->zbuf1 != NULL) - munmap(p->zbuf1, v); - if (p->zbuf2 != NULL) - munmap(p->zbuf2, v); /* - * If we are using zerocopy, the packet buffer will be referencing - * an address in one of the shared pages, if any. In which case - * we will not free it. + * In zero-copy mode, p->buffer is just a pointer into one of the two + * memory-mapped buffers, so no need to free it. */ - if (getenv("BPF_ZERO_COPY") == NULL && p->buffer != NULL) - free(p->buffer); -#else + if (p->zerocopy) { + if (p->zbuf1 != MAP_FAILED && p->zbuf1 != NULL) + munmap(p->zbuf1, p->zbufsize); + if (p->zbuf2 != MAP_FAILED && p->zbuf1 != NULL) + munmap(p->zbuf1, p->zbufsize); + } else +#endif if (p->buffer != NULL) free(p->buffer); -#endif if (p->dlt_list != NULL) free(p->dlt_list); free(p); ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-int.h#6 (text+ko) ==== @@ -189,6 +189,7 @@ u_char *zbuf1, *zbuf2; u_int zbufsize; u_int timeout; + u_int zerocopy; /* * If there's currently a buffer being actively processed, then it is From owner-p4-projects@FreeBSD.ORG Sun Dec 23 17:18:03 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4E94C16A41A; Sun, 23 Dec 2007 17:18:03 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4BE7716A417 for ; Sun, 23 Dec 2007 17:17:59 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4AA1213C45A for ; Sun, 23 Dec 2007 17:17:59 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNHHxDx052753 for ; Sun, 23 Dec 2007 17:17:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNHHxmx052750 for perforce@freebsd.org; Sun, 23 Dec 2007 17:17:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 17:17:59 GMT Message-Id: <200712231717.lBNHHxmx052750@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 131479 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 17:18:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=131479 Change 131479 by rwatson@rwatson_cinnamon on 2007/12/23 17:17:13 Use zero-copy flag instead of non-NULL zero-copy buffer pointer to test for zero-copy being enabled. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#11 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#11 (text+ko) ==== @@ -285,7 +285,7 @@ cc = p->cc; if (p->cc == 0) { #ifdef BIOCSETBUFMODE - if (p->zbuf1 != NULL) { + if (p->zerocopy) { if (p->buffer != NULL) pcap_ack_zbuf(p); i = pcap_next_zbuf(p, &cc); @@ -1141,7 +1141,7 @@ } p->bufsize = v; #ifdef BIOCSETBUFMODE - if (p->zbuf1 == NULL) { + if (!p->zerocopy) { #endif p->buffer = (u_char *)malloc(p->bufsize); if (p->buffer == NULL) { From owner-p4-projects@FreeBSD.ORG Sun Dec 23 17:55:40 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1CF3E16A41B; Sun, 23 Dec 2007 17:55:40 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AFB8A16A418 for ; Sun, 23 Dec 2007 17:55:39 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AEEE613C447 for ; Sun, 23 Dec 2007 17:55:39 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNHtdsi058814 for ; Sun, 23 Dec 2007 17:55:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNHtdMp058811 for perforce@freebsd.org; Sun, 23 Dec 2007 17:55:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 17:55:39 GMT Message-Id: <200712231755.lBNHtdMp058811@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 131480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 17:55:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131480 Change 131480 by rwatson@rwatson_cinnamon on 2007/12/23 17:55:33 Add a comment before BPF buffers are either read or zero-copy rotated to explain what's going on. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#12 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#12 (text+ko) ==== @@ -284,6 +284,14 @@ } cc = p->cc; if (p->cc == 0) { + /* + * When reading without zero-copy from a file descriptor, we + * use a single buffer and return a length of data in the + * buffer. With zero-copy, we update the p->buffer pointer + * to point at whatever underlying buffer contains the next + * data and update cc to reflect the data found in the + * buffer. + */ #ifdef BIOCSETBUFMODE if (p->zerocopy) { if (p->buffer != NULL) From owner-p4-projects@FreeBSD.ORG Sun Dec 23 18:59:49 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8BC0216A469; Sun, 23 Dec 2007 18:59:49 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 49DA316A421 for ; Sun, 23 Dec 2007 18:59:49 +0000 (UTC) (envelope-from thioretic@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4AE8713C448 for ; Sun, 23 Dec 2007 18:59:49 +0000 (UTC) (envelope-from thioretic@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNIxnPk068996 for ; Sun, 23 Dec 2007 18:59:49 GMT (envelope-from thioretic@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNIxnF5068993 for perforce@freebsd.org; Sun, 23 Dec 2007 18:59:49 GMT (envelope-from thioretic@FreeBSD.org) Date: Sun, 23 Dec 2007 18:59:49 GMT Message-Id: <200712231859.lBNIxnF5068993@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to thioretic@FreeBSD.org using -f From: Maxim Zhuravlev To: Perforce Change Reviews Cc: Subject: PERFORCE change 131484 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 18:59:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=131484 Change 131484 by thioretic@thioretic on 2007/12/23 18:59:25 Some TODO notes Affected files ... .. //depot/projects/soc2007/thioretic_gidl2/TODO#2 edit Differences ... ==== //depot/projects/soc2007/thioretic_gidl2/TODO#2 (text+ko) ==== @@ -166,4 +166,24 @@ # value returned to a caller. # func - the method from bus_if or driver_if being applied to drivers # memb - the object from driverinfo, which contains the method - # implementation.+ # implementation. +GENERIC NOTES SECTION +--------------------- +TODO: +* Let filter drivers to create iors, that are to be processed by a parent(child) + device, without being processed by other drivers in current device's stack. + Ex. syscons. It includes some private implemented functions from tty interface + and some functions that just call a generic tty functions. + This can be implemented in several ways: + 1) Some kinda *virtual* inheritance of tty driver kobj. + 2) Some library of tty helper functions. + 3) Stacking of syscons driver over generic tty driver. + As for the first way it's a more generic way, but then we won't be able to implement + functions that mix own code and call(s) to generic functions. + As for the second way tty helper functions need some way to know about attached + devices. + As for the third - the optional ior stack propagation is required. +* Trigger infrastructure. A parent(child device) must be able to set a trigger on + its child(parent) state modification (attached, detached...). The trigger events + should be queued so that drivers added to stack later can receive events + for triggers they set. From owner-p4-projects@FreeBSD.ORG Sun Dec 23 22:27:30 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B7E5B16A420; Sun, 23 Dec 2007 22:27:30 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4725616A41A for ; Sun, 23 Dec 2007 22:27:30 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4DA6513C46E for ; Sun, 23 Dec 2007 22:27:30 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNMRUdl027065 for ; Sun, 23 Dec 2007 22:27:30 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNMRUM9026927 for perforce@freebsd.org; Sun, 23 Dec 2007 22:27:30 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 22:27:30 GMT Message-Id: <200712232227.lBNMRUM9026927@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 131491 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 22:27:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=131491 Change 131491 by rwatson@rwatson_cinnamon on 2007/12/23 22:26:53 To encourage me to test builds for both cases, remove BPF_ZEROCOPY from GENERIC and add it to a separate kernel config of the same name. Affected files ... .. //depot/projects/zcopybpf/src/sys/i386/conf/BPF_ZEROCOPY#1 add .. //depot/projects/zcopybpf/src/sys/i386/conf/GENERIC#9 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/i386/conf/GENERIC#9 (text+ko) ==== @@ -30,8 +30,6 @@ options SCHED_ULE # ULE scheduler -options BPF_ZEROCOPY - options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols From owner-p4-projects@FreeBSD.ORG Sun Dec 23 22:29:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5BE3316A41B; Sun, 23 Dec 2007 22:29:33 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EBFC516A41A for ; Sun, 23 Dec 2007 22:29:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F2F2813C467 for ; Sun, 23 Dec 2007 22:29:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNMTWNl055348 for ; Sun, 23 Dec 2007 22:29:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNMTWmn055345 for perforce@freebsd.org; Sun, 23 Dec 2007 22:29:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 22:29:32 GMT Message-Id: <200712232229.lBNMTWmn055345@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 131492 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 22:29:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131492 Change 131492 by rwatson@rwatson_cinnamon on 2007/12/23 22:29:20 As is the case with some other per-buffer-model functions, don't enter the zerocopy code for the unsupported uiomove method. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#28 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#22 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.h#9 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#28 (text+ko) ==== @@ -265,18 +265,9 @@ bpf_uiomove(struct bpf_d *d, caddr_t buf, u_int len, struct uio *uio) { - switch (d->bd_bufmode) { - case BPF_BUFMODE_BUFFER: - return (bpf_buffer_uiomove(d, buf, len, uio)); - -#ifdef BPF_ZEROCOPY - case BPF_BUFMODE_ZBUF: - return (bpf_zerocopy_uiomove(d, buf, len, uio)); -#endif - - default: - panic("bpf_buf_uiomove"); - } + if (d->bd_bufmode != BPF_BUFMODE_BUFFER) + return (EOPNOTSUPP); + return (bpf_buffer_uiomove(d, buf, len, uio)); } static int ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#22 (text+ko) ==== @@ -403,21 +403,6 @@ } /* - * read() is unimplemented for zero-copy BPF buffers, even though in - * principle you could combine the two semantics. - */ -int -bpf_zerocopy_uiomove(struct bpf_d *d, caddr_t buf, u_int len, - struct uio *uio) -{ - - KASSERT(d->bd_bufmode == BPF_BUFMODE_ZBUF, - ("bpf_zerocopy_uiomove: not in zbuf mode")); - - return (EOPNOTSUPP); -} - -/* * Acknowledge reading the buffer without performing read(). We accept an * argument primarily so that we can validate that user space has the right * idea, helping to catch application bugs faster if the application's sense ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.h#9 (text+ko) ==== @@ -55,7 +55,5 @@ struct bpf_zbuf *bz); int bpf_zerocopy_ioctl_setzbuf(struct thread *td, struct bpf_d *d, struct bpf_zbuf *bz); -int bpf_zerocopy_uiomove(struct bpf_d *d, caddr_t buf, u_int len, - struct uio *uio); #endif /* !_NET_BPF_ZEROCOPY_H_ */ From owner-p4-projects@FreeBSD.ORG Sun Dec 23 22:35:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF1B016A419; Sun, 23 Dec 2007 22:35:39 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4EA1716A417 for ; Sun, 23 Dec 2007 22:35:39 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5541913C447 for ; Sun, 23 Dec 2007 22:35:39 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNMZdrQ018122 for ; Sun, 23 Dec 2007 22:35:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNMZdPd018108 for perforce@freebsd.org; Sun, 23 Dec 2007 22:35:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 22:35:39 GMT Message-Id: <200712232235.lBNMZdPd018108@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 131493 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 22:35:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131493 Change 131493 by rwatson@rwatson_cinnamon on 2007/12/23 22:34:50 Rename bpf_buffree() and associated functions to bpf_canfreebuf() -- this is a check rather than an operation implementing freeing. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#29 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#23 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.h#10 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#29 (text+ko) ==== @@ -210,11 +210,11 @@ /* * If the buffer mechanism has a way to decide that a held buffer can be made - * free, then it is exposed via the bpf_buffree() interface. (1) is returned - * if the buffer can be discarded, (0) is returned if it cannot. + * free, then it is exposed via the bpf_canfreebuf() interface. (1) is + * returned if the buffer can be discarded, (0) is returned if it cannot. */ static int -bpf_buffree(struct bpf_d *d) +bpf_canfreebuf(struct bpf_d *d) { BPFD_LOCK_ASSERT(d); @@ -222,7 +222,7 @@ switch (d->bd_bufmode) { #ifdef BPF_ZEROCOPY case BPF_BUFMODE_ZBUF: - return (bpf_zerocopy_buffree(d)); + return (bpf_zerocopy_canfreebuf(d)); #endif } return (0); @@ -827,7 +827,7 @@ // printf("bpf_ready: hlen: %d, immediate %d, state %d, slen %d\n", // d->bd_hlen, d->bd_immediate, d->bd_state, d->bd_slen); - if (!bpf_buffree(d) && d->bd_hlen != 0) + if (!bpf_canfreebuf(d) && d->bd_hlen != 0) return (1); if ((d->bd_immediate || d->bd_state == BPF_TIMED_OUT) && d->bd_slen != 0) @@ -1763,7 +1763,7 @@ * run this check if we need the space), but for now it's a reliable * spot to do it. */ - if (bpf_buffree(d)) { + if (bpf_canfreebuf(d)) { d->bd_fbuf = d->bd_hbuf; d->bd_hbuf = NULL; d->bd_hlen = 0; ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#23 (text+ko) ==== @@ -365,12 +365,12 @@ * XXXRW: Memory ordering also an issue here? */ int -bpf_zerocopy_buffree(struct bpf_d *d) +bpf_zerocopy_canfreebuf(struct bpf_d *d) { struct zbuf *zb; KASSERT(d->bd_bufmode == BPF_BUFMODE_ZBUF, - ("bpf_zerocopy_buffree: not in zbuf mode")); + ("bpf_zerocopy_canfreebuf: not in zbuf mode")); zb = (struct zbuf *)d->bd_hbuf; if (zb == NULL) ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.h#10 (text+ko) ==== @@ -41,7 +41,7 @@ void bpf_zerocopy_append_mbuf(struct bpf_d *d, caddr_t buf, u_int offset, void *src, u_int len); void bpf_zerocopy_bufheld(struct bpf_d *); -int bpf_zerocopy_buffree(struct bpf_d *); +int bpf_zerocopy_canfreebuf(struct bpf_d *); void bpf_zerocopy_free(struct bpf_d *d); int bpf_zerocopy_ioctl_ackzbuf(struct thread *td, struct bpf_d *d, struct bpf_zbuf *bz); From owner-p4-projects@FreeBSD.ORG Sun Dec 23 22:50:56 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E66F816A41B; Sun, 23 Dec 2007 22:50:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8C5B616A417 for ; Sun, 23 Dec 2007 22:50:55 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 93FDA13C43E for ; Sun, 23 Dec 2007 22:50:55 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNMotDl007893 for ; Sun, 23 Dec 2007 22:50:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNMotY8007879 for perforce@freebsd.org; Sun, 23 Dec 2007 22:50:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 22:50:55 GMT Message-Id: <200712232250.lBNMotY8007879@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 131494 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 22:50:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=131494 Change 131494 by rwatson@rwatson_cinnamon on 2007/12/23 22:50:15 Only check whether zerocopy has picked up a userspace free notification if (a) there is a buffer we might want to free, and (b) we need to free the buffer in order to handle the arriving packet data. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#30 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#30 (text+ko) ==== @@ -1757,19 +1757,6 @@ BPFD_LOCK_ASSERT(d); /* - * Detect whether user space has released a buffer back to us, and if - * so, move it from being a hold buffer to a free buffer. This may - * not be the best place to do it (for example, we might only want to - * run this check if we need the space), but for now it's a reliable - * spot to do it. - */ - if (bpf_canfreebuf(d)) { - d->bd_fbuf = d->bd_hbuf; - d->bd_hbuf = NULL; - d->bd_hlen = 0; - } - - /* * Figure out how many bytes to move. If the packet is * greater or equal to the snapshot length, transfer that * much. Otherwise, transfer the whole packet (unless @@ -1785,9 +1772,18 @@ curlen = BPF_WORDALIGN(d->bd_slen); if (curlen + totlen > d->bd_bufsize) { /* - * This packet will overflow the storage buffer. - * Rotate the buffers if we can, then wakeup any - * pending reads. + * This packet will overflow the storage buffer. If + * userspace has notified us via shared memory that a buffer + * can be freed, do so. + */ + if (d->bd_hbuf != NULL && bpf_canfreebuf(d)) { + d->bd_fbuf = d->bd_hbuf; + d->bd_hbuf = NULL; + d->bd_hlen = 0; + } + + /* + * Rotate buffers if we can, then wakeup any pending reads. */ if (d->bd_fbuf == NULL) { /* From owner-p4-projects@FreeBSD.ORG Sun Dec 23 22:52:58 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C1E8A16A421; Sun, 23 Dec 2007 22:52:58 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 485CD16A417 for ; Sun, 23 Dec 2007 22:52:58 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4F80913C442 for ; Sun, 23 Dec 2007 22:52:58 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNMqw2Q032202 for ; Sun, 23 Dec 2007 22:52:58 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNMqw5r032153 for perforce@freebsd.org; Sun, 23 Dec 2007 22:52:58 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 22:52:58 GMT Message-Id: <200712232252.lBNMqw5r032153@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 131495 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 22:52:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=131495 Change 131495 by rwatson@rwatson_cinnamon on 2007/12/23 22:52:50 Remove commented out debugging printfs. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf_buffer.c#4 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf_buffer.c#4 (text+ko) ==== @@ -100,8 +100,6 @@ KASSERT(d->bd_sbuf == NULL, ("bpf_buffer_alloc: bd_sbuf != NULL")); KASSERT(d->bd_hbuf == NULL, ("bpf_buffer_alloc: bd_hbuf != NULL")); - // printf("bpf_buffer_alloc size %d\n", d->bd_bufsize); - d->bd_fbuf = (caddr_t)malloc(d->bd_bufsize, M_BPF, M_WAITOK); d->bd_sbuf = (caddr_t)malloc(d->bd_bufsize, M_BPF, M_WAITOK); d->bd_hbuf = NULL; @@ -118,8 +116,6 @@ { u_char *src_bytes; - // printf("bpf_buffer_append_bytes size %d\n", len); - src_bytes = (u_char *)src; bcopy(src_bytes, buf + offset, len); } @@ -135,8 +131,6 @@ u_char *dst; u_int count; - // printf("bpf_buffer_append_mbuf size %d\n", len); - m = (struct mbuf *)src; dst = (u_char *)buf + offset; while (len > 0) { @@ -157,9 +151,6 @@ bpf_buffer_free(struct bpf_d *d) { - // printf("bpf_buffer_free(sbuf: %p, hbuf: %p, fbuf: %p)\n", - // d->bd_sbuf, d->bd_hbuf, d->bd_fbuf); - if (d->bd_sbuf != NULL) free(d->bd_sbuf, M_BPF); if (d->bd_hbuf != NULL) @@ -181,8 +172,6 @@ bpf_buffer_init(struct bpf_d *d) { - // printf("bpf_buffer_init: bufsize %d\n", bpf_bufsize); - d->bd_bufsize = bpf_bufsize; } @@ -194,8 +183,6 @@ { u_int size; - // printf("bpf_buffer_ioctl_sblen %d\n", *i); - BPFD_LOCK(d); if (d->bd_bif != NULL) { BPFD_UNLOCK(d); @@ -208,8 +195,6 @@ *i = size = BPF_MINBUFSIZE; d->bd_bufsize = size; BPFD_UNLOCK(d); - - // printf("bpf_buffer_ioctl_sblen (req: %d, set: %d)\n", *i, size); return (0); } @@ -220,7 +205,5 @@ bpf_buffer_uiomove(struct bpf_d *d, caddr_t buf, u_int len, struct uio *uio) { - // printf("bpf_buffer_uiomove %d bytes\n", len); - return (uiomove(buf, len, uio)); } From owner-p4-projects@FreeBSD.ORG Sun Dec 23 22:56:02 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A5C7616A41A; Sun, 23 Dec 2007 22:56:02 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E01B716A419 for ; Sun, 23 Dec 2007 22:56:01 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E7EF913C447 for ; Sun, 23 Dec 2007 22:56:01 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNMu1Fo073901 for ; Sun, 23 Dec 2007 22:56:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNMu14f073852 for perforce@freebsd.org; Sun, 23 Dec 2007 22:56:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 22:56:01 GMT Message-Id: <200712232256.lBNMu14f073852@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 131496 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 22:56:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=131496 Change 131496 by rwatson@rwatson_cinnamon on 2007/12/23 22:55:03 Un-XXX one comment that is now the status quot, and remove another that observes what is now arguably a non-problem. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#31 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#31 (text+ko) ==== @@ -616,9 +616,9 @@ dev->si_drv1 = d; /* - * XXXRW: For historical reasons, perform a one-time initialization - * call to the buffer routines, even though we're not yet committed - * to a particular buffer method. + * For historical reasons, perform a one-time initialization call to + * the buffer routines, even though we're not yet committed to a + * particular buffer method. */ bpf_buffer_init(d); d->bd_bufmode = BPF_BUFMODE_DEFAULT; @@ -688,11 +688,6 @@ BPFD_LOCK(d); d->bd_pid = curthread->td_proc->p_pid; if (d->bd_bufmode != BPF_BUFMODE_BUFFER) { - /* - * XXXRW: For now, we don't implement a uiomove for the - * scatter-gather buffers associated with BPF_BUFMODE_ZBUF, - * so simply disallow read(). - */ BPFD_UNLOCK(d); return (EOPNOTSUPP); } From owner-p4-projects@FreeBSD.ORG Sun Dec 23 23:52:03 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0F3B16A479; Sun, 23 Dec 2007 23:52:03 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5207716A476 for ; Sun, 23 Dec 2007 23:52:03 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5AB0113C455 for ; Sun, 23 Dec 2007 23:52:03 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBNNq3Se041001 for ; Sun, 23 Dec 2007 23:52:03 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBNNq3LE040945 for perforce@freebsd.org; Sun, 23 Dec 2007 23:52:03 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 23 Dec 2007 23:52:03 GMT Message-Id: <200712232352.lBNNq3LE040945@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 131498 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Dec 2007 23:52:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=131498 Change 131498 by rwatson@rwatson_cinnamon on 2007/12/23 23:51:06 Rework libpcap interactions with zero-copy BPF: - Move to simply assigning generation numbers and comparing for equality rather than incrementing and using >. As a result, we can remove the XXX (and concern) about serial number arithmetic. The invariant is that if the two numbers are identical, the kernel owns the buffer, and if they differ, user space owns the buffer. - Introduce a new pcap_t field, zbuffer, which tracks the last buffer to be "used", if any. That way we always know what the next buffer should be. - Check shared memory buffers for data *before* calling select(), in order to avoid the select() call if we already have data waiting. - Pull out shared memory checks for data in pcap_next_zbuf() and perform them more regularly so as to avoid more system calls. For example, don't rotate the buffers unless there's no pending data we own after select() returns. This requires review and more testing, but should avoid one system call per buffer when BPF is able to keep the pipeline full. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#13 edit .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-int.h#7 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#13 (text+ko) ==== @@ -143,29 +143,70 @@ #ifdef BIOCGETBUFMODE /* + * Simple version of pcap_next_zbuf() -- do the shared memory part, but no + * blocking. + */ +static int +pcap_next_zbuf_shm(pcap_t *p, u_int *cc) +{ + struct bpf_zbuf_header *bzh; + + /* + * If we've never used a buffer before, or if the last buffer was + * zbuf2, try zbuf1. + */ + if (p->zbuffer == p->zbuf2 || p->zbuffer == NULL) { + bzh = (struct bpf_zbuf_header *)p->zbuf1; + if (bzh->bzh_kernel_gen != bzh->bzh_user_gen) { + p->bzh = bzh; + p->zbuffer = (u_char *)p->zbuf1; + p->buffer = p->zbuffer + sizeof(*bzh); + *cc = bzh->bzh_kernel_len; + return (1); + } + } else if (p->zbuffer == p->zbuf1) { + bzh = (struct bpf_zbuf_header *)p->zbuf2; + if (bzh->bzh_kernel_gen != bzh->bzh_user_gen) { + p->bzh = bzh; + p->zbuffer = (u_char *)p->zbuf2; + p->buffer = p->zbuffer + sizeof(*bzh); + *cc = bzh->bzh_kernel_len; + return (1); + } + } + return (0); +} + +/* * Selection routine for zero-copy BPF: identify the next completed buffer, * if any. Try shared memory first, and if that doesn't work, make a system * call, which may dislodge a buffer. * * Return (1) if the buffer is found, (0) if a retry is required, and (-1) if * there is an unrecoverable error. - * - * XXXRW: Check to make sure the version comparison we're doing here is - * really the right thing -- maybe use serial number arithmetic? */ static int pcap_next_zbuf(pcap_t *p, u_int *cc) { - struct bpf_zbuf_header *bzh; struct bpf_zbuf bz; struct timeval tv; fd_set r_set; - int r; + int data, r; + + /* + * Start out by seeing whether anything is waiting by checking the + * next shared memory buffer for data. + */ + data = pcap_next_zbuf_shm(p, cc); + if (data) + return (data); + /* + * No data in the buffer, so must use select() to wait for data or + * the next timeout. + */ FD_ZERO(&r_set); FD_SET(p->fd, &r_set); - p->bzh = NULL; - p->buffer = NULL; if (p->to_ms != 0) { tv.tv_sec = p->to_ms / 1000; tv.tv_usec = (p->to_ms * 1000) % 1000000; @@ -178,67 +219,29 @@ "select: %s", strerror(errno)); return (-1); } + /* - * Handle timeouts here + * Check again for data, which may exist now that we've either been + * woken up as a result of data or timed out. Try the "there's data" * case first since it doesn't require a system call. */ - if (r == 0) { - if (ioctl(p->fd, BIOCROTZBUF, &bz) < 0) { - (void) snprintf(p->errbuf, PCAP_ERRBUF_SIZE, - "BIOCROTZBUF: %s", strerror(errno)); - return (-1); - } - /* - * select(2) woke us up due to a timeout, and there was no - * data to be processed in the store buffer. Tell pcap to - * to wait again. - */ - if (bz.bz_bufa == NULL) - return (0); - } - /* XXXCSJP should we check FD_ISSET()? */ + data = pcap_next_zbuf_shm(p, cc); + if (data) + return (data); + /* - * If we have made it this far, chances are select(2) returned because - * there is data ready to be processed in the hold buffer. Compare the - * user generation numbers against the kernels. If there are any - * differences, process the packet data. + * Try forcing a buffer rotation to dislodge timed out or immediate + * data. */ - bzh = (struct bpf_zbuf_header *)p->zbuf1; - if (bzh->bzh_kernel_gen > bzh->bzh_user_gen) { - p->bzh = bzh; - p->buffer = (u_char *)p->zbuf1; - p->buffer += sizeof(*bzh); - *cc = bzh->bzh_kernel_len; - return (1); - } - bzh = (struct bpf_zbuf_header *)p->zbuf2; - if (bzh->bzh_kernel_gen > bzh->bzh_user_gen) { - p->bzh = bzh; - p->buffer = (u_char *)p->zbuf2; - p->buffer += sizeof(*bzh); - *cc = bzh->bzh_kernel_len; - return (1); - } - /* - * If the generation numbers were the same for both buffers, then it - * is possible that we woke up because of BIOCIMMEDIATE. In either - * case, manually rotate the buffers. - */ if (ioctl(p->fd, BIOCROTZBUF, &bz) < 0) { (void) snprintf(p->errbuf, PCAP_ERRBUF_SIZE, "BIOCROTZBUF: %s", strerror(errno)); return (-1); } + /* - * It's possible that we were unable to rotate the buffer because the - * user generation numbers have not been modified, in which case retry. + * Last chance for data. */ - if (bz.bz_bufa == NULL) - return (0); - p->bzh = (struct bpf_zbuf_header *)bz.bz_bufa; - p->buffer = (u_char *)bz.bz_bufa; - p->buffer += sizeof(*bzh); - *cc = bz.bz_buflen; - return (1); + return (pcap_next_zbuf_shm(p, cc)); } static int @@ -246,7 +249,7 @@ { struct bpf_zbuf bz; - p->bzh->bzh_user_gen++; + p->bzh->bzh_user_gen = p->bzh->bzh_kernel_gen; p->bzh = NULL; p->buffer = NULL; return (0); ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-int.h#7 (text+ko) ==== @@ -184,9 +184,11 @@ * alternative between these two actual mmap'd buffers as required. * As there is a header on the front size of the mmap'd buffer, only * some of the buffer is exposed to libpcap as a whole via bufsize; - * zbufsize is the true size. + * zbufsize is the true size. zbuffer tracks the current zbuf + * assocated with buffer so that it can be used to decide which the + * next buffer to read will be. */ - u_char *zbuf1, *zbuf2; + u_char *zbuf1, *zbuf2, *zbuffer; u_int zbufsize; u_int timeout; u_int zerocopy; From owner-p4-projects@FreeBSD.ORG Mon Dec 24 03:57:36 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5520D16A41B; Mon, 24 Dec 2007 03:57:36 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B8B6316A419 for ; Mon, 24 Dec 2007 03:57:35 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 998E713C45B for ; Mon, 24 Dec 2007 03:57:35 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBO3vZi6086478 for ; Mon, 24 Dec 2007 03:57:35 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBO3vO2r086467 for perforce@freebsd.org; Mon, 24 Dec 2007 03:57:25 GMT (envelope-from peter@freebsd.org) Date: Mon, 24 Dec 2007 03:57:25 GMT Message-Id: <200712240357.lBO3vO2r086467@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 131505 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 03:57:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=131505 Change 131505 by peter@peter_overcee on 2007/12/24 03:57:15 IFC @131504 Affected files ... .. //depot/projects/hammer/bin/mv/mv.c#10 integrate .. //depot/projects/hammer/contrib/gdtoa/gdtoaimp.h#8 integrate .. //depot/projects/hammer/contrib/gdtoa/hexnan.c#3 integrate .. //depot/projects/hammer/contrib/gdtoa/strtod.c#5 integrate .. //depot/projects/hammer/contrib/gdtoa/strtof.c#3 integrate .. //depot/projects/hammer/contrib/gdtoa/strtorQ.c#3 integrate .. //depot/projects/hammer/contrib/gdtoa/strtorx.c#3 integrate .. //depot/projects/hammer/contrib/openpam/CREDITS#8 integrate .. //depot/projects/hammer/contrib/openpam/HISTORY#10 integrate .. //depot/projects/hammer/contrib/openpam/INSTALL#4 integrate .. //depot/projects/hammer/contrib/openpam/LICENSE#4 integrate .. //depot/projects/hammer/contrib/openpam/MANIFEST#8 delete .. //depot/projects/hammer/contrib/openpam/Makefile.am#4 integrate .. //depot/projects/hammer/contrib/openpam/Makefile.in#5 integrate .. //depot/projects/hammer/contrib/openpam/README#5 integrate .. //depot/projects/hammer/contrib/openpam/RELNOTES#10 integrate .. //depot/projects/hammer/contrib/openpam/aclocal.m4#4 integrate .. //depot/projects/hammer/contrib/openpam/autogen.sh#3 integrate .. //depot/projects/hammer/contrib/openpam/bin/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/bin/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/bin/su/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/bin/su/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/bin/su/su.c#4 integrate .. //depot/projects/hammer/contrib/openpam/compile#1 branch .. //depot/projects/hammer/contrib/openpam/config.h.in#3 integrate .. //depot/projects/hammer/contrib/openpam/configure#5 integrate .. //depot/projects/hammer/contrib/openpam/configure.ac#2 integrate .. //depot/projects/hammer/contrib/openpam/configure.in#3 delete .. //depot/projects/hammer/contrib/openpam/depcomp#3 integrate .. //depot/projects/hammer/contrib/openpam/doc/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/doc/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/Makefile.am#4 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam.man#4 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_borrow_cred.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_free_data.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_free_envlist.3#3 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_get_option.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_log.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_nullconv.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_readline.3#6 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_restore_cred.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_set_option.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/openpam_ttyconv.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam.conf.5#2 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam.man#5 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_acct_mgmt.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_authenticate.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_chauthtok.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_close_session.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_conv.3#6 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_end.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_error.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_get_authtok.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_get_data.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_get_item.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_get_user.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_getenv.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_getenvlist.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_info.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_open_session.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_prompt.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_putenv.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_set_data.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_set_item.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_setcred.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_setenv.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_sm_acct_mgmt.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_sm_authenticate.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_sm_chauthtok.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_sm_close_session.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_sm_open_session.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_sm_setcred.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_start.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_strerror.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_verror.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_vinfo.3#10 integrate .. //depot/projects/hammer/contrib/openpam/doc/man/pam_vprompt.3#10 integrate .. //depot/projects/hammer/contrib/openpam/include/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/include/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/include/security/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/include/security/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/include/security/openpam.h#7 integrate .. //depot/projects/hammer/contrib/openpam/include/security/openpam_attr.h#1 branch .. //depot/projects/hammer/contrib/openpam/include/security/openpam_version.h#9 integrate .. //depot/projects/hammer/contrib/openpam/include/security/pam_appl.h#6 integrate .. //depot/projects/hammer/contrib/openpam/include/security/pam_constants.h#6 integrate .. //depot/projects/hammer/contrib/openpam/include/security/pam_modules.h#4 integrate .. //depot/projects/hammer/contrib/openpam/include/security/pam_types.h#7 integrate .. //depot/projects/hammer/contrib/openpam/install-sh#3 integrate .. //depot/projects/hammer/contrib/openpam/lib/Makefile.am#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_borrow_cred.c#8 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_configure.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_dispatch.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_dynamic.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_findenv.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_free_data.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_free_envlist.c#2 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_get_option.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_impl.h#8 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_load.c#7 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_log.c#7 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_nullconv.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_readline.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_restore_cred.c#8 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_set_option.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_static.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/openpam_ttyconv.c#12 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_acct_mgmt.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_authenticate.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_authenticate_secondary.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_chauthtok.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_close_session.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_end.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_error.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_get_authtok.c#8 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_get_data.c#7 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_get_item.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_get_mapped_authtok.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_get_mapped_username.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_get_user.c#8 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_getenv.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_getenvlist.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_info.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_open_session.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_prompt.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_putenv.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_set_data.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_set_item.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_set_mapped_authtok.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_set_mapped_username.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_setcred.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_setenv.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_acct_mgmt.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_authenticate.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_authenticate_secondary.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_chauthtok.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_close_session.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_get_mapped_authtok.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_get_mapped_username.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_open_session.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_set_mapped_authtok.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_set_mapped_username.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_sm_setcred.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_start.c#5 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_strerror.c#6 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_verror.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_vinfo.c#4 integrate .. //depot/projects/hammer/contrib/openpam/lib/pam_vprompt.c#6 integrate .. //depot/projects/hammer/contrib/openpam/ltconfig#2 delete .. //depot/projects/hammer/contrib/openpam/ltmain.sh#5 integrate .. //depot/projects/hammer/contrib/openpam/misc/gendoc.pl#8 integrate .. //depot/projects/hammer/contrib/openpam/missing#3 integrate .. //depot/projects/hammer/contrib/openpam/mkinstalldirs#2 delete .. //depot/projects/hammer/contrib/openpam/modules/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/modules/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_deny/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_deny/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_deny/pam_deny.c#6 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_permit/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_permit/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_permit/pam_permit.c#5 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_unix/Makefile.am#3 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_unix/Makefile.in#4 integrate .. //depot/projects/hammer/contrib/openpam/modules/pam_unix/pam_unix.c#6 integrate .. //depot/projects/hammer/contrib/openpam/stamp-h.in#3 delete .. //depot/projects/hammer/etc/defaults/periodic.conf#22 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#73 integrate .. //depot/projects/hammer/lib/libc/amd64/Symbol.map#4 integrate .. //depot/projects/hammer/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/hammer/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/hammer/lib/libc/gdtoa/Symbol.map#6 integrate .. //depot/projects/hammer/lib/libc/i386/Symbol.map#5 integrate .. //depot/projects/hammer/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/hammer/lib/libc/ia64/Symbol.map#5 integrate .. //depot/projects/hammer/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/hammer/lib/libc/net/nsdispatch.c#11 integrate .. //depot/projects/hammer/lib/libc/sparc64/Symbol.map#5 integrate .. //depot/projects/hammer/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/hammer/lib/libc/stdio/Symbol.map#5 integrate .. //depot/projects/hammer/lib/libc/stdio/vfwprintf.c#20 integrate .. //depot/projects/hammer/lib/libc/stdlib/grantpt.c#7 integrate .. //depot/projects/hammer/lib/libc/stdlib/malloc.c#38 integrate .. //depot/projects/hammer/lib/libc/stdlib/strtod.3#8 integrate .. //depot/projects/hammer/lib/libc/stdtime/localtime.c#9 integrate .. //depot/projects/hammer/lib/libc/sys/select.2#12 integrate .. //depot/projects/hammer/lib/libfetch/Makefile#18 integrate .. //depot/projects/hammer/lib/libfetch/common.c#10 integrate .. //depot/projects/hammer/lib/libfetch/common.h#6 integrate .. //depot/projects/hammer/lib/libfetch/fetch.3#14 integrate .. //depot/projects/hammer/lib/libfetch/fetch.c#5 integrate .. //depot/projects/hammer/lib/libfetch/ftp.c#13 integrate .. //depot/projects/hammer/lib/libfetch/http.c#15 integrate .. //depot/projects/hammer/lib/libkse/sys/thr_error.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_close.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_cond.c#4 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_create.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_equal.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_execve.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_exit.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_fork.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_fsync.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_getschedparam.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_info.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_init.c#4 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_join.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_kill.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_main_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mattr_init.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mattr_kind_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_msync.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_multi_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mutex.c#5 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mutex_prioceiling.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mutex_protocol.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mutexattr_destroy.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_nanosleep.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_once.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_open.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_pause.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_poll.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_private.h#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_pselect.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_pspinlock.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_raise.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_read.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_readv.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_resume_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_rwlock.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_rwlockattr.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_select.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_self.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_setprio.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_setschedparam.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigaction.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigaltstack.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigmask.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigpending.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigprocmask.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigsuspend.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sigwait.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_single_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_sleep.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_spec.c#4 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_spinlock.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_suspend_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_switch_np.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_symbols.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_system.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_tcdrain.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_vfork.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_wait.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_wait4.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_waitpid.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_write.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_writev.c#3 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_yield.c#3 integrate .. //depot/projects/hammer/lib/libpam/libpam/Makefile#17 integrate .. //depot/projects/hammer/lib/libpam/modules/pam_krb5/pam_krb5.c#9 integrate .. //depot/projects/hammer/lib/libpam/modules/pam_ssh/pam_ssh.c#7 integrate .. //depot/projects/hammer/lib/libpam/modules/pam_unix/pam_unix.c#11 integrate .. //depot/projects/hammer/lib/libstand/bzipfs.c#4 integrate .. //depot/projects/hammer/lib/libstand/gzipfs.c#4 integrate .. //depot/projects/hammer/lib/libthr/pthread.map#16 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_exit.c#21 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#39 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_syscalls.c#14 integrate .. //depot/projects/hammer/lib/libutil/pty.c#7 integrate .. //depot/projects/hammer/lib/msun/Makefile#36 integrate .. //depot/projects/hammer/lib/msun/Symbol.map#6 integrate .. //depot/projects/hammer/lib/msun/amd64/Makefile.inc#6 integrate .. //depot/projects/hammer/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/hammer/lib/msun/i387/Makefile.inc#8 integrate .. //depot/projects/hammer/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/hammer/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/hammer/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/hammer/lib/msun/man/ilogb.3#5 integrate .. //depot/projects/hammer/lib/msun/man/math.3#16 integrate .. //depot/projects/hammer/lib/msun/man/nan.3#1 branch .. //depot/projects/hammer/lib/msun/src/math.h#32 integrate .. //depot/projects/hammer/lib/msun/src/math_private.h#8 integrate .. //depot/projects/hammer/lib/msun/src/s_logb.c#4 integrate .. //depot/projects/hammer/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/hammer/lib/msun/src/s_nan.c#1 branch .. //depot/projects/hammer/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#25 integrate .. //depot/projects/hammer/sbin/devd/devd.hh#5 integrate .. //depot/projects/hammer/sbin/growfs/growfs.c#14 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw2.c#61 integrate .. //depot/projects/hammer/sbin/newfs/mkfs.c#22 integrate .. //depot/projects/hammer/sbin/newfs/newfs.8#14 integrate .. //depot/projects/hammer/sbin/newfs/newfs.c#17 integrate .. //depot/projects/hammer/sbin/newfs/newfs.h#10 integrate .. //depot/projects/hammer/share/man/man4/ng_car.4#3 integrate .. //depot/projects/hammer/share/man/man4/syncache.4#4 integrate .. //depot/projects/hammer/share/man/man7/ports.7#21 integrate .. //depot/projects/hammer/share/man/man9/BUS_SETUP_INTR.9#10 integrate .. //depot/projects/hammer/share/man/man9/sf_buf.9#2 integrate .. //depot/projects/hammer/share/misc/Makefile#6 integrate .. //depot/projects/hammer/share/misc/bsd-family-tree#40 integrate .. //depot/projects/hammer/sys/arm/at91/at91.c#7 integrate .. //depot/projects/hammer/sys/arm/at91/kb920x_machdep.c#11 integrate .. //depot/projects/hammer/sys/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/hammer/sys/boot/arm/at91/libat91/spi_flash.c#3 integrate .. //depot/projects/hammer/sys/boot/forth/support.4th#3 integrate .. //depot/projects/hammer/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/hammer/sys/boot/powerpc/loader/Makefile#11 delete .. //depot/projects/hammer/sys/boot/powerpc/loader/conf.c#6 delete .. //depot/projects/hammer/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/hammer/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/hammer/sys/boot/powerpc/loader/metadata.c#10 delete .. //depot/projects/hammer/sys/boot/powerpc/loader/start.c#6 delete .. //depot/projects/hammer/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/hammer/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/hammer/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/hammer/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/hammer/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/hammer/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/hammer/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/hammer/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/hammer/sys/conf/NOTES#133 integrate .. //depot/projects/hammer/sys/conf/files#168 integrate .. //depot/projects/hammer/sys/conf/files.powerpc#27 integrate .. //depot/projects/hammer/sys/dev/aac/aac.c#43 integrate .. //depot/projects/hammer/sys/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_adapter.h#12 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_config.h#5 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_include.h#4 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_l2t.c#4 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_l2t.h#4 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_main.c#12 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_offload.c#7 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_offload.h#7 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_osdep.h#7 integrate .. //depot/projects/hammer/sys/dev/cxgb/cxgb_sge.c#13 integrate .. //depot/projects/hammer/sys/dev/cxgb/sys/cxgb_support.c#2 integrate .. //depot/projects/hammer/sys/dev/cxgb/sys/mvec.h#6 integrate .. //depot/projects/hammer/sys/dev/cxgb/t3cdev.h#2 integrate .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#2 integrate .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#2 integrate .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_listen.c#2 integrate .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_tom.c#2 integrate .. //depot/projects/hammer/sys/dev/mfi/mfi.c#10 integrate .. //depot/projects/hammer/sys/dev/mfi/mfi_pci.c#7 integrate .. //depot/projects/hammer/sys/dev/ofw/openpromio.c#8 integrate .. //depot/projects/hammer/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/hammer/sys/dev/re/if_re.c#55 integrate .. //depot/projects/hammer/sys/dev/uart/uart_cpu_powerpc.c#4 integrate .. //depot/projects/hammer/sys/geom/geom_dev.c#37 integrate .. //depot/projects/hammer/sys/geom/part/g_part_bsd.c#3 integrate .. //depot/projects/hammer/sys/i386/i386/machdep.c#83 integrate .. //depot/projects/hammer/sys/i386/pci/pci_pir.c#12 integrate .. //depot/projects/hammer/sys/kern/init_main.c#51 integrate .. //depot/projects/hammer/sys/kern/kern_sig.c#84 integrate .. //depot/projects/hammer/sys/kern/kern_thread.c#103 integrate .. //depot/projects/hammer/sys/kern/kern_umtx.c#29 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#89 integrate .. //depot/projects/hammer/sys/kern/subr_bus.c#56 integrate .. //depot/projects/hammer/sys/kern/uipc_sockbuf.c#7 integrate .. //depot/projects/hammer/sys/modules/cxgb/Makefile#8 integrate .. //depot/projects/hammer/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/hammer/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/hammer/sys/net/bpf.c#54 integrate .. //depot/projects/hammer/sys/net/bpf.h#19 integrate .. //depot/projects/hammer/sys/net/if_bridge.c#39 integrate .. //depot/projects/hammer/sys/net/if_lagg.c#12 integrate .. //depot/projects/hammer/sys/net/route.c#30 integrate .. //depot/projects/hammer/sys/net/route.h#17 integrate .. //depot/projects/hammer/sys/netgraph/ng_car.c#3 integrate .. //depot/projects/hammer/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/hammer/sys/netinet/if_ether.c#44 integrate .. //depot/projects/hammer/sys/netinet/if_ether.h#7 integrate .. //depot/projects/hammer/sys/netinet/in_pcb.c#52 integrate .. //depot/projects/hammer/sys/netinet/sctp_bsd_addr.c#9 integrate .. //depot/projects/hammer/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/hammer/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/hammer/sys/netinet/tcp_ofld.c#3 delete .. //depot/projects/hammer/sys/netinet/tcp_ofld.h#3 delete .. //depot/projects/hammer/sys/netinet/tcp_subr.c#80 integrate .. //depot/projects/hammer/sys/netinet/tcp_syncache.c#57 integrate .. //depot/projects/hammer/sys/netinet/tcp_usrreq.c#53 integrate .. //depot/projects/hammer/sys/netinet6/in6_pcb.c#33 integrate .. //depot/projects/hammer/sys/powerpc/aim/ofw_machdep.c#2 integrate .. //depot/projects/hammer/sys/powerpc/conf/NOTES#7 integrate .. //depot/projects/hammer/sys/powerpc/include/_bus.h#2 integrate .. //depot/projects/hammer/sys/powerpc/include/bus.h#15 integrate .. //depot/projects/hammer/sys/powerpc/powermac/grackle.c#10 integrate .. //depot/projects/hammer/sys/powerpc/powermac/macio.c#13 integrate .. //depot/projects/hammer/sys/powerpc/powermac/uninorth.c#15 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/hammer/sys/powerpc/psim/iobus.c#9 integrate .. //depot/projects/hammer/sys/security/mac/mac_posix_sem.c#6 integrate .. //depot/projects/hammer/sys/sys/ata.h#20 integrate .. //depot/projects/hammer/sys/sys/socketvar.h#40 integrate .. //depot/projects/hammer/sys/vm/vm_page.c#67 integrate .. //depot/projects/hammer/sys/vm/vm_phys.c#4 integrate .. //depot/projects/hammer/sys/vm/vm_phys.h#4 integrate .. //depot/projects/hammer/tools/regression/bin/mv/regress.sh#2 integrate .. //depot/projects/hammer/tools/regression/lib/libc/gen/test-wordexp.c#2 integrate .. //depot/projects/hammer/tools/regression/lib/msun/Makefile#8 integrate .. //depot/projects/hammer/tools/regression/lib/msun/test-nan.c#1 branch .. //depot/projects/hammer/tools/regression/lib/msun/test-nan.t#1 branch .. //depot/projects/hammer/tools/regression/lib/msun/test-next.c#3 integrate .. //depot/projects/hammer/tools/tools/ministat/Makefile#7 delete .. //depot/projects/hammer/tools/tools/ministat/README#2 delete .. //depot/projects/hammer/tools/tools/ministat/chameleon#2 delete .. //depot/projects/hammer/tools/tools/ministat/iguana#2 delete .. //depot/projects/hammer/tools/tools/ministat/ministat.c#9 delete .. //depot/projects/hammer/usr.bin/Makefile#56 integrate .. //depot/projects/hammer/usr.bin/calendar/calendars/ru_RU.KOI8-R/calendar.common#4 integrate .. //depot/projects/hammer/usr.bin/ipcrm/ipcrm.c#3 integrate .. //depot/projects/hammer/usr.bin/ipcs/ipcs.c#11 integrate .. //depot/projects/hammer/usr.bin/ministat/Makefile#1 branch .. //depot/projects/hammer/usr.bin/ministat/README#1 branch .. //depot/projects/hammer/usr.bin/ministat/chameleon#1 branch .. //depot/projects/hammer/usr.bin/ministat/iguana#1 branch .. //depot/projects/hammer/usr.bin/ministat/ministat.1#1 branch .. //depot/projects/hammer/usr.bin/ministat/ministat.c#1 branch .. //depot/projects/hammer/usr.bin/netstat/inet.c#23 integrate .. //depot/projects/hammer/usr.bin/usbhidctl/usbhid.c#5 integrate .. //depot/projects/hammer/usr.sbin/boot98cfg/boot98cfg.c#6 integrate .. //depot/projects/hammer/usr.sbin/mergemaster/mergemaster.sh#13 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/version/pkg_version.1#15 integrate .. //depot/projects/hammer/usr.sbin/ppp/auth.c#4 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/dist.c#32 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/dist.h#13 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/index.c#15 integrate .. //depot/projects/hammer/usr.sbin/wpa/wpa_supplicant/Makefile#12 integrate Differences ... ==== //depot/projects/hammer/bin/mv/mv.c#10 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.48 2007/12/16 17:47:34 dds Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); #include #include @@ -419,8 +419,7 @@ if (!(pid = vfork())) { execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], (char *)NULL); - warn("%s %s", _PATH_RM, cleanup[i]); - _exit(1); + _exit(EX_OSERR); } if (waitpid(pid, &status, 0) == -1) { warn("%s %s: waitpid", _PATH_RM, cleanup[i]); @@ -433,7 +432,14 @@ rval = 1; continue; } - if (WEXITSTATUS(status)) { + switch (WEXITSTATUS(status)) { + case 0: + break; + case EX_OSERR: + warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); + rval = 1; + continue; + default: warnx("%s %s: terminated with %d (non-zero) status", _PATH_RM, cleanup[i], WEXITSTATUS(status)); rval = 1; ==== //depot/projects/hammer/contrib/gdtoa/gdtoaimp.h#8 (text+ko) ==== @@ -26,7 +26,7 @@ ****************************************************************/ -/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.8 2007/01/03 04:59:33 das Exp $ */ +/* $FreeBSD: src/contrib/gdtoa/gdtoaimp.h,v 1.9 2007/12/17 00:19:49 das Exp $ */ /* This is a variation on dtoa.c that converts arbitary binary floating-point formats to and from decimal notation. It uses @@ -169,6 +169,9 @@ #ifndef GDTOAIMP_H_INCLUDED #define GDTOAIMP_H_INCLUDED + +#define Long int + #include "gdtoa.h" #include "gd_qnan.h" ==== //depot/projects/hammer/contrib/gdtoa/hexnan.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/hexnan.c,v 1.2 2007/12/16 21:13:54 das Exp $ */ + #include "gdtoaimp.h" static void @@ -71,8 +73,14 @@ x1 = xe = x; havedig = hd0 = i = 0; s = *sp; + + /* FreeBSD local: Accept (but ignore) the '0x' prefix. */ + if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) + s += 2; + while(c = *(CONST unsigned char*)++s) { if (!(h = hexdig[c])) { +#if 0 if (c <= ' ') { if (hd0 < havedig) { if (x < x1 && i < 8) @@ -92,7 +100,8 @@ *sp = s + 1; break; } - return STRTOG_NaN; +#endif + break; } havedig++; if (++i > 8) { @@ -103,9 +112,7 @@ } *x = (*x << 4) | h & 0xf; } - if (!havedig) - return STRTOG_NaN; - if (x < x1 && i < 8) + if (havedig && x < x1 && i < 8) L_shift(x, x1, i); if (x > x0) { x1 = x0; @@ -119,6 +126,7 @@ if ( (i = nbits & (ULbits-1)) !=0) *xe &= ((ULong)0xffffffff) >> (ULbits - i); } + if (havedig) { for(x1 = xe;; --x1) { if (*x1 != 0) break; @@ -127,5 +135,22 @@ break; } } + } + + /* + * FreeBSD local: Accept all the sequences allowed by C99 and update + * the tail pointer correctly. Don't accept any invalid sequences. + */ + if (c == '\0') /* nan() calls this, too; tolerate a missing ')' */ + return STRTOG_NaNbits; + if (c != ')') { + while(c = *(CONST unsigned char*)++s) { + if (c == ')') + break; + if (!isalnum(c) && c != '_') + return STRTOG_NaNbits; + } + } + *sp = s + 1; return STRTOG_NaNbits; } ==== //depot/projects/hammer/contrib/gdtoa/strtod.c#5 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtod.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" #ifndef NO_FENV_H #include @@ -258,7 +260,7 @@ if (*s == '(' /*)*/ && hexnan(&s, &fpinan, bits) == STRTOG_NaNbits) { - word0(rv) = 0x7ff00000 | bits[1]; + word0(rv) = 0x7ff80000 | bits[1]; word1(rv) = bits[0]; } else { ==== //depot/projects/hammer/contrib/gdtoa/strtof.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtof.c,v 1.2 2007/12/16 21:14:33 das Exp $ */ + #include "gdtoaimp.h" float @@ -52,10 +54,14 @@ break; case STRTOG_Normal: - case STRTOG_NaNbits: u.L[0] = bits[0] & 0x7fffff | exp + 0x7f + 23 << 23; break; + case STRTOG_NaNbits: + /* FreeBSD local: always return a quiet NaN */ + u.L[0] = bits[0] | 0x7fc00000; + break; + case STRTOG_Denormal: u.L[0] = bits[0]; break; ==== //depot/projects/hammer/contrib/gdtoa/strtorQ.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorQ.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -63,11 +65,18 @@ break; case STRTOG_Normal: + L[_3] = bits[0]; + L[_2] = bits[1]; + L[_1] = bits[2]; + L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + break; + case STRTOG_NaNbits: L[_3] = bits[0]; L[_2] = bits[1]; L[_1] = bits[2]; - L[_0] = (bits[3] & ~0x10000) | ((exp + 0x3fff + 112) << 16); + L[_0] = (bits[3] & ~0x10000) + | (((exp + 0x3fff + 112) << 16) | (1 << 15)); break; case STRTOG_Denormal: ==== //depot/projects/hammer/contrib/gdtoa/strtorx.c#3 (text+ko) ==== @@ -29,6 +29,8 @@ /* Please send bug reports to David M. Gay (dmg at acm dot org, * with " at " changed at "@" and " dot " changed to "."). */ +/* $FreeBSD: src/contrib/gdtoa/strtorx.c,v 1.3 2007/12/16 23:31:55 das Exp $ */ + #include "gdtoaimp.h" #undef _0 @@ -69,7 +71,6 @@ goto normal_bits; case STRTOG_Normal: - case STRTOG_NaNbits: L[_0] = exp + 0x3fff + 63; normal_bits: L[_4] = (UShort)bits[0]; @@ -78,6 +79,14 @@ L[_1] = (UShort)(bits[1] >> 16); break; + case STRTOG_NaNbits: + L[_0] = exp + 0x3fff + 63; + L[_4] = (UShort)bits[0]; + L[_3] = (UShort)(bits[0] >> 16); + L[_2] = (UShort)bits[1]; + L[_1] = (UShort)((bits[1] >> 16) | (3 << 14)); + break; + case STRTOG_Infinite: L[_0] = 0x7fff; L[_1] = L[_2] = L[_3] = L[_4] = 0; ==== //depot/projects/hammer/contrib/openpam/CREDITS#8 (text) ==== @@ -14,6 +14,7 @@ Andrew Morgan Brian Fundakowski Feldman Christos Zoulas + Daniel Richard G. Darren J. Moffat Dmitry V. Levin Emmanuel Dreyfus @@ -24,11 +25,13 @@ Hubert Feyrer Mark Murray Mike Petullo + Mikhail Teterin Mikko Työläjärvi Robert Watson Ruslan Ermilov Solar Designer Takanori Saneto + Wojciech A. Koszek Yar Tikhiy -$P4: //depot/projects/openpam/CREDITS#12 $ +$Id: CREDITS 400 2007-10-24 15:04:23Z des $ ==== //depot/projects/hammer/contrib/openpam/HISTORY#10 (text) ==== @@ -1,4 +1,27 @@ -OpenPAM Figwort 2005-06-16 +OpenPAM Hydrangea 2007-12-21 + + - ENHANCE: when compiling with GCC, mark up API functions with GCC + attributes where appropriate. + + - BUGFIX: fixed numerous warnings uncovered by GCC 4. + + - ENHANCE: building the documentation is now optional. + + - ENHANCE: corrected a number of mistakes and style issues in the + build system. + + - ENHANCE: API function arguments are now const where appropriate, to + match corresponding changes in the Solaris PAM and Linux-PAM APIs. + + - ENHANCE: corrected a number of C namespace violations. + + - ENHANCE: the module cache has been removed, allowing long-lived + applications to pick up module changes. This also allows multiple + threads to use PAM simultaneously (as long as they use separate PAM + contexts), since the module cache was the only part of OpenPAM that + was not thread-safe. +============================================================================ +OpenPAM Figwort 2005-06-16 - BUGFIX: Correct several small signedness and initialization bugs discovered during review by the NetBSD team. @@ -304,4 +327,4 @@ First (beta) release. ============================================================================ -$P4: //depot/projects/openpam/HISTORY#24 $ +$Id: HISTORY 409 2007-12-21 11:38:50Z des $ ==== //depot/projects/hammer/contrib/openpam/INSTALL#4 (text) ==== @@ -16,23 +16,29 @@ Use the "configure" shell script to configure OpenPAM for your system. Options include: + --enable-debug + Turn debugging on by default. + --with-modules-dir=DIR Indicates the directory where PAM modules will be installed. This option should not be used if you intend to install PAM modules in the system library directory. - --with-pam-su - Builds the sample PAM application. + --without-doc + Skips the documentation. --with-pam-unix Builds the sample PAM module. + --with-su + Builds the sample su(1) implementation. + For more information about configuration options, use the --help option. A typical invocation might look like this: - # ./configure --with-pam-su --with-pam-unix + # ./configure --with-pam-unix --with-su 3. COMPILATION @@ -49,4 +55,4 @@ # make install -$P4: //depot/projects/openpam/INSTALL#4 $ +$Id: INSTALL 388 2006-04-12 10:31:52Z des $ ==== //depot/projects/hammer/contrib/openpam/LICENSE#4 (text) ==== @@ -1,5 +1,6 @@ Copyright (c) 2002-2003 Networks Associates Technology, Inc. +Copyright (c) 2004-2007 Dag-Erling Smørgrav All rights reserved. This software was developed for the FreeBSD Project by ThinkSec AS and @@ -31,4 +32,4 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -$P4: //depot/projects/openpam/LICENSE#6 $ +$Id: LICENSE 408 2007-12-21 11:36:24Z des $ ==== //depot/projects/hammer/contrib/openpam/Makefile.am#4 (text) ==== @@ -1,5 +1,17 @@ -# $P4: //depot/projects/openpam/Makefile.am#3 $ +# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $ + +SUBDIRS = lib bin modules include -SUBDIRS = lib bin modules doc include +if WITH_DOC +SUBDIRS += doc +endif -EXTRA_DIST = CREDITS HISTORY INSTALL LICENSE MANIFEST README RELNOTES +EXTRA_DIST = \ + CREDITS \ + HISTORY \ + INSTALL \ + LICENSE \ + README \ + RELNOTES \ + autogen.sh \ + misc/gendoc.pl ==== //depot/projects/hammer/contrib/openpam/Makefile.in#5 (text) ==== @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -14,7 +14,7 @@ @SET_MAKE@ -# $P4: //depot/projects/openpam/Makefile.am#3 $ +# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ @@ -38,6 +38,7 @@ build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ +@WITH_DOC_TRUE@am__append_1 = doc DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(top_srcdir)/configure INSTALL compile config.guess \ @@ -49,7 +50,7 @@ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno -mkinstalldirs = $(mkdir_p) +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = SOURCES = @@ -62,7 +63,7 @@ uninstall-recursive ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) +DIST_SUBDIRS = lib bin modules include doc DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -105,6 +106,7 @@ EXEEXT = @EXEEXT@ F77 = @F77@ FFLAGS = @FFLAGS@ +GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -127,20 +129,20 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ +SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ -WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@ -WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@ +WITH_DOC_FALSE = @WITH_DOC_FALSE@ +WITH_DOC_TRUE = @WITH_DOC_TRUE@ WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@ WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@ -ac_ct_AR = @ac_ct_AR@ +WITH_SU_FALSE = @WITH_SU_FALSE@ +WITH_SU_TRUE = @WITH_SU_TRUE@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_F77 = @ac_ct_F77@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ @@ -148,6 +150,8 @@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -155,23 +159,30 @@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Dec 24 10:02:01 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D74E816A469; Mon, 24 Dec 2007 10:02:00 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6074F16A417 for ; Mon, 24 Dec 2007 10:02:00 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 49BC813C457 for ; Mon, 24 Dec 2007 10:02:00 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOA20Fg067046 for ; Mon, 24 Dec 2007 10:02:00 GMT (envelope-from zhouzhouyi@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOA20NT067043 for perforce@freebsd.org; Mon, 24 Dec 2007 10:02:00 GMT (envelope-from zhouzhouyi@FreeBSD.org) Date: Mon, 24 Dec 2007 10:02:00 GMT Message-Id: <200712241002.lBOA20NT067043@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zhouzhouyi@FreeBSD.org using -f From: Zhouyi ZHOU To: Perforce Change Reviews Cc: Subject: PERFORCE change 131509 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 10:02:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=131509 Change 131509 by zhouzhouyi@zhouzhouyi_mactest on 2007/12/24 10:01:11 Mandatory Access Control for IPv6 using lo interface, I am scared by the trouble of writing a pair of ethernet pseduo-interface supporting IPv6 because of neighbourhood discovery mechanism. Of cause, netgraph can't do this neither. Affected files ... .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/Makefile#14 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tcpconnect6.c#1 add Differences ... ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/Makefile#14 (text+ko) ==== @@ -7,7 +7,7 @@ #CFLAGS+=-DHAS_STAT64 all: macproc mactest mdconfigopenrdonly fifo_io pipe_io macping shmtest \ - semtest msgtest mmaptest tcpconnect ptrace posix_sem + semtest msgtest mmaptest tcpconnect ptrace posix_sem tcpconnect6 macproc: macproc.c gcc -Wall ${CFLAGS} macproc.c -o macproc -lutil @@ -33,6 +33,8 @@ gcc ${CFLAGS} -o mmaptest mmaptest.c macconf.c mactestparser.tab.c tcpconnect: tcpconnect.c macconf.c mactestparser.tab.c gcc ${CFLAGS} -o tcpconnect tcpconnect.c macconf.c mactestparser.tab.c -lpcap +tcpconnect6: tcpconnect6.c macconf.c mactestparser.tab.c + gcc ${CFLAGS} -o tcpconnect6 tcpconnect6.c macconf.c mactestparser.tab.c ptrace: ptrace.c macconf.c mactestparser.tab.c gcc ${CFLAGS} -o ptrace ptrace.c macconf.c mactestparser.tab.c posix_sem: posix_sem.c macconf.c mactestparser.tab.c From owner-p4-projects@FreeBSD.ORG Mon Dec 24 11:08:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26E8F16A478; Mon, 24 Dec 2007 11:08:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8ECDB16A417 for ; Mon, 24 Dec 2007 11:08:10 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7025513C4D1 for ; Mon, 24 Dec 2007 11:08:10 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOB8AMe079210 for ; Mon, 24 Dec 2007 11:08:10 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOB8Afe079207 for perforce@freebsd.org; Mon, 24 Dec 2007 11:08:10 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 11:08:10 GMT Message-Id: <200712241108.lBOB8Afe079207@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 131511 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 11:08:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=131511 Change 131511 by rwatson@rwatson_cinnamon on 2007/12/24 11:07:18 Integrate zcopybpf. Affected files ... .. //depot/projects/zcopybpf/src/sys/arm/at91/kb920x_machdep.c#7 integrate .. //depot/projects/zcopybpf/src/sys/geom/part/g_part_bsd.c#2 integrate Differences ... ==== //depot/projects/zcopybpf/src/sys/arm/at91/kb920x_machdep.c#7 (text) ==== @@ -48,7 +48,7 @@ #include "opt_at91.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.27 2007/11/05 11:36:10 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.28 2007/12/23 23:31:27 stas Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -213,7 +213,7 @@ board_init(void) { /* - * Since the USART supprots RS-485 multidrop mode, it allows the + * Since the USART supports 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 ==== //depot/projects/zcopybpf/src/sys/geom/part/g_part_bsd.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/part/g_part_bsd.c,v 1.2 2007/12/08 07:01:10 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/part/g_part_bsd.c,v 1.3 2007/12/24 01:01:59 marcel Exp $"); #include #include @@ -48,6 +48,7 @@ struct g_part_bsd_table { struct g_part_table base; u_char *label; + uint32_t offset; }; struct g_part_bsd_entry { @@ -137,35 +138,15 @@ { struct g_part_bsd_entry *entry; struct g_part_bsd_table *table; - uint32_t start, size, sectors; if (gpp->gpp_parms & G_PART_PARM_LABEL) return (EINVAL); - sectors = basetable->gpt_sectors; - entry = (struct g_part_bsd_entry *)baseentry; table = (struct g_part_bsd_table *)basetable; - start = gpp->gpp_start; - size = gpp->gpp_size; - if (size < sectors) - return (EINVAL); - if (start % sectors) { - size = size - sectors + (start % sectors); - start = start - (start % sectors) + sectors; - } - if (size % sectors) - size = size - (size % sectors); - if (size < sectors) - return (EINVAL); - - KASSERT(baseentry->gpe_start <= start, (__func__)); - KASSERT(baseentry->gpe_end >= start + size - 1, (__func__)); - baseentry->gpe_start = start; - baseentry->gpe_end = start + size - 1; - entry->part.p_size = size; - entry->part.p_offset = start + basetable->gpt_offset; + entry->part.p_size = gpp->gpp_size; + entry->part.p_offset = gpp->gpp_start + table->offset; entry->part.p_fsize = 0; entry->part.p_frag = 0; entry->part.p_cpg = 0; @@ -203,14 +184,14 @@ le32enc(ptr + 48, basetable->gpt_heads); /* d_ntracks */ le32enc(ptr + 52, ncyls); /* d_ncylinders */ le32enc(ptr + 56, secpercyl); /* d_secpercyl */ - le32enc(ptr + 60, ncyls * secpercyl); /* d_secperunit */ + le32enc(ptr + 60, msize); /* d_secperunit */ le16enc(ptr + 72, 3600); /* d_rpm */ le32enc(ptr + 132, DISKMAGIC); /* d_magic2 */ le16enc(ptr + 138, basetable->gpt_entries); /* d_npartitions */ le32enc(ptr + 140, BBSIZE); /* d_bbsize */ basetable->gpt_first = 0; - basetable->gpt_last = ncyls * secpercyl - 1; + basetable->gpt_last = msize - 1; basetable->gpt_isleaf = 1; baseentry = g_part_new_entry(basetable, RAW_PART + 1, @@ -218,7 +199,7 @@ baseentry->gpe_internal = 1; entry = (struct g_part_bsd_entry *)baseentry; entry->part.p_size = basetable->gpt_last + 1; - entry->part.p_offset = basetable->gpt_offset; + entry->part.p_offset = table->offset; return (0); } @@ -320,29 +301,31 @@ sectors = le32dec(buf + 44); if (sectors < 1 || sectors > 63) goto invalid_label; - if (sectors != basetable->gpt_sectors) { - if (basetable->gpt_fixgeom) - goto invalid_label; + if (sectors != basetable->gpt_sectors && !basetable->gpt_fixgeom) { g_part_geometry_heads(msize, sectors, &chs, &heads); - if (chs == 0) - goto invalid_label; - basetable->gpt_sectors = sectors; - basetable->gpt_heads = heads; + if (chs != 0) { + basetable->gpt_sectors = sectors; + basetable->gpt_heads = heads; + } } heads = le32dec(buf + 48); if (heads < 1 || heads > 255) goto invalid_label; - if (heads != basetable->gpt_heads) { - if (basetable->gpt_fixgeom) - goto invalid_label; + if (heads != basetable->gpt_heads && !basetable->gpt_fixgeom) basetable->gpt_heads = heads; - } - chs = le32dec(buf + 52) * heads * sectors; + if (sectors != basetable->gpt_sectors || + heads != basetable->gpt_heads) + printf("GEOM: %s: geometry does not match label.\n", pp->name); + + chs = le32dec(buf + 60); if (chs < 1 || chs > msize) goto invalid_label; + if (chs != msize) + printf("GEOM: %s: media size does not match label.\n", + pp->name); basetable->gpt_first = 0; - basetable->gpt_last = chs - 1; + basetable->gpt_last = msize - 1; basetable->gpt_isleaf = 1; basetable->gpt_entries = le16dec(buf + 138); @@ -350,6 +333,7 @@ basetable->gpt_entries > g_part_bsd_scheme.gps_maxent) goto invalid_label; + table->offset = le32dec(buf + 148 + RAW_PART * 16 + 4); for (index = basetable->gpt_entries - 1; index >= 0; index--) { p = buf + 148 + index * 16; part.p_size = le32dec(p + 0); @@ -362,11 +346,11 @@ continue; if (part.p_fstype == FS_UNUSED && index != RAW_PART) continue; - if (part.p_offset < basetable->gpt_offset) + if (part.p_offset < table->offset) continue; baseentry = g_part_new_entry(basetable, index + 1, - part.p_offset - basetable->gpt_offset, - part.p_offset - basetable->gpt_offset + part.p_size - 1); + part.p_offset - table->offset, + part.p_offset - table->offset + part.p_size - 1); entry = (struct g_part_bsd_entry *)baseentry; entry->part = part; if (part.p_fstype == FS_UNUSED) From owner-p4-projects@FreeBSD.ORG Mon Dec 24 11:12:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 623FA16A47A; Mon, 24 Dec 2007 11:12:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A921E16A468 for ; Mon, 24 Dec 2007 11:12:16 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8D0B613C46A for ; Mon, 24 Dec 2007 11:12:16 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOBCG3f080090 for ; Mon, 24 Dec 2007 11:12:16 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOBCGlR080085 for perforce@freebsd.org; Mon, 24 Dec 2007 11:12:16 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 11:12:16 GMT Message-Id: <200712241112.lBOBCGlR080085@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 131512 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 11:12:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131512 Change 131512 by rwatson@rwatson_cinnamon on 2007/12/24 11:12:11 White space sync. Affected files ... .. //depot/projects/zcopybpf/src/sys/i386/conf/GENERIC#10 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/i386/conf/GENERIC#10 (text+ko) ==== @@ -29,7 +29,6 @@ makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols options SCHED_ULE # ULE scheduler - options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols From owner-p4-projects@FreeBSD.ORG Mon Dec 24 11:13:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 47EB016A480; Mon, 24 Dec 2007 11:13:18 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0273F16A420 for ; Mon, 24 Dec 2007 11:13:17 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BA48D13C46E for ; Mon, 24 Dec 2007 11:13:17 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOBDHJK080373 for ; Mon, 24 Dec 2007 11:13:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOBDHnQ080369 for perforce@freebsd.org; Mon, 24 Dec 2007 11:13:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 11:13:17 GMT Message-Id: <200712241113.lBOBDHnQ080369@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 131513 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 11:13:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131513 Change 131513 by rwatson@rwatson_cinnamon on 2007/12/24 11:13:08 Synchronize BPF kernel configs to i386. Affected files ... .. //depot/projects/zcopybpf/src/sys/amd64/conf/BPF#2 delete .. //depot/projects/zcopybpf/src/sys/amd64/conf/BPF_ZEROCOPY#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Dec 24 11:24:30 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2AFE216A41A; Mon, 24 Dec 2007 11:24:30 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CD9BF16A418 for ; Mon, 24 Dec 2007 11:24:29 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 996A213C457 for ; Mon, 24 Dec 2007 11:24:29 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOBOT6k082517 for ; Mon, 24 Dec 2007 11:24:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOBOTXk082514 for perforce@freebsd.org; Mon, 24 Dec 2007 11:24:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 11:24:29 GMT Message-Id: <200712241124.lBOBOTXk082514@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 131514 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 11:24:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=131514 Change 131514 by rwatson@rwatson_cinnamon on 2007/12/24 11:24:26 Add some additional packaging. Affected files ... .. //depot/projects/zcopybpf/README#1 add .. //depot/projects/zcopybpf/filelist#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Dec 24 11:38:45 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 580D916A421; Mon, 24 Dec 2007 11:38:45 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D7A3716A41B for ; Mon, 24 Dec 2007 11:38:44 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BA7AD13C45B for ; Mon, 24 Dec 2007 11:38:44 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOBcieh084188 for ; Mon, 24 Dec 2007 11:38:44 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOBcifm084185 for perforce@freebsd.org; Mon, 24 Dec 2007 11:38:44 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 11:38:44 GMT Message-Id: <200712241138.lBOBcifm084185@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 131515 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 11:38:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=131515 Change 131515 by rwatson@rwatson_cinnamon on 2007/12/24 11:38:24 Update comments. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#14 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#14 (text+ko) ==== @@ -143,8 +143,11 @@ #ifdef BIOCGETBUFMODE /* - * Simple version of pcap_next_zbuf() -- do the shared memory part, but no - * blocking. + * Zero-copy BPF buffer routines to check for and acknowledge BPF data in + * shared memory buffers. + * + * pcap_next_zbuf_shm(): Check for a newly available shared memory buffer, + * and set up p->buffer and cc to reflect one if available. */ static int pcap_next_zbuf_shm(pcap_t *p, u_int *cc) @@ -178,12 +181,11 @@ } /* - * Selection routine for zero-copy BPF: identify the next completed buffer, - * if any. Try shared memory first, and if that doesn't work, make a system - * call, which may dislodge a buffer. - * - * Return (1) if the buffer is found, (0) if a retry is required, and (-1) if - * there is an unrecoverable error. + * pcap_next_zbuf() -- Similar to pcap_next_zbuf_shm(), except wait using + * select() for data or a timeout, and possibly force rotation of the buffer + * in the event we time out or are in immediate mode. Invoke the shared + * memory check before doing system calls in order to avoid doing avoidable + * work. */ static int pcap_next_zbuf(pcap_t *p, u_int *cc) From owner-p4-projects@FreeBSD.ORG Mon Dec 24 11:42:49 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BEEDB16A468; Mon, 24 Dec 2007 11:42:49 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 51B8E16A420 for ; Mon, 24 Dec 2007 11:42:49 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 344D513C46E for ; Mon, 24 Dec 2007 11:42:49 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOBgnLc085229 for ; Mon, 24 Dec 2007 11:42:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOBgn9T085226 for perforce@freebsd.org; Mon, 24 Dec 2007 11:42:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 11:42:49 GMT Message-Id: <200712241142.lBOBgn9T085226@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 131516 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 11:42:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=131516 Change 131516 by rwatson@rwatson_cinnamon on 2007/12/24 11:42:14 Note on libpcap rebuilding. Affected files ... .. //depot/projects/zcopybpf/README#2 edit Differences ... ==== //depot/projects/zcopybpf/README#2 (text+ko) ==== @@ -42,3 +42,7 @@ The necessary autoconf/automake work has not yet been done to submit these patches back to tcpdump.org. + +If doing an incremental rebuild of libpcap, make sure to "make clean" before +"make" and "make install", as the dependencies appear not always to pick up +changes in the size of pcap_t, which can cause libpcap to become confused. From owner-p4-projects@FreeBSD.ORG Mon Dec 24 13:27:41 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 18D5F16A498; Mon, 24 Dec 2007 13:27:41 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7623216A41A for ; Mon, 24 Dec 2007 13:27:40 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5492A13C469 for ; Mon, 24 Dec 2007 13:27:40 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBODRem1013456 for ; Mon, 24 Dec 2007 13:27:40 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBODReDI013453 for perforce@freebsd.org; Mon, 24 Dec 2007 13:27:40 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 13:27:40 GMT Message-Id: <200712241327.lBODReDI013453@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 131518 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 13:27:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=131518 Change 131518 by hselasky@hselasky_laptop001 on 2007/12/24 13:27:16 Style change. Get some prototypes on line. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#34 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#34 (text+ko) ==== @@ -79,29 +79,14 @@ static usbd_callback_t cdce_bulk_read_clear_stall_callback; static usbd_callback_t cdce_bulk_read_callback; -static void - cdce_start_cb(struct ifnet *ifp); - -static void - cdce_start_transfers(struct cdce_softc *sc); - -static uint32_t - cdce_m_crc32(struct mbuf *m, uint32_t src_offset, uint32_t src_len); - -static void - cdce_stop(struct cdce_softc *sc); - -static int - cdce_ioctl_cb(struct ifnet *ifp, u_long command, caddr_t data); - -static void - cdce_init_cb(void *arg); - -static int - cdce_ifmedia_upd_cb(struct ifnet *ifp); - -static void - cdce_ifmedia_sts_cb(struct ifnet *const ifp, struct ifmediareq *req); +static void cdce_start_cb(struct ifnet *ifp); +static void cdce_start_transfers(struct cdce_softc *sc); +static uint32_t cdce_m_crc32(struct mbuf *m, uint32_t src_offset, uint32_t src_len); +static void cdce_stop(struct cdce_softc *sc); +static int cdce_ioctl_cb(struct ifnet *ifp, u_long command, caddr_t data); +static void cdce_init_cb(void *arg); +static int cdce_ifmedia_upd_cb(struct ifnet *ifp); +static void cdce_ifmedia_sts_cb(struct ifnet *const ifp, struct ifmediareq *req); #define DPRINTF(...) From owner-p4-projects@FreeBSD.ORG Mon Dec 24 13:34:49 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D7CDA16A41B; Mon, 24 Dec 2007 13:34:48 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F14C16A469 for ; Mon, 24 Dec 2007 13:34:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 25F6F13C4E9 for ; Mon, 24 Dec 2007 13:34:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBODYlZr014925 for ; Mon, 24 Dec 2007 13:34:47 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBODYlJs014922 for perforce@freebsd.org; Mon, 24 Dec 2007 13:34:47 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 13:34:47 GMT Message-Id: <200712241334.lBODYlJs014922@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 131519 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 13:34:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=131519 Change 131519 by hselasky@hselasky_laptop001 on 2007/12/24 13:34:08 Small nit. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template_cdce.c#2 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template_cdce.c#2 (text+ko) ==== @@ -86,8 +86,6 @@ 'o', 0, 'n', 0, #define STRING_ETH_PRODUCT \ - 'F', 0, 'r', 0, 'e', 0, 'e', 0, \ - 'B', 0, 'S', 0, 'D', 0, ' ', 0, \ 'U', 0, 'S', 0, 'B', 0, ' ', 0, \ 'E', 0, 't', 0, 'h', 0, 'e', 0, \ 'r', 0, 'n', 0, 'e', 0, 't', 0, \ From owner-p4-projects@FreeBSD.ORG Mon Dec 24 17:36:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B1E5C16A421; Mon, 24 Dec 2007 17:36:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 42A5F16A417 for ; Mon, 24 Dec 2007 17:36:11 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1C61D13C442 for ; Mon, 24 Dec 2007 17:36:11 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOHaAa6077074 for ; Mon, 24 Dec 2007 17:36:10 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOHaArq077071 for perforce@freebsd.org; Mon, 24 Dec 2007 17:36:10 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 17:36:10 GMT Message-Id: <200712241736.lBOHaArq077071@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 131527 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 17:36:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131527 Change 131527 by rwatson@rwatson_cinnamon on 2007/12/24 17:36:09 Add BPF_ZEROCOPY to NOTES. Affected files ... .. //depot/projects/zcopybpf/src/sys/conf/NOTES#13 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/conf/NOTES#13 (text+ko) ==== @@ -614,6 +614,10 @@ options ALTQ_NOPCC # Required if the TSC is unusable options ALTQ_DEBUG +# bpf(4). Compile-time options go here, whereas enabling bpf(4) itself goes +# later with the other devices. +options BPF_ZEROCOPY # Enable zero-copy BPF + # netgraph(4). Enable the base netgraph code with the NETGRAPH option. # Individual node types can be enabled with the corresponding option # listed below; however, this is not strictly necessary as netgraph From owner-p4-projects@FreeBSD.ORG Mon Dec 24 17:38:14 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4512D16A421; Mon, 24 Dec 2007 17:38:14 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8638216A417 for ; Mon, 24 Dec 2007 17:38:13 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5FD4613C4E3 for ; Mon, 24 Dec 2007 17:38:13 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOHcD3C077704 for ; Mon, 24 Dec 2007 17:38:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOHcDt5077701 for perforce@freebsd.org; Mon, 24 Dec 2007 17:38:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 17:38:13 GMT Message-Id: <200712241738.lBOHcDt5077701@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 131528 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 17:38:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=131528 Change 131528 by rwatson@rwatson_cinnamon on 2007/12/24 17:37:20 For various bpf*.c files, use __FBSDID(). Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#32 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_buffer.c#5 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_filter.c#4 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_jitter.c#2 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#24 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#32 (text+ko) ==== @@ -32,10 +32,11 @@ * SUCH DAMAGE. * * @(#)bpf.c 8.4 (Berkeley) 1/9/95 - * - * $FreeBSD: src/sys/net/bpf.c,v 1.184 2007/12/23 14:10:33 rwatson Exp $ */ +#include +__FBSDID("$FreeBSD$"); + #include "opt_bpf.h" #include "opt_mac.h" #include "opt_netgraph.h" ==== //depot/projects/zcopybpf/src/sys/net/bpf_buffer.c#5 (text+ko) ==== @@ -59,10 +59,11 @@ * SUCH DAMAGE. * * @(#)bpf.c 8.4 (Berkeley) 1/9/95 - * - * $FreeBSD: src/sys/net/bpf.c,v 1.174 2006/11/06 13:42:02 rwatson Exp $ */ +#include +__FBSDID("$FreeBSD$"); + #include "opt_bpf.h" #include ==== //depot/projects/zcopybpf/src/sys/net/bpf_filter.c#4 (text+ko) ==== @@ -32,10 +32,11 @@ * SUCH DAMAGE. * * @(#)bpf_filter.c 8.1 (Berkeley) 6/10/93 - * - * $FreeBSD: src/sys/net/bpf_filter.c,v 1.28 2007/09/13 09:00:32 dwmalone Exp $ */ +#include +__FBSDID("$FreeBSD$"); + #include #ifdef sun ==== //depot/projects/zcopybpf/src/sys/net/bpf_jitter.c#2 (text+ko) ==== ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#24 (text+ko) ==== @@ -25,10 +25,11 @@ * 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. - * - * $FreeBSD$ */ +#include +__FBSDID("$FreeBSD$"); + #include "opt_bpf.h" #include From owner-p4-projects@FreeBSD.ORG Mon Dec 24 17:59:38 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9112816A421; Mon, 24 Dec 2007 17:59:38 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 36F7E16A418 for ; Mon, 24 Dec 2007 17:59:38 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EC3C813C469 for ; Mon, 24 Dec 2007 17:59:37 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOHxbjf082731 for ; Mon, 24 Dec 2007 17:59:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOHxbQL082728 for perforce@freebsd.org; Mon, 24 Dec 2007 17:59:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 17:59:37 GMT Message-Id: <200712241759.lBOHxbQL082728@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 131531 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 17:59:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=131531 Change 131531 by rwatson@rwatson_cinnamon on 2007/12/24 17:58:48 First cut at improving behavior of zero-copy BPF buffers on systems with weaker memory ordering with i386. In certain cases, it will also help consistency on i386. Suggested by: jhb Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#15 edit .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#25 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#15 (text+ko) ==== @@ -39,6 +39,10 @@ #include #include +#ifdef BIOCGETBUFMODE +#include +#endif + #include #ifdef _AIX @@ -160,7 +164,8 @@ */ if (p->zbuffer == p->zbuf2 || p->zbuffer == NULL) { bzh = (struct bpf_zbuf_header *)p->zbuf1; - if (bzh->bzh_kernel_gen != bzh->bzh_user_gen) { + if (bzh->bzh_user_gen != + atomic_load_acq_int(&bzh->bzh_kernel_gen)) { p->bzh = bzh; p->zbuffer = (u_char *)p->zbuf1; p->buffer = p->zbuffer + sizeof(*bzh); @@ -169,7 +174,8 @@ } } else if (p->zbuffer == p->zbuf1) { bzh = (struct bpf_zbuf_header *)p->zbuf2; - if (bzh->bzh_kernel_gen != bzh->bzh_user_gen) { + if (bzh->bzh_user_gen != + atomic_load_acq_int(&bzh->bzh_kernel_gen)) { p->bzh = bzh; p->zbuffer = (u_char *)p->zbuf2; p->buffer = p->zbuffer + sizeof(*bzh); @@ -249,9 +255,8 @@ static int pcap_ack_zbuf(pcap_t *p) { - struct bpf_zbuf bz; - p->bzh->bzh_user_gen = p->bzh->bzh_kernel_gen; + atomic_store_rel_int(&p->bzh->bzh_user_gen, p->bzh->bzh_kernel_gen); p->bzh = NULL; p->buffer = NULL; return (0); ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#25 (text+ko) ==== @@ -42,6 +42,8 @@ #include #include +#include + #include #include #include @@ -354,7 +356,7 @@ zb = (struct zbuf *)d->bd_hbuf; KASSERT(zb != NULL, ("bpf_zerocopy_bufheld: zb == NULL")); zb->zb_header->bzh_kernel_len = d->bd_hlen; - zb->zb_header->bzh_kernel_gen++; + atomic_add_rel_int(&zb->zb_header->bzh_kernel_gen, 1); } /* @@ -376,7 +378,8 @@ zb = (struct zbuf *)d->bd_hbuf; if (zb == NULL) return (0); - if (zb->zb_header->bzh_kernel_gen == zb->zb_header->bzh_user_gen) + if (zb->zb_header->bzh_kernel_gen == + atomic_load_acq_int(&zb->zb_header->bzh_user_gen)) return (1); return (0); } From owner-p4-projects@FreeBSD.ORG Mon Dec 24 18:04:44 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6813D16A41B; Mon, 24 Dec 2007 18:04:44 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 20DD716A418 for ; Mon, 24 Dec 2007 18:04:44 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EE6F713C4CC for ; Mon, 24 Dec 2007 18:04:43 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOI4h9G085254 for ; Mon, 24 Dec 2007 18:04:43 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOI4hh9085251 for perforce@freebsd.org; Mon, 24 Dec 2007 18:04:43 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 18:04:43 GMT Message-Id: <200712241804.lBOI4hh9085251@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 131533 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 18:04:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=131533 Change 131533 by rwatson@rwatson_cinnamon on 2007/12/24 18:03:52 Integrate zcopybpf. Affected files ... .. //depot/projects/zcopybpf/src/sys/dev/acpica/acpi_thermal.c#4 integrate .. //depot/projects/zcopybpf/src/sys/dev/snp/snp.c#5 integrate Differences ... ==== //depot/projects/zcopybpf/src/sys/dev/acpica/acpi_thermal.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.65 2007/10/20 23:23:13 julian Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.66 2007/12/24 16:32:14 ume Exp $"); #include "opt_acpi.h" #include @@ -133,6 +133,7 @@ static int acpi_tz_active_sysctl(SYSCTL_HANDLER_ARGS); static int acpi_tz_cooling_sysctl(SYSCTL_HANDLER_ARGS); static int acpi_tz_temp_sysctl(SYSCTL_HANDLER_ARGS); +static int acpi_tz_passive_sysctl(SYSCTL_HANDLER_ARGS); static void acpi_tz_notify_handler(ACPI_HANDLE h, UINT32 notify, void *context); static void acpi_tz_signal(struct acpi_tz_softc *sc, int flags); @@ -293,6 +294,21 @@ SYSCTL_ADD_OPAQUE(&sc->tz_sysctl_ctx, SYSCTL_CHILDREN(sc->tz_sysctl_tree), OID_AUTO, "_ACx", CTLFLAG_RD, &sc->tz_zone.ac, sizeof(sc->tz_zone.ac), "IK", ""); + SYSCTL_ADD_PROC(&sc->tz_sysctl_ctx, SYSCTL_CHILDREN(sc->tz_sysctl_tree), + OID_AUTO, "_TC1", CTLTYPE_INT | CTLFLAG_RW, + sc, offsetof(struct acpi_tz_softc, tz_zone.tc1), + acpi_tz_passive_sysctl, "I", + "thermal constant 1 for passive cooling"); + SYSCTL_ADD_PROC(&sc->tz_sysctl_ctx, SYSCTL_CHILDREN(sc->tz_sysctl_tree), + OID_AUTO, "_TC2", CTLTYPE_INT | CTLFLAG_RW, + sc, offsetof(struct acpi_tz_softc, tz_zone.tc2), + acpi_tz_passive_sysctl, "I", + "thermal constant 2 for passive cooling"); + SYSCTL_ADD_PROC(&sc->tz_sysctl_ctx, SYSCTL_CHILDREN(sc->tz_sysctl_tree), + OID_AUTO, "_TSP", CTLTYPE_INT | CTLFLAG_RW, + sc, offsetof(struct acpi_tz_softc, tz_zone.tsp), + acpi_tz_passive_sysctl, "I", + "thermal sampling period for passive cooling"); /* * Create thread to service all of the thermal zones. Register @@ -748,6 +764,30 @@ return (0); } +static int +acpi_tz_passive_sysctl(SYSCTL_HANDLER_ARGS) +{ + struct acpi_tz_softc *sc; + int val, *val_ptr; + int error; + + sc = oidp->oid_arg1; + val_ptr = (int *)((uintptr_t)sc + oidp->oid_arg2); + val = *val_ptr; + error = sysctl_handle_int(oidp, &val, 0, req); + + /* Error or no new value */ + if (error != 0 || req->newptr == NULL) + return (error); + + /* Only allow changing settings if override is set. */ + if (!acpi_tz_override) + return (EPERM); + + *val_ptr = val; + return (0); +} + static void acpi_tz_notify_handler(ACPI_HANDLE h, UINT32 notify, void *context) { ==== //depot/projects/zcopybpf/src/sys/dev/snp/snp.c#5 (text+ko) ==== @@ -15,7 +15,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/snp/snp.c,v 1.106 2007/12/03 14:02:27 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/snp/snp.c,v 1.107 2007/12/24 13:47:16 kib Exp $"); #include #include @@ -466,7 +466,8 @@ free(snp->snp_buf, M_SNP); snp->snp_flags &= ~SNOOP_OPEN; dev->si_drv1 = NULL; - destroy_dev_sched_cb(dev, snp_detach, snp); + snp_detach(snp); + destroy_dev_sched(dev); return (0); } @@ -491,7 +492,7 @@ struct thread *td) { struct snoop *snp; - struct tty *tp, *tpo; + struct tty *tp; struct cdev *tdev; struct file *fp; int s; @@ -502,8 +503,6 @@ s = *(int *)data; if (s < 0) return (snp_down(snp)); - if (snp->snp_tty != NULL) - return (EBUSY); if (fget(td, s, &fp) != 0) return (EINVAL); @@ -516,6 +515,9 @@ tdev = fp->f_vnode->v_rdev; fdrop(fp, td); + if (snp->snp_tty != NULL) + return (EBUSY); + tp = snpdevtotty(tdev); if (!tp) return (EINVAL); @@ -523,13 +525,6 @@ return (EBUSY); s = spltty(); - - if (snp->snp_target == NULL) { - tpo = snp->snp_tty; - if (tpo) - tpo->t_state &= ~TS_SNOOP; - } - tp->t_state |= TS_SNOOP; snp->snp_olddisc = tp->t_line; tp->t_line = snooplinedisc; From owner-p4-projects@FreeBSD.ORG Mon Dec 24 20:20:51 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D6EC616A421; Mon, 24 Dec 2007 20:20:50 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2B07516A417 for ; Mon, 24 Dec 2007 20:20:50 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0831D13C4CC for ; Mon, 24 Dec 2007 20:20:50 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOKKnoS007553 for ; Mon, 24 Dec 2007 20:20:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOKKnrh007550 for perforce@freebsd.org; Mon, 24 Dec 2007 20:20:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 20:20:49 GMT Message-Id: <200712242020.lBOKKnrh007550@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 131540 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 20:20:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=131540 Change 131540 by rwatson@rwatson_cinnamon on 2007/12/24 20:20:17 Rewrite buffering portions of the man page. Affected files ... .. //depot/projects/zcopybpf/src/share/man/man4/bpf.4#5 edit Differences ... ==== //depot/projects/zcopybpf/src/share/man/man4/bpf.4#5 (text+ko) ==== @@ -89,53 +89,18 @@ Each descriptor that accepts the packet receives its own copy. .Pp .Nm -devices operate in one of two buffering modes: buffered +devices operate in one of two buffering modes: .Xr read 2 , -in which packet data is copied from the kernel explicitly using the +and zero-copy. +In buffered read mode, packet data is copied explicitly from the kernel to +user memory buffers using the .Xr read 2 -system call, and zero-copy buffer mode, in which the user process provides -two memory regions that -.Nm -will write to directly as the packets are accepted. -The buffering mode may be set with the -.Dv BIOCSETBUFMODE -ioctl (see below), and will default to buffered -.Xr read 2 -mode -.Dv ( BPF_BUFMODE_BUFFER ) -by default. -Buffers return the next group of packets that have matched the filter. +system call. +In zero-copy buffering mode, the kernel writes packet data directly into +shared memory buffers provided by the user application. Note that an individual packet larger than the buffer size is necessarily truncated. .Pp -In the case of buffered -.Xr read 2 , -the user process will declare a fixed buffer size that will be used both for -sizing internal buffers and for all -.Xr read 2 -operations on the file. -This size is returned by the -.Dv BIOCGBLEN -ioctl (see below), and -can be set with -.Dv BIOCSBLEN . -.Pp -In zero-copy buffering, the user process registers two memory buffers with -.Nm -via the -.Dv BIOCSETZBUF -ioctl (see below). -The user process may monitor for completion (filling) of a buffer, at which -point the memory contents of the buffer will be stable until the buffer is -returned for further kernel use using the -.Dv BIOCACKZBUF -ioctl. -Buffers will be of a fixed (and equal) size, be -page-aligned, and the size must be an integer multiple of the page size. -The maximum zero-copy buffer size is returned by the -.Dv BIOCGETZMAX -ioctl (see below). -.Pp The packet filter will support any link level protocol that has fixed length headers. Currently, only Ethernet, @@ -156,6 +121,144 @@ Currently, only writes to Ethernets and .Tn SLIP links are supported. +.Sh BUFFER MODES +.Nm +devices deliver packet data to the application via memory buffers provided by +the application. +The buffer mode is set using the +.Dv BIOCSETBUFMODE +ioctl, and read using the +.Dv BIOCGETBUFMODE +ioctl. +.Ss Buffered read mode +By default, +.Nm +devices operate in the +.Dv BPF_BUFMODE_BUFFER +mode, in which packet data is copied explicitly from the kernel to user +memory using the +.Xr read 2 +system call. +The user process will declare a fixed buffer size that will be used both for +sizing internal buffers and for all +.Xr read 2 +operations on the file. +This size is queried using the +.Dv BIOCGBLEN +ioctl, and is set using the +.Dv BIOCSBLEN +ioctl. +.Ss Zero-copy buffer mode +.Nm +devices may also operate in the +.Dv BPF_BUFMODE_ZEROCOPY +mode, in which packet data is written directly by the kernel to memory +buffers provided by the process, avoiding both both system call and memory +copying overhead. +Buffers are of fixed (and equal) size, page-aligned, and an even multiple of +the page size. +The maximum zero-copy buffer size is returned by the +.Dv BIOCGETZMAX +ioctl. +.Pp +The user process registers two memory buffers using the +.Dv BIOCSETZBUF +ioctl, which accepts a +.Vt struct bpf_zbuf +pointer as an argument: +.Bd -literal +struct bpf_zbuf { + void *bz_bufa; + void *bz_bufb; + size_t bz_buflen; +}; +.Ed +.Pp +.Vt bz_bufa +is a pointer to the userspace address of the first buffer that will be +filled, and +.Vt bz_bufb +is a pointer to the second buffer. +.Nm +will then cycle between the two buffers. +.Pp +Buffer memory begins with a short, fixed-length header holding +synchronization and data length information for the buffer: +.Bd -literal +struct bpf_zbuf_header { + volatile u_int bzh_kernel_gen; /* Kernel generation number. */ + volatile u_int bzh_kernel_len; /* Length of buffer. */ + volatile u_int bzh_user_gen; /* User generation number. */ + /* ...padding for future use... */ +}; +.Ed +.Pp +This is followed immediately by packet data, laid out as described below. +.Pp +The kernel and the user process follow a simple acknowledgement protocol +using shared memory and ioctls to synchronize access to the two buffers. +Ownership of the buffer is signaled using the kernel and user generation +numbers in shared memory: the kernel modifies +.Vt bzh_kernel_gen +to assign ownership to userspace, and the user process sets +.Vt bzh_user_gen +to the value in +.Vt bzh_kernel_gen +to acknowledge the buffer and return it to kernel ownership. +While the kernel owns the buffer, the contents are unstable and will change +asynchronously; while the user process owns the buffer, its contents are +considered stable and will not be changed until the buffer is acknowledged. +The user process will initialize the +.Vt struct bpf_zbuf_header +to all 0's before registering the buffer, assigning initial ownership to the +kernel. +.Pp +In order to avoid caching and memory re-ordering effects, the user process +must use appropriate atomic operations and memory barriers when checking for +and acknowledging buffers: +.Bd -literal +#include + +/* + * Return ownership of a buffer to the kernel for reuse. + */ +static void +buffer_acknowledge(struct bpf_zbuf_header *bzh) +{ + + atomic_store_rel_int(&bzh->bzh_user_gen, bzh->bzh_kernel_gen); +}; + +/* + * Check whether a buffer has been assigned to userspace by the kernel. + * Return true if userspace owns the buffer, and false otherwise. + */ +static int +buffer_check(struct bpf_zbuf_header *bzh) +{ + + return (bzh->bzh_user_gen != + atomic_load_acq_int(&bzh->bzh_kernel_gen)); +} +.Ed +.Pp +The user process may force the assignment of the next buffer, if any data +is pending, to userspace using the +.Dv BIOCROTZBUF +ioctl. +This allows the user process to retrieve data in a partially filled buffer +before the buffer is completed, such as following a timeout; the process must +still check to see if ownership has been assigned using the header generation +numbers, as the buffer will not be assigned if there is no data available. +.Pp +As in the read buffering mode, +.Xr kqueue 2 , +.Xr poll 2 , +and +.Xr select 2 +may be used to sleep awaiting the availbility of a completed buffer. +They will return a readable file descriptor once at least one buffer is +assigned to user space. .Sh IOCTLS The .Xr ioctl 2 @@ -418,27 +521,9 @@ .Nm buffering mode; possible values are .Dv BPF_BUFMODE_BUFFER , -buffered -.Xr read 2 -mode, and +buffered read mode, and .Dv BPF_BUFMODE_ZBUF , zero-copy buffer mode. -.It Dv BIOCACKZBUF -.Pq Li struct bpf_zbuf -Return a completed zero-copy buffer to the kernel for reuse. -The following structure is used as an argument to these and other zero-copy -buffer ioctls: -.Bd -literal -struct bpf_zbuf { - void *bz_bufa; - void *bz_bufb; - size_t bz_buflen; -}; -.Ed -.Pp -Only the -.Vt bz_bufa -field will be used with this ioctl. .It Dv BIOCGETZBUF .It Dv BIOCSETZBUF .Pq Li struct bpf_zbuf @@ -455,6 +540,7 @@ and .Vt bz_buflen must be filled out. +If buffers have already been set for this device, the ioctl will fail. .It Dv BIOCGETZMAX .Pq Li size_t Get the largest individual zero-copy buffer size allowed. @@ -464,38 +550,23 @@ buffer size, especially when there are multiple .Nm descriptors in use on 32-bit systems. -.It Dv BIOCGETZNEXT .It Dv BIOCROTZBUF -.Pq Li struct bpf_zbuf -Get the buffer pointer and length of the next zero-copy buffer buffer ready -for userspace use, or -.Dv NULL -if there is no pending buffer. -.Pp -.Dv BIOCGETZNEXT -queries for the next completely filled buffer ready for immediate use, -returning NULL if there are only empty or partially filled buffers available. -.Pp -.Dv BIOCROTZBUF -queries for a filled buffer, but in the event there is only a partially -filled buffer, will make that buffer available for userspace to use -immediately. +Force ownership of the next buffer to be assigned to userspace, if any data +present in the buffer. +If no data is present, the buffer will remain owned by the kernel. +If userspace already owns the buffer, this operation will be a no-op. This allows consumers of zero-copy buffering to implement timeouts and retrieve partially filled buffers. -.Dv BIOCROTZBUF -will return -.Dv NULL -only if no data is present in either of the zero-copy buffers. -.Pp -Only the -.Vt bz_bufa -and -.Vt bz_buflen -fields will be used with this ioctl. +In order to handle the case where no data is present in the buffer and +therefore ownership is not assigned, the user process must check +.Vt bzh_kernel_gen +against +.Vt bzh_user_gen . .El .Sh BPF HEADER The following structure is prepended to each packet returned by -.Xr read 2 : +.Xr read 2 +or via a zero-copy buffer: .Bd -literal struct bpf_hdr { struct timeval bh_tstamp; /* time stamp */ @@ -861,6 +932,9 @@ .Sh SEE ALSO .Xr tcpdump 1 , .Xr ioctl 2 , +.Xr kqueue 2 , +.Xr poll 2 , +.Xr select 2 , .Xr byteorder 3 , .Xr ng_bpf 4 , .Xr bpf 9 @@ -893,6 +967,10 @@ Summer 1990. Much of the design is due to .An Van Jacobson . +.Pp +Support for zero-copy buffers was added by +.An Robert N. M. Watson +under contract to Seccuris Inc. .Sh BUGS The read buffer must be of a fixed size (returned by the .Dv BIOCGBLEN From owner-p4-projects@FreeBSD.ORG Mon Dec 24 21:20:54 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A7DF716A41B; Mon, 24 Dec 2007 21:20:54 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1B96816A417 for ; Mon, 24 Dec 2007 21:20:54 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 00F0313C45A for ; Mon, 24 Dec 2007 21:20:54 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOLKrUI026414 for ; Mon, 24 Dec 2007 21:20:53 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOLKraS026411 for perforce@freebsd.org; Mon, 24 Dec 2007 21:20:53 GMT (envelope-from gcooper@FreeBSD.org) Date: Mon, 24 Dec 2007 21:20:53 GMT Message-Id: <200712242120.lBOLKraS026411@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131543 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 21:20:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=131543 Change 131543 by gcooper@shiina-ibook on 2007/12/24 21:19:53 What's the purpose of thread-safety and performance on newer machines / RELENG_7 + with all of the scheduler improvements if pkg_install is still single-process and clumsy? Why not instead do stuff just once (file reads) as opposed to doing stuff multiple times? Why don't we have a search command? Why don't we have an upgrade command as opposed to doing upgrading via ports or 3rd party tools? Why aren't actions more modular and pluggable in a C framework as opposed to being single large globs of function definitions? Why memorize multiple commands when you can use one binary with respective commands? Many of these questions will be solved for the most part through the introduction of pkgman.. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Dec 24 21:48:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 41B4D16A41A; Mon, 24 Dec 2007 21:48:23 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C9AD716A418 for ; Mon, 24 Dec 2007 21:48:22 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B039E13C457 for ; Mon, 24 Dec 2007 21:48:22 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOLmMW5030802 for ; Mon, 24 Dec 2007 21:48:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOLmMgo030799 for perforce@freebsd.org; Mon, 24 Dec 2007 21:48:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 21:48:22 GMT Message-Id: <200712242148.lBOLmMgo030799@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 131544 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 21:48:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131544 Change 131544 by rwatson@rwatson_cinnamon on 2007/12/24 21:47:57 Fix ifdefs and some signs. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#16 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#16 (text+ko) ==== @@ -39,9 +39,7 @@ #include #include -#ifdef BIOCGETBUFMODE #include -#endif #include @@ -154,7 +152,7 @@ * and set up p->buffer and cc to reflect one if available. */ static int -pcap_next_zbuf_shm(pcap_t *p, u_int *cc) +pcap_next_zbuf_shm(pcap_t *p, int *cc) { struct bpf_zbuf_header *bzh; @@ -194,7 +192,7 @@ * work. */ static int -pcap_next_zbuf(pcap_t *p, u_int *cc) +pcap_next_zbuf(pcap_t *p, int *cc) { struct bpf_zbuf bz; struct timeval tv; From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:15:52 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2AE2716A420; Mon, 24 Dec 2007 22:15:52 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BE90216A418 for ; Mon, 24 Dec 2007 22:15:51 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A87BF13C448 for ; Mon, 24 Dec 2007 22:15:51 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMFpBT036362 for ; Mon, 24 Dec 2007 22:15:51 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMFpbh036359 for perforce@freebsd.org; Mon, 24 Dec 2007 22:15:51 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:15:51 GMT Message-Id: <200712242215.lBOMFpbh036359@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 131545 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:15:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=131545 Change 131545 by hselasky@hselasky_laptop001 on 2007/12/24 22:15:11 Some bugfixes. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#8 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#8 (text+ko) ==== @@ -172,6 +172,7 @@ } } } + temp->bNumEndpoints ++; return; } @@ -229,7 +230,7 @@ id = USBD_ADD_BYTES(temp->buf, old_size); id->bLength = sizeof(*id); id->bDescriptorType = UDESC_INTERFACE; - id->bInterfaceNumber = temp->bInterfaceNumber - 1; + id->bInterfaceNumber = temp->bInterfaceNumber; id->bAlternateSetting = temp->bAlternateSetting; id->bNumEndpoints = temp->bNumEndpoints; id->bInterfaceClass = tid->bInterfaceClass; From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:24:01 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C163116A41A; Mon, 24 Dec 2007 22:24:00 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5A2D216A418 for ; Mon, 24 Dec 2007 22:24:00 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 442C513C45B for ; Mon, 24 Dec 2007 22:24:00 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMO02k037802 for ; Mon, 24 Dec 2007 22:24:00 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMO0tN037799 for perforce@freebsd.org; Mon, 24 Dec 2007 22:24:00 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:24:00 GMT Message-Id: <200712242224.lBOMO0tN037799@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 131546 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:24:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=131546 Change 131546 by hselasky@hselasky_laptop001 on 2007/12/24 22:23:44 Bugfixes related to USB device side mode. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#84 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#84 (text+ko) ==== @@ -1389,12 +1389,8 @@ { uint32_t len; - /* - * USB control endpoints are not just straight forward ... - * Check for STALL: - */ - if (xfer->flags.stall_pipe && - (xfer->flags_int.usb_mode == USB_MODE_DEVICE)) { + /* Check for control endpoint stall */ + if (xfer->flags.stall_pipe) { /* no longer active */ xfer->flags_int.control_act = 0; } @@ -1464,9 +1460,23 @@ /* check if there is a length mismatch */ if (len > xfer->flags_int.control_rem) { + PRINTFN(-1, ("Length greater than remaining length!\n")); goto error; } - xfer->flags_int.control_rem -= len; + /* check if we are doing a short transfer */ + + if (xfer->flags.force_short_xfer) { + xfer->flags_int.control_rem = 0; + } else { + if ((len != xfer->max_data_length) && + (len != xfer->flags_int.control_rem) && + (xfer->nframes != 1)) { + PRINTFN(-1, ("Short control transfer without " + "force_short_xfer set!\n")); + goto error; + } + xfer->flags_int.control_rem -= len; + } /* the status part is executed when "control_act" is 0 */ @@ -1524,9 +1534,8 @@ uint32_t x; PRINTFN(0, ("xfer=%p, pipe=%p, nframes=%d, dir=%s\n", - xfer, xfer->pipe, xfer->nframes, - ((xfer->endpoint & (UE_DIR_IN | UE_DIR_OUT)) == - UE_DIR_IN) ? "in" : "out")); + xfer, xfer->pipe, xfer->nframes, USBD_GET_DATA_ISREAD(xfer) ? + "read" : "write")); #ifdef USB_DEBUG if (usbdebug > 0) { @@ -2511,10 +2520,11 @@ if (xfer->flags.stall_pipe && (xfer->flags_int.usb_mode == USB_MODE_DEVICE)) { /* - * We can not stall ISOCHRONOUS endpoints ! - */ + * Only stall BULK and INTERRUPT endpoints. + */ type = (xfer->pipe->edesc->bmAttributes & UE_XFERTYPE); - if (type != UE_ISOCHRONOUS) { + if ((type == UE_BULK) || + (type == UE_INTERRUPT)) { xfer->pipe->is_stalled = 1; (xfer->udev->bus->methods->set_stall) ( xfer->udev, NULL, xfer->pipe); @@ -3053,15 +3063,16 @@ usbd_copy_out(xfer->frbuffers + 0, 0, &req, sizeof(req)); - /* get the remainder of the control transfer */ + if (xfer->flags_int.control_rem == 0xFFFF) { + /* first time - not initialised */ + rem = UGETW(req.wLength); + off = 0; + } else { + /* not first time - initialised */ + rem = xfer->flags_int.control_rem; + off = UGETW(req.wLength) - rem; + } - rem = (xfer->flags_int.control_rem == 0xFFFF) ? 0 : - xfer->flags_int.control_rem; - - /* compute the current offset */ - - off = UGETW(req.wLength) - rem; - /* set some defaults */ max_len = 0; @@ -3271,10 +3282,10 @@ tr_handle_set_interface: if (state == ST_DATA) { goto tr_bad_context; - } else if ((state == ST_CONTEXT_START) && - usbd_handle_set_alt_setting( - xfer, wValue, wIndex)) { - goto tr_stalled; + } else if (state == ST_CONTEXT_START) { + if (usbd_handle_set_alt_setting(xfer, wIndex - 1, wValue)) { + goto tr_stalled; + } } goto tr_valid; @@ -3329,6 +3340,7 @@ xfer->flags.manual_status = 0; xfer->frlengths[1] = 0; } + xfer->flags.stall_pipe = 0; /* do not stall pipe */ return (0); /* success */ tr_stalled: From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:25:02 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CAE5516A46B; Mon, 24 Dec 2007 22:25:01 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8E18316A419 for ; Mon, 24 Dec 2007 22:25:01 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 76BB713C461 for ; Mon, 24 Dec 2007 22:25:01 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMP1Hk037851 for ; Mon, 24 Dec 2007 22:25:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMP1Qw037848 for perforce@freebsd.org; Mon, 24 Dec 2007 22:25:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 22:25:01 GMT Message-Id: <200712242225.lBOMP1Qw037848@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 131547 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:25:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=131547 Change 131547 by rwatson@rwatson_cinnamon on 2007/12/24 22:24:44 Revert @131494 -- while we don't need the free buffer immediately, we do have to rotate the held buffer to the free buffer quickly or we won't be able to push the next buffer from store to held, leading new packet data not being exposed if the buffer wasn't completely filled. I'll have to rethink how to optimize this. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#33 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#33 (text+ko) ==== @@ -1753,6 +1753,19 @@ BPFD_LOCK_ASSERT(d); /* + * Detect whether user space has released a buffer back to us, and if + * so, move it from being a hold buffer to a free buffer. This may + * not be the best place to do it (for example, we might only want to + * run this check if we need the space), but for now it's a reliable + * spot to do it. + */ + if (bpf_canfreebuf(d)) { + d->bd_fbuf = d->bd_hbuf; + d->bd_hbuf = NULL; + d->bd_hlen = 0; + } + + /* * Figure out how many bytes to move. If the packet is * greater or equal to the snapshot length, transfer that * much. Otherwise, transfer the whole packet (unless @@ -1768,18 +1781,9 @@ curlen = BPF_WORDALIGN(d->bd_slen); if (curlen + totlen > d->bd_bufsize) { /* - * This packet will overflow the storage buffer. If - * userspace has notified us via shared memory that a buffer - * can be freed, do so. - */ - if (d->bd_hbuf != NULL && bpf_canfreebuf(d)) { - d->bd_fbuf = d->bd_hbuf; - d->bd_hbuf = NULL; - d->bd_hlen = 0; - } - - /* - * Rotate buffers if we can, then wakeup any pending reads. + * This packet will overflow the storage buffer. + * Rotate the buffers if we can, then wakeup any + * pending reads. */ if (d->bd_fbuf == NULL) { /* From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:29:06 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4350616A420; Mon, 24 Dec 2007 22:29:06 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EBC9A16A417 for ; Mon, 24 Dec 2007 22:29:05 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D6DCA13C45D for ; Mon, 24 Dec 2007 22:29:05 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMT5PO037979 for ; Mon, 24 Dec 2007 22:29:05 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMT5pn037976 for perforce@freebsd.org; Mon, 24 Dec 2007 22:29:05 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:29:05 GMT Message-Id: <200712242229.lBOMT5pn037976@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 131548 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:29:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=131548 Change 131548 by hselasky@hselasky_laptop001 on 2007/12/24 22:28:58 Lock "bus->mtx" before calling "set_config" method. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_requests.c#15 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_requests.c#15 (text+ko) ==== @@ -652,16 +652,17 @@ PRINTF(("setting config %d\n", conf)); - /* If we have a "set_config" method then call it */ + /* call "set_config" method, if any */ if (udev->bus->methods->set_config) { + mtx_lock(&(udev->bus->mtx)); (udev->bus->methods->set_config) (udev, (conf == USB_UNCONFIG_NO) ? NULL : udev->cdesc); + mtx_unlock(&(udev->bus->mtx)); } - if (udev->flags.usb_mode == USB_MODE_DEVICE) { - return (0); /* success */ - } + /* do "set configuration" request */ + req.bmRequestType = UT_WRITE_DEVICE; req.bRequest = UR_SET_CONFIG; req.wValue[0] = conf; From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:31:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7AE4B16A41B; Mon, 24 Dec 2007 22:31:08 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 40C0C16A418 for ; Mon, 24 Dec 2007 22:31:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2B33E13C442 for ; Mon, 24 Dec 2007 22:31:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMV8Ei038430 for ; Mon, 24 Dec 2007 22:31:08 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMV8kQ038426 for perforce@freebsd.org; Mon, 24 Dec 2007 22:31:08 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:31:08 GMT Message-Id: <200712242231.lBOMV8kQ038426@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 131549 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:31:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131549 Change 131549 by hselasky@hselasky_laptop001 on 2007/12/24 22:30:23 We don't need a "set_address" method. This is all handled by the USB Device Side Driver. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#84 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#84 (text+ko) ==== @@ -173,7 +173,6 @@ /* USB Device and Host mode - Optional */ void (*set_config) (struct usbd_device *udev, usb_config_descriptor_t *cd); - void (*set_address) (struct usbd_device *udev, uint8_t addr); /* USB Device mode only - Mandatory */ From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:33:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45C2C16A418; Mon, 24 Dec 2007 22:33:11 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D706716A420 for ; Mon, 24 Dec 2007 22:33:10 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C235C13C448 for ; Mon, 24 Dec 2007 22:33:10 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMXAM5039229 for ; Mon, 24 Dec 2007 22:33:10 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMXAC4039224 for perforce@freebsd.org; Mon, 24 Dec 2007 22:33:10 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:33:10 GMT Message-Id: <200712242233.lBOMXAC4039224@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 131550 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:33:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=131550 Change 131550 by hselasky@hselasky_laptop001 on 2007/12/24 22:32:20 Uppercase the word "hub". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#64 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.c#53 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.c#54 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#64 (text+ko) ==== @@ -3162,7 +3162,7 @@ break; case 2: /* Product */ - ptr = "EHCI root hub"; + ptr = "EHCI root HUB"; break; default: ==== //depot/projects/usb/src/sys/dev/usb/ohci.c#53 (text+ko) ==== @@ -2289,7 +2289,7 @@ break; case 2: /* Product */ - ptr = "OHCI root hub"; + ptr = "OHCI root HUB"; break; default: ==== //depot/projects/usb/src/sys/dev/usb/uhci.c#54 (text+ko) ==== @@ -2635,7 +2635,7 @@ break; case 2: /* Product */ - ptr = "UHCI root hub"; + ptr = "UHCI root HUB"; break; default: From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:34:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F32F16A420; Mon, 24 Dec 2007 22:34:12 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C840316A418 for ; Mon, 24 Dec 2007 22:34:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B368E13C469 for ; Mon, 24 Dec 2007 22:34:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMYBYf039347 for ; Mon, 24 Dec 2007 22:34:11 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMYB7K039344 for perforce@freebsd.org; Mon, 24 Dec 2007 22:34:11 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:34:11 GMT Message-Id: <200712242234.lBOMYB7K039344@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 131551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:34:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131551 Change 131551 by hselasky@hselasky_laptop001 on 2007/12/24 22:33:41 Make sure "at91_udp" gets probed. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb.c#29 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb.c#29 (text+ko) ==== @@ -122,6 +122,7 @@ DRIVER_MODULE(usb, ohci, usb_driver, usb_devclass, 0, 0); DRIVER_MODULE(usb, uhci, usb_driver, usb_devclass, 0, 0); DRIVER_MODULE(usb, ehci, usb_driver, usb_devclass, 0, 0); +DRIVER_MODULE(usb, at91_udp, usb_driver, usb_devclass, 0, 0); MODULE_DEPEND(usb, usb, 1, 1, 1); MODULE_VERSION(usb, 1); From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:35:13 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4691716A421; Mon, 24 Dec 2007 22:35:13 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0034A16A420 for ; Mon, 24 Dec 2007 22:35:12 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DFEC213C46A for ; Mon, 24 Dec 2007 22:35:12 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMZCaU039425 for ; Mon, 24 Dec 2007 22:35:12 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMZCUN039422 for perforce@freebsd.org; Mon, 24 Dec 2007 22:35:12 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 24 Dec 2007 22:35:12 GMT Message-Id: <200712242235.lBOMZCUN039422@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 131552 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:35:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=131552 Change 131552 by hselasky@hselasky_laptop001 on 2007/12/24 22:34:41 Style change. Wrap some long lines. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#35 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#35 (text+ko) ==== @@ -259,7 +259,8 @@ id = usbd_get_interface_descriptor(iface); - if (id && (id->bInterfaceNumber == sc->sc_data_iface_no)) { + if (id && (id->bInterfaceNumber == + sc->sc_data_iface_no)) { sc->sc_data_iface_index = i; USBD_SET_IFACE_NO_PROBE(uaa->device, i); break; @@ -297,7 +298,8 @@ (uaa->device, sc->sc_data_iface_index, i); if (error) { - device_printf(dev, "no valid alternate setting found!\n"); + device_printf(dev, "no valid alternate " + "setting found!\n"); goto detach; } error = usbd_transfer_setup From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:39:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E69AD16A41B; Mon, 24 Dec 2007 22:39:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 69FB216A418 for ; Mon, 24 Dec 2007 22:39:17 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 54D0913C442 for ; Mon, 24 Dec 2007 22:39:17 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMdHVQ039532 for ; Mon, 24 Dec 2007 22:39:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMdHuP039528 for perforce@freebsd.org; Mon, 24 Dec 2007 22:39:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 22:39:17 GMT Message-Id: <200712242239.lBOMdHuP039528@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 131553 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:39:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131553 Change 131553 by rwatson@rwatson_cinnamon on 2007/12/24 22:38:59 Remove debugging output. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.c#34 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#34 (text+ko) ==== @@ -820,9 +820,6 @@ BPFD_LOCK_ASSERT(d); - // printf("bpf_ready: hlen: %d, immediate %d, state %d, slen %d\n", - // d->bd_hlen, d->bd_immediate, d->bd_state, d->bd_slen); - if (!bpf_canfreebuf(d) && d->bd_hlen != 0) return (1); if ((d->bd_immediate || d->bd_state == BPF_TIMED_OUT) && From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:52:32 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E66A916A468; Mon, 24 Dec 2007 22:52:31 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7BD4B16A41B for ; Mon, 24 Dec 2007 22:52:31 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6717413C45D for ; Mon, 24 Dec 2007 22:52:31 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMqVCX041918 for ; Mon, 24 Dec 2007 22:52:31 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMqVLO041914 for perforce@freebsd.org; Mon, 24 Dec 2007 22:52:31 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 22:52:31 GMT Message-Id: <200712242252.lBOMqVLO041914@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 131554 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:52:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=131554 Change 131554 by rwatson@rwatson_cinnamon on 2007/12/24 22:51:45 Rather than using an environmental variable to trigger use of zero-copy BPF, instead always enable it in libcap if the kernel is willing to service it. Add a new sysctl, net.bpf.zerocopy_enable to enable/disable zero-copy support. Default to enable, so that if zero-copy support is compiled into the kernel, we use it by default. Wee. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#17 edit .. //depot/projects/zcopybpf/src/sys/net/bpf.c#35 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#17 (text+ko) ==== @@ -805,8 +805,7 @@ */ #ifdef BIOCSETBUFMODE bufmode = BPF_BUFMODE_ZBUF; - if (getenv("BPF_ZEROCOPY") && - ioctl(fd, BIOCSETBUFMODE, (caddr_t)&bufmode) == 0) { + if (ioctl(fd, BIOCSETBUFMODE, (caddr_t)&bufmode) == 0) { p->zerocopy = 1; if (ioctl(fd, BIOCGETZMAX, (caddr_t)&zbufmax) < 0) { snprintf(ebuf, PCAP_ERRBUF_SIZE, "BIOCGETZMAX: %s", ==== //depot/projects/zcopybpf/src/sys/net/bpf.c#35 (text+ko) ==== @@ -134,6 +134,11 @@ static int bpf_maxinsns = BPF_MAXINSNS; SYSCTL_INT(_net_bpf, OID_AUTO, maxinsns, CTLFLAG_RW, &bpf_maxinsns, 0, "Maximum bpf program instructions"); +#ifdef BPF_ZEROCOPY +static int bpf_zerocopy_enable = 1; +SYSCTL_INT(_net_bpf, OID_AUTO, zerocopy_enable, CTLFLAG_RW, + &bpf_zerocopy_enable, 0, "Enable new zero-copy BPF buffer sessions"); +#endif SYSCTL_NODE(_net_bpf, OID_AUTO, stats, CTLFLAG_RW, bpf_stats_sysctl, "bpf statistics portal"); @@ -1305,7 +1310,9 @@ #ifdef BPF_ZEROCOPY case BPF_BUFMODE_ZBUF: - break; + if (bpf_zerocopy_enable) + break; + /* FALLSTHROUGH */ #endif default: From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:53:33 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC1F416A41A; Mon, 24 Dec 2007 22:53:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B218616A418 for ; Mon, 24 Dec 2007 22:53:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9DF0913C448 for ; Mon, 24 Dec 2007 22:53:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMrWZx042306 for ; Mon, 24 Dec 2007 22:53:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMrWNn042303 for perforce@freebsd.org; Mon, 24 Dec 2007 22:53:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 22:53:32 GMT Message-Id: <200712242253.lBOMrWNn042303@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 131555 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:53:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=131555 Change 131555 by rwatson@rwatson_cinnamon on 2007/12/24 22:53:16 Update README. Affected files ... .. //depot/projects/zcopybpf/README#3 edit Differences ... ==== //depot/projects/zcopybpf/README#3 (text+ko) ==== @@ -29,6 +29,12 @@ Build a fresh kernel and install it, with options BPF_ZEROCOPY if you want zero-copy buffer support. Build and install a fresh libpcap. +A new sysctl will be present, net.bpf.zerocopy_enable -- if it is set to 1 +(the default) then all new BPF sessions created by libpcap will use zero-copy +support. If set to 0, new sessions will use buffered reads. The +BPF_ZERO_COPY/BPF_ZEROCOPY environmental variables used in earlier prototypes +have now been removed in favour of this model. + Notes ----- From owner-p4-projects@FreeBSD.ORG Mon Dec 24 22:54:34 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5058316A41B; Mon, 24 Dec 2007 22:54:34 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0737916A417 for ; Mon, 24 Dec 2007 22:54:34 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E74F013C46B for ; Mon, 24 Dec 2007 22:54:33 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBOMsXWf042350 for ; Mon, 24 Dec 2007 22:54:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBOMsXO9042347 for perforce@freebsd.org; Mon, 24 Dec 2007 22:54:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 22:54:33 GMT Message-Id: <200712242254.lBOMsXO9042347@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 131556 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 22:54:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=131556 Change 131556 by rwatson@rwatson_cinnamon on 2007/12/24 22:53:47 Remove memory barrier/atomic XXX's, since that is now addressed. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#26 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#26 (text+ko) ==== @@ -339,11 +339,6 @@ * Notification from the BPF framework that a buffer has moved into the held * slot on a descriptor. Zero-copy BPF will update the shared page to let * the user process know. - * - * XXXRW: Do we need to use a memory barrier, atomic operation, or the like - * to make sure that the generation update is the last write to make it out - * after any packet date so that user space sees the generation increase only - * at or after the last packet data change? */ void bpf_zerocopy_bufheld(struct bpf_d *d) @@ -364,8 +359,6 @@ * held position can be moved to the free position, which can be indicated by * the user process making their generation number equal to the kernel * generation number. - * - * XXXRW: Memory ordering also an issue here? */ int bpf_zerocopy_canfreebuf(struct bpf_d *d) From owner-p4-projects@FreeBSD.ORG Mon Dec 24 23:05:47 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93D4F16A41B; Mon, 24 Dec 2007 23:05:47 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C805C16A419 for ; Mon, 24 Dec 2007 23:05:46 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B310213C448 for ; Mon, 24 Dec 2007 23:05:46 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBON5kP1045114 for ; Mon, 24 Dec 2007 23:05:46 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBON5k4g045111 for perforce@freebsd.org; Mon, 24 Dec 2007 23:05:46 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 23:05:46 GMT Message-Id: <200712242305.lBON5k4g045111@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 131558 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 23:05:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=131558 Change 131558 by rwatson@rwatson_cinnamon on 2007/12/24 23:04:49 Fix up commenting, ifdef'ing, and indentation a bit. Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#18 edit Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#18 (text+ko) ==== @@ -39,8 +39,6 @@ #include #include -#include - #include #ifdef _AIX @@ -90,6 +88,10 @@ #endif /* _AIX */ +#ifdef BIOCSETBUFMODE +#include +#endif + #include #include #include @@ -156,10 +158,6 @@ { struct bpf_zbuf_header *bzh; - /* - * If we've never used a buffer before, or if the last buffer was - * zbuf2, try zbuf1. - */ if (p->zbuffer == p->zbuf2 || p->zbuffer == NULL) { bzh = (struct bpf_zbuf_header *)p->zbuf1; if (bzh->bzh_user_gen != @@ -243,13 +241,13 @@ "BIOCROTZBUF: %s", strerror(errno)); return (-1); } - - /* - * Last chance for data. - */ return (pcap_next_zbuf_shm(p, cc)); } +/* + * Notify kernel that we are done with the buffer. We don't reset zbuffer so + * that we know which buffer to use next time around. + */ static int pcap_ack_zbuf(pcap_t *p) { @@ -795,15 +793,12 @@ goto bad; } +#ifdef BIOCSETBUFMODE /* - * XXXRW: Depending on the availability of zero-copy BPF, we take one - * of two strategies here: if it is available and usable, we go ahead - * and set it up; otherwise we play the song-and-dance to try to - * probe an acceptable read buffer size. Zero-copy BPF requires that - * buffers be mapped into memory before selecting the interface to - * attach to, so we do that here also. + * If the BPF extension to set buffer mode is present, try setting + * the mode to zero-copy. If that fails, use regular buffering. If + * it succeeds but other setup fails, return an error to the user. */ -#ifdef BIOCSETBUFMODE bufmode = BPF_BUFMODE_ZBUF; if (ioctl(fd, BIOCSETBUFMODE, (caddr_t)&bufmode) == 0) { p->zerocopy = 1; @@ -812,14 +807,9 @@ pcap_strerror(errno)); goto bad; } - - /* - * XXXRW: This logic should be revisited. - */ p->zbufsize = 32768; if (p->zbufsize > zbufmax) p->zbufsize = zbufmax; - p->zbuf1 = mmap(NULL, p->zbufsize, PROT_READ | PROT_WRITE, MAP_ANON, -1, 0); p->zbuf2 = mmap(NULL, p->zbufsize, PROT_READ | PROT_WRITE, @@ -829,18 +819,15 @@ pcap_strerror(errno)); goto bad; } - bzero(&bz, sizeof(bz)); bz.bz_bufa = p->zbuf1; bz.bz_bufb = p->zbuf2; bz.bz_buflen = p->zbufsize; - if (ioctl(fd, BIOCSETZBUF, (caddr_t)&bz) < 0) { snprintf(ebuf, PCAP_ERRBUF_SIZE, "BIOCSETZBUF: %s", pcap_strerror(errno)); goto bad; } - (void)strncpy(ifr.ifr_name, device, sizeof(ifr.ifr_name)); if (ioctl(fd, BIOCSETIF, (caddr_t)&ifr) < 0) { snprintf(ebuf, PCAP_ERRBUF_SIZE, "BIOCSETIF: %s: %s", @@ -852,41 +839,43 @@ } else { #endif - /* - * Try finding a good size for the buffer; 32768 may be too - * big, so keep cutting it in half until we find a size - * that works, or run out of sizes to try. If the default - * is larger, don't make it smaller. - * - * XXX - there should be a user-accessible hook to set the - * initial buffer size. - */ - if ((ioctl(fd, BIOCGBLEN, (caddr_t)&v) < 0) || v < 32768) - v = 32768; - for ( ; v != 0; v >>= 1) { - /* Ignore the return value - this is because the call fails - * on BPF systems that don't have kernel malloc. And if - * the call fails, it's no big deal, we just continue to - * use the standard buffer size. + /* + * Try finding a good size for the buffer; 32768 may be too + * big, so keep cutting it in half until we find a size + * that works, or run out of sizes to try. If the default + * is larger, don't make it smaller. + * + * XXX - there should be a user-accessible hook to set the + * initial buffer size. */ - (void) ioctl(fd, BIOCSBLEN, (caddr_t)&v); + if ((ioctl(fd, BIOCGBLEN, (caddr_t)&v) < 0) || v < 32768) + v = 32768; + for ( ; v != 0; v >>= 1) { + /* Ignore the return value - this is because the call + * fails on BPF systems that don't have kernel + * malloc. And if the call fails, it's no big deal, + * we just continue to use the standard buffer size. + */ + (void) ioctl(fd, BIOCSBLEN, (caddr_t)&v); + + (void)strncpy(ifr.ifr_name, device, + sizeof(ifr.ifr_name)); + if (ioctl(fd, BIOCSETIF, (caddr_t)&ifr) >= 0) + break; /* that size worked; we're done */ - (void)strncpy(ifr.ifr_name, device, sizeof(ifr.ifr_name)); - if (ioctl(fd, BIOCSETIF, (caddr_t)&ifr) >= 0) - break; /* that size worked; we're done */ + if (errno != ENOBUFS) { + snprintf(ebuf, PCAP_ERRBUF_SIZE, + "BIOCSETIF: %s: %s", + device, pcap_strerror(errno)); + goto bad; + } + } - if (errno != ENOBUFS) { - snprintf(ebuf, PCAP_ERRBUF_SIZE, "BIOCSETIF: %s: %s", - device, pcap_strerror(errno)); + if (v == 0) { + snprintf(ebuf, PCAP_ERRBUF_SIZE, + "BIOCSBLEN: %s: No buffer size worked", device); goto bad; } - } - - if (v == 0) { - snprintf(ebuf, PCAP_ERRBUF_SIZE, - "BIOCSBLEN: %s: No buffer size worked", device); - goto bad; - } #ifdef BIOCSETBUFMODE } #endif From owner-p4-projects@FreeBSD.ORG Mon Dec 24 23:45:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C84916A469; Mon, 24 Dec 2007 23:45:29 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F123C16A418 for ; Mon, 24 Dec 2007 23:45:28 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E045C13C469 for ; Mon, 24 Dec 2007 23:45:28 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBONjSH2051534 for ; Mon, 24 Dec 2007 23:45:28 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBONjSUG051531 for perforce@freebsd.org; Mon, 24 Dec 2007 23:45:28 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 23:45:28 GMT Message-Id: <200712242345.lBONjSUG051531@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 131560 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 23:45:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=131560 Change 131560 by rwatson@rwatson_cinnamon on 2007/12/24 23:44:50 bzh_kernel_len is the length of data in the buffer, not the length of the buffer. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf.h#15 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf.h#15 (text+ko) ==== @@ -197,7 +197,7 @@ */ struct bpf_zbuf_header { volatile u_int bzh_kernel_gen; /* Kernel generation number. */ - volatile u_int bzh_kernel_len; /* Length of buffer. */ + volatile u_int bzh_kernel_len; /* Length of data in the buffer. */ volatile u_int bzh_user_gen; /* User generation number. */ u_int _bzh_pad[5]; }; From owner-p4-projects@FreeBSD.ORG Mon Dec 24 23:52:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9FEF016A41B; Mon, 24 Dec 2007 23:52:37 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3536116A418 for ; Mon, 24 Dec 2007 23:52:37 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 23C0613C45A for ; Mon, 24 Dec 2007 23:52:37 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBONqa6V052542 for ; Mon, 24 Dec 2007 23:52:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBONqae7052539 for perforce@freebsd.org; Mon, 24 Dec 2007 23:52:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 24 Dec 2007 23:52:36 GMT Message-Id: <200712242352.lBONqae7052539@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 131561 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Dec 2007 23:52:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131561 Change 131561 by rwatson@rwatson_cinnamon on 2007/12/24 23:52:20 Further refine bpf.4 man page. Affected files ... .. //depot/projects/zcopybpf/src/share/man/man4/bpf.4#6 edit Differences ... ==== //depot/projects/zcopybpf/src/share/man/man4/bpf.4#6 (text+ko) ==== @@ -88,19 +88,6 @@ all file descriptors listening on that interface apply their filter. Each descriptor that accepts the packet receives its own copy. .Pp -.Nm -devices operate in one of two buffering modes: -.Xr read 2 , -and zero-copy. -In buffered read mode, packet data is copied explicitly from the kernel to -user memory buffers using the -.Xr read 2 -system call. -In zero-copy buffering mode, the kernel writes packet data directly into -shared memory buffers provided by the user application. -Note that an individual packet larger than the buffer size is necessarily -truncated. -.Pp The packet filter will support any link level protocol that has fixed length headers. Currently, only Ethernet, @@ -148,18 +135,21 @@ ioctl, and is set using the .Dv BIOCSBLEN ioctl. +Note that an individual packet larger than the buffer size is necessarily +truncated. .Ss Zero-copy buffer mode .Nm devices may also operate in the .Dv BPF_BUFMODE_ZEROCOPY -mode, in which packet data is written directly by the kernel to memory -buffers provided by the process, avoiding both both system call and memory -copying overhead. +mode, in which packet data is written directly into a pair of user memory +buffers by the kernel, avoiding both system call and copying overhead. Buffers are of fixed (and equal) size, page-aligned, and an even multiple of the page size. The maximum zero-copy buffer size is returned by the .Dv BIOCGETZMAX ioctl. +Note that an individual packet larger than the buffer size is necessarily +truncated. .Pp The user process registers two memory buffers using the .Dv BIOCSETZBUF @@ -180,42 +170,45 @@ .Vt bz_bufb is a pointer to the second buffer. .Nm -will then cycle between the two buffers. +will then cycle between the two buffers starting with +.Vt bz_bufa. .Pp -Buffer memory begins with a short, fixed-length header holding -synchronization and data length information for the buffer: +Each buffer begins with a fixed-length header to hold synchronization and +data length information for the buffer: .Bd -literal struct bpf_zbuf_header { volatile u_int bzh_kernel_gen; /* Kernel generation number. */ - volatile u_int bzh_kernel_len; /* Length of buffer. */ + volatile u_int bzh_kernel_len; /* Length of data in the buffer. */ volatile u_int bzh_user_gen; /* User generation number. */ /* ...padding for future use... */ }; .Ed .Pp -This is followed immediately by packet data, laid out as described below. +This is followed by packet data, laid out as in buffered read mode. .Pp The kernel and the user process follow a simple acknowledgement protocol using shared memory and ioctls to synchronize access to the two buffers. Ownership of the buffer is signaled using the kernel and user generation -numbers in shared memory: the kernel modifies +numbers in the shared buffer header: the kernel sets .Vt bzh_kernel_gen -to assign ownership to userspace, and the user process sets +to a different value than +.Vt bzh_user_gen +in order to assign ownership to userspace, and the user process sets .Vt bzh_user_gen to the value in .Vt bzh_kernel_gen -to acknowledge the buffer and return it to kernel ownership. -While the kernel owns the buffer, the contents are unstable and will change +to acknowledge the buffer and return it for reuse by the kernel. +While the kernel owns the buffer, the contents are unstable and may change asynchronously; while the user process owns the buffer, its contents are -considered stable and will not be changed until the buffer is acknowledged. +stable and will not be changed until after the buffer is acknowledged. The user process will initialize the .Vt struct bpf_zbuf_header to all 0's before registering the buffer, assigning initial ownership to the kernel. .Pp In order to avoid caching and memory re-ordering effects, the user process -must use appropriate atomic operations and memory barriers when checking for -and acknowledging buffers: +must use atomic operations and memory barriers when checking for and +acknowledging buffers: .Bd -literal #include @@ -227,7 +220,7 @@ { atomic_store_rel_int(&bzh->bzh_user_gen, bzh->bzh_kernel_gen); -}; +} /* * Check whether a buffer has been assigned to userspace by the kernel. @@ -247,18 +240,18 @@ .Dv BIOCROTZBUF ioctl. This allows the user process to retrieve data in a partially filled buffer -before the buffer is completed, such as following a timeout; the process must -still check to see if ownership has been assigned using the header generation -numbers, as the buffer will not be assigned if there is no data available. +before the buffer is full, such as following a timeout; the process must +check for buffer ownership using the header generation numbers, as the buffer +will not be assigned if no data was present. .Pp -As in the read buffering mode, +As in the buffered read mode, .Xr kqueue 2 , .Xr poll 2 , and .Xr select 2 may be used to sleep awaiting the availbility of a completed buffer. -They will return a readable file descriptor once at least one buffer is -assigned to user space. +They will return a readable file descriptor when ownership of the next buffer +is assigned to user space. .Sh IOCTLS The .Xr ioctl 2 @@ -529,9 +522,7 @@ .Pq Li struct bpf_zbuf Get or set the current zero-copy buffer locations; buffer locations may be set only once zero-copy buffer mode has been selected, and prior to attaching -the -.Nm -device to an interface. +to an interface. Buffers must be of identical size, page-aligned, and an integer multiple of pages in size. The three fields @@ -547,14 +538,13 @@ As two buffers are used in zero-copy buffer mode, the limit (in practice) is twice the returned size. As zero-copy buffers consume kernel address space, conservative selection of -buffer size, especially when there are multiple +buffer size is suggested, especially when there are multiple .Nm descriptors in use on 32-bit systems. .It Dv BIOCROTZBUF Force ownership of the next buffer to be assigned to userspace, if any data present in the buffer. If no data is present, the buffer will remain owned by the kernel. -If userspace already owns the buffer, this operation will be a no-op. This allows consumers of zero-copy buffering to implement timeouts and retrieve partially filled buffers. In order to handle the case where no data is present in the buffer and From owner-p4-projects@FreeBSD.ORG Tue Dec 25 00:16:04 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 64E1416A41B; Tue, 25 Dec 2007 00:16:04 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0410316A417 for ; Tue, 25 Dec 2007 00:16:04 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E863C13C44B for ; Tue, 25 Dec 2007 00:16:03 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBP0G3Tx057224 for ; Tue, 25 Dec 2007 00:16:03 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBP0G3TE057221 for perforce@freebsd.org; Tue, 25 Dec 2007 00:16:03 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 25 Dec 2007 00:16:03 GMT Message-Id: <200712250016.lBP0G3TE057221@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 131563 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 00:16:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=131563 Change 131563 by rwatson@rwatson_cinnamon on 2007/12/25 00:15:45 More cleanup and clarification. Affected files ... .. //depot/projects/zcopybpf/src/share/man/man4/bpf.4#7 edit Differences ... ==== //depot/projects/zcopybpf/src/share/man/man4/bpf.4#7 (text+ko) ==== @@ -141,8 +141,8 @@ .Nm devices may also operate in the .Dv BPF_BUFMODE_ZEROCOPY -mode, in which packet data is written directly into a pair of user memory -buffers by the kernel, avoiding both system call and copying overhead. +mode, in which packet data is written directly into user memory buffers by +the kernel, avoiding both system call and copying overhead. Buffers are of fixed (and equal) size, page-aligned, and an even multiple of the page size. The maximum zero-copy buffer size is returned by the @@ -184,27 +184,33 @@ }; .Ed .Pp -This is followed by packet data, laid out as in buffered read mode. +The header structure of each buffer, including all padding, should be zeroed +before it is passed to the ioctl. +Remaining space in the buffer will be used by the kernel to store packet +data, laid out in the same format as with buffered read mode. .Pp -The kernel and the user process follow a simple acknowledgement protocol -using shared memory and ioctls to synchronize access to the two buffers. -Ownership of the buffer is signaled using the kernel and user generation -numbers in the shared buffer header: the kernel sets +The kernel and the user process follow a simple acknowledgement protocol via +the buffer header to synchronize access to the buffer: when the header +generation numbers, .Vt bzh_kernel_gen -to a different value than -.Vt bzh_user_gen -in order to assign ownership to userspace, and the user process sets -.Vt bzh_user_gen -to the value in -.Vt bzh_kernel_gen -to acknowledge the buffer and return it for reuse by the kernel. +and +.Vt bzh_user_gen , +hold the same value, the kernel owns the buffer, and when they differ, +userspace owns the buffer. +.Pp While the kernel owns the buffer, the contents are unstable and may change asynchronously; while the user process owns the buffer, its contents are -stable and will not be changed until after the buffer is acknowledged. -The user process will initialize the -.Vt struct bpf_zbuf_header -to all 0's before registering the buffer, assigning initial ownership to the -kernel. +stable and will not be changed until the buffer has been acknowledged. +.Pp +Initializing the buffer headers to all 0's before registering the buffer has +the effect of assigning initial ownership of both buffers to the kernel. +The kernel signals that a buffer has been assigned to userspace by modifying +.Vt bzh_kernel_gen , +and userspace acknowledges the buffer and returns it to the kernel by setting +the value of +.Vt bzh_user_gen +to the value of +.Vt bzh_kernel_gen . .Pp In order to avoid caching and memory re-ordering effects, the user process must use atomic operations and memory barriers when checking for and @@ -252,6 +258,13 @@ may be used to sleep awaiting the availbility of a completed buffer. They will return a readable file descriptor when ownership of the next buffer is assigned to user space. +.Pp +In the current implementation, the kernel will assign ownership of at most +one buffer at a time to the user process. +The user processes must acknowledge the current buffer in order to be +notified that the next buffer is ready for processing. +Programs should not rely on this as an invariant, as it may change in future +versions. .Sh IOCTLS The .Xr ioctl 2 From owner-p4-projects@FreeBSD.ORG Tue Dec 25 06:27:35 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9786716A41A; Tue, 25 Dec 2007 06:27:35 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2927B16A46B for ; Tue, 25 Dec 2007 06:27:35 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9C94913C46A for ; Tue, 25 Dec 2007 06:27:34 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBP6RX3g008241 for ; Tue, 25 Dec 2007 06:27:33 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBP6RXH8008238 for perforce@freebsd.org; Tue, 25 Dec 2007 06:27:33 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 25 Dec 2007 06:27:33 GMT Message-Id: <200712250627.lBP6RXH8008238@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 131566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 06:27:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=131566 Change 131566 by kmacy@pandemonium:kmacy:xen31 on 2007/12/25 06:27:11 get pagetable read mappings to the point where they work for PAE so that VA -> MA lookups will work Affected files ... .. //depot/projects/xen31/sys/i386/include/xen/hypercall.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/xen.h#3 edit .. //depot/projects/xen31/sys/i386/include/xen/xenpmap.h#3 edit .. //depot/projects/xen31/sys/i386/include/xen/xenvar.h#3 edit .. //depot/projects/xen31/sys/i386/xen/locore.s#5 edit .. //depot/projects/xen31/sys/i386/xen/xen_machdep.c#4 edit Differences ... ==== //depot/projects/xen31/sys/i386/include/xen/hypercall.h#2 (text+ko) ==== @@ -224,7 +224,7 @@ unsigned long va, pte_t new_val, unsigned long flags) { unsigned long pte_hi = 0; -#ifdef CONFIG_X86_PAE +#ifdef PAE pte_hi = new_val.pte_high; #endif return _hypercall4(int, update_va_mapping, va, ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/xen.h#3 (text+ko) ==== ==== //depot/projects/xen31/sys/i386/include/xen/xenpmap.h#3 (text+ko) ==== @@ -39,6 +39,7 @@ void xen_pt_switch(vm_paddr_t); void xen_set_ldt(vm_paddr_t, unsigned long); void xen_tlb_flush(void); +void xen_pgdpt_pin(vm_paddr_t); void xen_pgd_pin(vm_paddr_t); void xen_pgd_unpin(vm_paddr_t); void xen_pt_pin(vm_paddr_t); @@ -156,15 +157,30 @@ #endif -#define PT_SET_MA(_va, _ma) \ -do { \ - pte_t pte_t_ma; \ - pte_t_ma.pte_low = (uint32_t)(_ma); \ +#ifdef PAE +#define PT_SET_MA(_va, _ma) \ +do { \ + pte_t pte_t_ma; \ + pte_t_ma.pte_high = (uint32_t)((_ma) >> 32); \ + pte_t_ma.pte_low = (uint32_t)((_ma) & 0xFFFFFFFF); \ + PANIC_IF(HYPERVISOR_update_va_mapping(((unsigned long)_va), \ + pte_t_ma, \ + UVMF_INVLPG| UVMF_LOCAL) < 0); \ +} while (/*CONSTCOND*/0) + +#else + +#define PT_SET_MA(_va, _ma) \ +do { \ + pte_t pte_t_ma; \ + pte_t_ma.pte_low = (uint32_t)(_ma); \ PANIC_IF(HYPERVISOR_update_va_mapping(((unsigned long)_va), \ - pte_t_ma, \ + pte_t_ma, \ UVMF_INVLPG| UVMF_LOCAL) < 0); \ } while (/*CONSTCOND*/0) +#endif + #define PT_UPDATES_FLUSH() do { \ xen_flush_queue(); \ } while (/*CONSTCOND*/0) ==== //depot/projects/xen31/sys/i386/include/xen/xenvar.h#3 (text+ko) ==== @@ -7,8 +7,9 @@ #define XENPRINTF printk #else #define XENPRINTF printf -#endif -extern vm_paddr_t *xen_phys_machine; +#endif + +extern xen_pfn_t *xen_phys_machine; #if 0 #define TRACE_ENTER XENPRINTF("(file=%s, line=%d) entered %s\n", __FILE__, __LINE__, __FUNCTION__) @@ -38,11 +39,11 @@ #endif -#define PFNTOMFN(i) (((vm_paddr_t *)xen_phys_machine)[(i)]) -#define MFNTOPFN(i) (xen_machine_phys[i]) +#define PFNTOMFN(i) (xen_phys_machine[((xen_pfn_t)i)]) +#define MFNTOPFN(i) (xen_machine_phys[((xen_pfn_t)i)]) -#define VTOP(x) ((vm_paddr_t)((uintptr_t)x) - KERNBASE) -#define PTOV(x) ((vm_paddr_t)(x) + KERNBASE) +#define VTOP(x) ((uintptr_t)(((uint8_t *)(x)) - KERNBASE)) +#define PTOV(x) ((x) + KERNBASE) #define VTOPFN(x) (VTOP(x) >> PAGE_SHIFT) #define PFNTOV(x) PTOV((vm_paddr_t)(x) << PAGE_SHIFT) ==== //depot/projects/xen31/sys/i386/xen/locore.s#5 (text+ko) ==== @@ -132,11 +132,12 @@ .space 0x2000 /* space for tmpstk - temporary stack */ tmpstk: - .globl bootinfo + .globl bootinfo bootinfo: .space BOOTINFO_SIZE /* bootinfo that we can handle */ .globl KERNend KERNend: .long 0 /* phys addr end of kernel (just after bss) */ + .globl physfree physfree: .long 0 /* phys addr of next free page */ #ifdef SMP @@ -280,10 +281,17 @@ movl proc0kstack,%eax leal (KSTACK_PAGES*PAGE_SIZE-PCB_SIZE)(%eax),%esp xorl %ebp,%ebp /* mark end of frames */ +#ifdef PAE + movl IdlePDPT,%esi +#else movl IdlePTD,%esi +#endif movl %esi,(KSTACK_PAGES*PAGE_SIZE-PCB_SIZE+PCB_CR3)(%eax) + pushl physfree call init386 + addl $4, %esp call mi_startup + /* NOTREACHED */ int $3 /* ==== //depot/projects/xen31/sys/i386/xen/xen_machdep.c#4 (text+ko) ==== @@ -76,7 +76,7 @@ start_info_t *xen_start_info; shared_info_t *HYPERVISOR_shared_info; vm_paddr_t *xen_machine_phys = ((vm_paddr_t *)VADDR(1008, 0)); -vm_paddr_t *xen_phys_machine; +xen_pfn_t *xen_phys_machine; int preemptable, init_first; extern unsigned int avail_space; @@ -270,7 +270,6 @@ PANIC_IF(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0); } - void xen_machphys_update(unsigned long mfn, unsigned long pfn) { @@ -287,12 +286,22 @@ { SET_VCPU(); - XPQ_QUEUE[XPQ_IDX].ptr = (uint64_t)ptr; + XPQ_QUEUE[XPQ_IDX].ptr = ((uint64_t)ptr) | MMU_NORMAL_PT_UPDATE; XPQ_QUEUE[XPQ_IDX].val = (uint64_t)val; xen_increment_idx(); } void +xen_pgdpt_pin(vm_paddr_t ma) +{ + struct mmuext_op op; + op.cmd = MMUEXT_PIN_L3_TABLE; + op.arg1.mfn = ma >> PAGE_SHIFT; + xen_flush_queue(); + PANIC_IF(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0); +} + +void xen_pgd_pin(vm_paddr_t ma) { struct mmuext_op op; @@ -635,7 +644,13 @@ } #endif -static vm_offset_t *pdir_shadow; + +#ifdef PAE +static vm_paddr_t *ptdir_shadow; +static vm_paddr_t *pdir_shadow[4]; +#else +static vm_paddr_t *pdir_shadow; +#endif #ifdef ADD_ISA_HOLE static void @@ -671,25 +686,37 @@ } #endif +extern unsigned long physfree; void initvalues(start_info_t *startinfo) { - int i; - unsigned int cur_space = avail_space; - vm_paddr_t pdir_shadow_ma, KPTphys, IdlePTDma; + int i, l3_pages, l2_pages, l1_pages; + vm_offset_t cur_space; physdev_op_t op; - - printk("initvalues(): wooh - availmem=%x,%x\n",avail_space, cur_space); + vm_paddr_t KPTphys, IdlePTDma; + vm_paddr_t console_page_ma, xen_store_ma; + vm_offset_t KPTphysoff, tmpva; + vm_paddr_t shinfo; +#ifdef PAE + vm_paddr_t IdlePDPTma, ptdir_shadow_ma, IdlePDPTnewma, IdlePTDnewma; + vm_paddr_t pdir_shadow_ma[4]; + pd_entry_t *IdlePDPTnew, *IdlePTDnew; +#else + vm_paddr_t pdir_shadow_ma; +#endif #ifdef WRITABLE_PAGETABLES printk("using writable pagetables\n"); HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_writable_pagetables); #endif - xen_start_info = startinfo; - xen_phys_machine = (vm_paddr_t *)startinfo->mfn_list; + xen_phys_machine = (xen_pfn_t *)startinfo->mfn_list; /* number of pages allocated after the pts + 1*/; + cur_space = xen_start_info->pt_base + + ((xen_start_info->nr_pt_frames) + 3 )*PAGE_SIZE; + printk("initvalues(): wooh - availmem=%x,%x\n", avail_space, cur_space); + printk("KERNBASE=%x,pt_base=%x, VTOPFN(base)=%x, nr_pt_frames=%x\n", KERNBASE,xen_start_info->pt_base, VTOPFN(xen_start_info->pt_base), xen_start_info->nr_pt_frames); xendebug_flags = 0; /* 0xffffffff; */ @@ -708,9 +735,22 @@ bzero((char *)cur_space, (cur_space + 0x3fffff) % 0x400000); */ +#ifdef PAE + IdlePDPT = (pd_entry_t *)startinfo->pt_base; + IdlePDPTma = xpmap_ptom(VTOP(startinfo->pt_base)); + IdlePTD = (pd_entry_t *)((uint8_t *)startinfo->pt_base + PAGE_SIZE); + IdlePTDma = xpmap_ptom(VTOP(IdlePTD)); + l3_pages = 1; +#else IdlePTD = (pd_entry_t *)startinfo->pt_base; IdlePTDma = xpmap_ptom(VTOP(startinfo->pt_base)); - KPTphys = xpmap_ptom(VTOP(startinfo->pt_base + PAGE_SIZE)); + l3_pages = 0; +#endif + l2_pages = 1; + l1_pages = 4; /* XXX not certain if this varies */ + KPTphysoff = (l2_pages + l3_pages)*PAGE_SIZE; + + KPTphys = xpmap_ptom(VTOP(startinfo->pt_base + KPTphysoff)); XENPRINTF("IdlePTD %p\n", IdlePTD); XENPRINTF("nr_pages: %ld shared_info: 0x%lx flags: 0x%lx pt_base: 0x%lx " "mod_start: 0x%lx mod_len: 0x%lx\n", @@ -722,6 +762,7 @@ xpmap_get_bootpte(0xc0100000)); #endif /* Map proc0's KSTACK */ + proc0kstack = cur_space; cur_space += (KSTACK_PAGES * PAGE_SIZE); printk("proc0kstack=%u\n", proc0kstack); @@ -738,33 +779,96 @@ vm86paddr = (vm_offset_t)cur_space; cur_space += (PAGE_SIZE * 3); +#ifdef PAE + for (i = 0; i < 4; i++) { + /* initialize page directory shadow page */ + pdir_shadow[i] = (vm_paddr_t *)cur_space; + cur_space += PAGE_SIZE; + bzero(pdir_shadow[i], PAGE_SIZE); + pdir_shadow_ma[i] = xpmap_ptom((vm_paddr_t)VTOP(pdir_shadow[i])); + } +#else /* initialize page directory shadow page */ - pdir_shadow = (vm_offset_t *)cur_space; cur_space += PAGE_SIZE; + pdir_shadow = (vm_paddr_t *)cur_space; cur_space += PAGE_SIZE; bzero(pdir_shadow, PAGE_SIZE); - pdir_shadow_ma = xpmap_ptom(VTOP(pdir_shadow)); - XENPRINTF("pdir_shadow=%x,pdir_shadow_ma=%x\n", pdir_shadow, pdir_shadow_ma); - PT_SET_MA(pdir_shadow, pdir_shadow_ma | PG_V | PG_A); + pdir_shadow_ma = xpmap_ptom((vm_paddr_t)VTOP(pdir_shadow)); +#endif + +#ifdef PAE + IdlePDPTnew = (pd_entry_t *)cur_space; cur_space += PAGE_SIZE; + bzero(IdlePDPTnew, PAGE_SIZE); + IdlePDPTnewma = xpmap_ptom(VTOP(IdlePDPTnew)); + + IdlePTDnew = (pd_entry_t *)cur_space; cur_space += PAGE_SIZE; + bzero(IdlePTDnew, PAGE_SIZE); + IdlePTDnewma = xpmap_ptom(VTOP(IdlePTDnew)); + memcpy(IdlePTDnew, IdlePTD, PAGE_SIZE/2); + + + /* initialize page directory page table shadow page */ + ptdir_shadow = (vm_paddr_t *)cur_space; cur_space += PAGE_SIZE; + bzero(ptdir_shadow, PAGE_SIZE); + ptdir_shadow_ma = xpmap_ptom(VTOP(ptdir_shadow)); + + + /* + * L3 + */ + IdlePDPTnew[2] = ptdir_shadow_ma | PG_V; + IdlePDPTnew[3] = IdlePTDnewma | PG_V; + /* + * L2 + */ + + for (i = 0; i < 4; i++) + ptdir_shadow[508 + i] = pdir_shadow_ma[i] | PG_V; + /* + * L1 - can't copy Xen's mappings + */ + for (i = 0; i < 256; i++) + pdir_shadow[3][i] = IdlePTDnew[i] & ~(PG_RW|PG_A); + + /* + * Map IdlePTD at PTD + */ + pdir_shadow[2][508] = IdlePTDnewma | PG_V; - /* setup shadow mapping first so vtomach will work */ + for (i = 0; i < 4; i++) + PT_SET_MA(pdir_shadow[i], pdir_shadow_ma[i] | PG_V); + PT_SET_MA(ptdir_shadow, ptdir_shadow_ma | PG_V); + PT_SET_MA(IdlePDPTnew, IdlePDPTnewma | PG_V); + PT_SET_MA(IdlePTDnew, IdlePTDnewma | PG_V); +#if 0 + xen_pgd_pin(ptdir_shadow_ma); + xen_pgd_pin(IdlePTDnewma); +#endif + xen_load_cr3(VTOP(IdlePDPTnew)); + IdlePTD = IdlePTDnew; + IdlePTDma = IdlePTDnewma; + IdlePDPT = IdlePDPTnew; + IdlePDPTma = IdlePDPTnewma; +#endif +#if 0 + /* setup shadow mapping first so vtomach will work */ xen_pt_pin(pdir_shadow_ma); - xen_queue_pt_update((vm_paddr_t)(IdlePTDma + PTDPTDI), +#endif +#ifndef PAE + xen_queue_pt_update(IdlePTDma + PTDPTDI*sizeof(vm_paddr_t), pdir_shadow_ma | PG_KERNEL); - xen_queue_pt_update(pdir_shadow_ma + PTDPTDI*sizeof(vm_paddr_t), - ((vm_paddr_t)IdlePTDma) | PG_V | PG_A); + xen_flush_queue(); +#endif +#if 0 xen_queue_pt_update(pdir_shadow_ma + (KPTDI + ISA_PDR_OFFSET)*sizeof(vm_paddr_t), KPTphys | PG_V | PG_A); xen_flush_queue(); +#endif + /* unmap remaining pages from initial 2/4MB chunk */ + for (tmpva = cur_space; (tmpva & PDRMASK) != 0; tmpva += PAGE_SIZE) + PT_SET_MA(tmpva, (vm_paddr_t)0); - /* unmap remaining pages from initial 4MB chunk */ - for (i = cur_space >> PAGE_SHIFT; i%400 != 0; i++) { - xen_queue_pt_update(KPTphys + i*sizeof(vm_paddr_t), 0); - } - xen_flush_queue(); - - /* allocate remainder of NKPT pages */ printk("#1\n"); - for (i = 0; i < NKPT-1; i++, cur_space += PAGE_SIZE) { + for (i = 0; i < NKPT-l1_pages; i++, cur_space += PAGE_SIZE) { /* KERNBASE left unmapped (+ 1) KERNLOAD already mapped (+1) == + 2 */ printk("#2: i=%i,offs=%u->%x\n", i, KPTDI + i + 1, xpmap_ptom(VTOP(cur_space)) | PG_KERNEL); @@ -772,31 +876,41 @@ xen_queue_pt_update((vm_paddr_t)(IdlePTDma + KPTDI + i + 1), xpmap_ptom(VTOP(cur_space)) | PG_KERNEL);*/ PT_UPDATES_FLUSH(); - xen_queue_pt_update(pdir_shadow_ma + (KPTDI + i + 1)*sizeof(vm_paddr_t), +#ifdef PAE + xen_queue_pt_update(pdir_shadow_ma[3] + (KPTDI + i + 1)*sizeof(vm_paddr_t), xpmap_ptom(VTOP(cur_space)) | PG_V | PG_A); +#else + xen_queue_pt_update(pdir_shadow_ma + (KPTDI + i + 1)*sizeof(vm_paddr_t), + xpmap_ptom(VTOP(cur_space)) | PG_V | PG_A); +#endif PT_UPDATES_FLUSH(); } printk("#3\n"); HYPERVISOR_shared_info = (shared_info_t *)cur_space; - PT_SET_MA(HYPERVISOR_shared_info, - xen_start_info->shared_info | PG_KERNEL); + + /* + * shared_info is an unsigned long so this will randomly break if + * it is allocated above 4GB - I guess people are used to that + * sort of thing with Xen ... sigh + */ + shinfo = xen_start_info->shared_info; + PT_SET_MA(HYPERVISOR_shared_info, shinfo | PG_KERNEL); cur_space += PAGE_SIZE; printk("#4\n"); xen_store = (struct ringbuf_head *)cur_space; - PT_SET_MA(xen_store, - (xen_start_info->store_mfn << PAGE_SHIFT)| PG_KERNEL); + xen_store_ma = (xen_start_info->store_mfn << PAGE_SHIFT); + PT_SET_MA(xen_store, xen_store_ma | PG_KERNEL); cur_space += PAGE_SIZE; console_page = (char *)cur_space; - PT_SET_MA(console_page, - (xen_start_info->console.domU.mfn << PAGE_SHIFT)| PG_KERNEL); + console_page_ma = (xen_start_info->console.domU.mfn << PAGE_SHIFT); + PT_SET_MA(console_page, console_page_ma | PG_KERNEL); cur_space += PAGE_SIZE; printk("#5\n"); - HYPERVISOR_shared_info->arch.pfn_to_mfn_frame_list_list = (unsigned long)xen_phys_machine; #if 0 && defined(SMP) for (i = 0; i < ncpus; i++) { @@ -816,25 +930,33 @@ PANIC_IF(HYPERVISOR_physdev_op(&op)); printk("#6\n"); - +#if 1 /* add page table for KERNBASE */ - xen_queue_pt_update((vm_paddr_t)(IdlePTDma + KPTDI), + xen_queue_pt_update(IdlePTDma + KPTDI*sizeof(vm_paddr_t), xpmap_ptom(VTOP(cur_space) | PG_KERNEL)); + xen_flush_queue(); +#ifdef PAE + xen_queue_pt_update(pdir_shadow_ma[3] + KPTDI*sizeof(vm_paddr_t), + xpmap_ptom(VTOP(cur_space) | PG_V | PG_A)); +#else xen_queue_pt_update(pdir_shadow_ma + KPTDI*sizeof(vm_paddr_t), xpmap_ptom(VTOP(cur_space) | PG_V | PG_A)); +#endif xen_flush_queue(); +#endif cur_space += PAGE_SIZE; printk("#6\n"); +#ifdef notyet if (xen_start_info->flags & SIF_INITDOMAIN) { /* Map first megabyte */ for (i = 0; i < (256 << PAGE_SHIFT); i += PAGE_SIZE) PT_SET_MA(KERNBASE + i, i | PG_KERNEL | PG_NC_PCD); xen_flush_queue(); } - +#endif printk("#7\n"); - + physfree = VTOP(cur_space); init_first = (cur_space >> PAGE_SHIFT); printk("#8, proc0kstack=%u\n", proc0kstack); From owner-p4-projects@FreeBSD.ORG Tue Dec 25 06:40:49 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 22ADA16A41A; Tue, 25 Dec 2007 06:40:49 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8F45416A417 for ; Tue, 25 Dec 2007 06:40:48 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8C38713C458 for ; Tue, 25 Dec 2007 06:40:48 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBP6emqb022569 for ; Tue, 25 Dec 2007 06:40:48 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBP6emQu022445 for perforce@freebsd.org; Tue, 25 Dec 2007 06:40:48 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 25 Dec 2007 06:40:48 GMT Message-Id: <200712250640.lBP6emQu022445@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 131567 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 06:40:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=131567 Change 131567 by kmacy@pandemonium:kmacy:xen31 on 2007/12/25 06:39:51 ifdef out temporarily pte_hi setting map IdlePTD at the right place in PTD Affected files ... .. //depot/projects/xen31/sys/i386/include/xen/hypercall.h#3 edit .. //depot/projects/xen31/sys/i386/xen/xen_machdep.c#5 edit Differences ... ==== //depot/projects/xen31/sys/i386/include/xen/hypercall.h#3 (text+ko) ==== @@ -224,7 +224,7 @@ unsigned long va, pte_t new_val, unsigned long flags) { unsigned long pte_hi = 0; -#ifdef PAE +#if defined(PAE) && 0 pte_hi = new_val.pte_high; #endif return _hypercall4(int, update_va_mapping, va, ==== //depot/projects/xen31/sys/i386/xen/xen_machdep.c#5 (text+ko) ==== @@ -831,7 +831,7 @@ /* * Map IdlePTD at PTD */ - pdir_shadow[2][508] = IdlePTDnewma | PG_V; + pdir_shadow[2][511] = IdlePTDnewma | PG_V; for (i = 0; i < 4; i++) PT_SET_MA(pdir_shadow[i], pdir_shadow_ma[i] | PG_V); From owner-p4-projects@FreeBSD.ORG Tue Dec 25 07:16:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C936916A418; Tue, 25 Dec 2007 07:16:27 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4D7B516A41A for ; Tue, 25 Dec 2007 07:16:27 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4B0EC13C45A for ; Tue, 25 Dec 2007 07:16:27 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBP7GR7B045692 for ; Tue, 25 Dec 2007 07:16:27 GMT (envelope-from zhouzhouyi@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBP7GRY2045689 for perforce@freebsd.org; Tue, 25 Dec 2007 07:16:27 GMT (envelope-from zhouzhouyi@FreeBSD.org) Date: Tue, 25 Dec 2007 07:16:27 GMT Message-Id: <200712250716.lBP7GRY2045689@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zhouzhouyi@FreeBSD.org using -f From: Zhouyi ZHOU To: Perforce Change Reviews Cc: Subject: PERFORCE change 131570 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 07:16:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131570 Change 131570 by zhouzhouyi@zhouzhouyi_mactest on 2007/12/25 07:16:26 Test case for Mandatory Access Control of Ipv6 Affected files ... .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/macconf.c#3 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tcpconnect6.c#2 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/misc.sh#24 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet6/00.t#1 add Differences ... ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/macconf.c#3 (text+ko) ==== @@ -116,21 +116,25 @@ struct mactestlog_record *record_from_log, *record_from_conf; - if ((inputfile = fopen("/var/log/mactest", "r")) < 0) { - fprintf(stderr, "/var/log/mactest do not exists!\n"); + + if ((inputfile = fopen(macconf_file, "r")) == NULL) { + fprintf(stderr, "mactest.conf do not exists!\n"); exit(1); } + mactestlog_record_chain = 0; yyparse(); fclose(inputfile); - record_from_log = mactestlog_record_chain; - if ((inputfile = fopen(macconf_file, "r")) == NULL) { - fprintf(stderr, "mactest.conf do not exists!\n"); + record_from_conf = mactestlog_record_chain; + + if ((inputfile = fopen("/var/log/mactest", "r")) < 0) { + fprintf(stderr, "/var/log/mactest do not exists!\n"); exit(1); } mactestlog_record_chain = 0; yyparse(); fclose(inputfile); - record_from_conf = mactestlog_record_chain; + record_from_log = mactestlog_record_chain; + /* See if record_from_conf is contained in record_from_log */ /* pid == -1 means matching the running pid */ ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tcpconnect6.c#2 (text+ko) ==== @@ -48,9 +48,8 @@ #include #define MAXALARM (60 * 60) -key_t semkey, semkey1; +key_t semkey; int semid = -1; -int semid1 = -1; int keepaccept=1; u_long alarmtimeout = 0; int logfd; @@ -84,23 +83,20 @@ struct sockaddr_in6 server; char *dummy; int count = 0; - struct sembuf s, s1; - int semid, semid1; + struct sembuf s; + int semid; pid_t pid; struct sigaction si_sa; if ((semid = semget(semkey, 1, 0)) == -1) err(1, "waiter: semget"); - if ((semid1 = semget(semkey1, 1, 0)) == -1) - err(1, "waiter: semget"); - listen_sock = socket(AF_INET6, SOCK_STREAM, 0); if (listen_sock == -1) errx(-1, "socket: %s", strerror(errno)); + bzero (&server, sizeof(server)); -// bzero (&sin6, sizeof (sin6)); server.sin6_family = AF_INET6; bzero(server.sin6_addr.s6_addr,16); server.sin6_port = htons(port); @@ -111,27 +107,7 @@ if (listen(listen_sock, -1) == -1) errx(-1, "listen: %s", strerror(errno)); - if ((pid = fork()) == 0) { - /*Release the semaphore to let server go*/ - for (;;) { - int i; - i = semctl(semid, 0, GETNCNT); - if (i == -1) - err(1, "semctl GETNCNT"); - if (i == 1) - break; - } - s.sem_num = 0; - s.sem_op = 1; - s.sem_flg = SEM_UNDO; - if (semop(semid, &s, 1) == -1) - err(1, "waiter: semop +1"); - - exit(0); - } - - sigemptyset(&si_sa.sa_mask); si_sa.sa_flags = 0; @@ -144,26 +120,20 @@ } - s.sem_num = 0; - s.sem_op = -1; - s.sem_flg = SEM_UNDO; - - if (semop(semid, &s, 1) == -1) - err(1, "sever: semop -1"); /*Release the semaphore to let client go */ for (;;) { int i; - i = semctl(semid1, 0, GETNCNT); + i = semctl(semid, 0, GETNCNT); if (i == -1) err(1, "semctl GETNCNT"); if (i == 1) break; } - s1.sem_num = 0; - s1.sem_op = 1; - s1.sem_flg = SEM_UNDO; - if (semop(semid1, &s1, 1) == -1) + s.sem_num = 0; + s.sem_op = 1; + s.sem_flg = SEM_UNDO; + if (semop(semid, &s, 1) == -1) err(1, "waiter: semop +1"); while (keepaccept) { @@ -174,10 +144,7 @@ break; } - if (waitpid(pid, 0, 0) == -1){ - fprintf(stderr, "no bpf intercept"); - exit(1); - } + exit(0); } @@ -190,20 +157,10 @@ struct sockaddr_in6 server; struct hostent *hp; char buf[1024]; - struct sigaction si_sa; - count = 3; - sigemptyset(&si_sa.sa_mask); - si_sa.sa_flags = 0; + count = 1; - alarm((int)alarmtimeout); - - if (alarmtimeout > 0) { - si_sa.sa_handler = stopclient; - if (sigaction(SIGALRM, &si_sa, 0) == -1) - err(EX_OSERR, "sigaction SIGALRM"); - } for (i = 0; i < count; i++) { @@ -284,33 +241,17 @@ semkey = ftok(argv[0], 4160); - semkey1 = ftok(strcat(strdup(argv[0]),"hello4"), 4160); + if ((semid = semget(semkey, 1, IPC_CREAT | 0640)) == -1) err(1, "semget"); - if ((semid1 = semget(semkey1, 1, IPC_CREAT | 0640)) == -1) - err(1, "semget"); - - sun.val = 1; if (semctl(semid, 0, SETVAL, sun) == -1) err(1, "semctl SETVAL to 1"); - sun1.val = 1; - if (semctl(semid1, 0, SETVAL, sun1) == -1) - err(1, "semctl SETVAL to 1"); - - - s1.sem_num = 0; - s1.sem_op = -1; - s1.sem_flg = SEM_UNDO; - - if (semop(semid1, &s1, 1) == -1) - err(1, "waiter: semop -1"); - s.sem_num = 0; s.sem_op = -1; s.sem_flg = SEM_UNDO; @@ -328,25 +269,26 @@ tcpconnect_server(port); - s1.sem_num = 0; - s1.sem_op = -1; - s1.sem_flg = SEM_UNDO; + s.sem_num = 0; + s.sem_op = -1; + s.sem_flg = SEM_UNDO; - if (semop(semid1, &s1, 1) == -1) + if (semop(semid, &s, 1) == -1) err(1, "waiter: semop -1"); - - if(setjmp(place) == 0) - tcpconnect_client(port); + + usleep(500); + + tcpconnect_client(port); if (waitpid(pid, 0, 0) == -1) fprintf(stderr, "server error\n"); + close(logfd); if (semctl(semid, 0, IPC_RMID) == -1) warn("semctl IPC_RMID"); - if (semctl(semid1, 0, IPC_RMID) == -1) - warn("semctl IPC_RMID"); + machookmatch(macconf_file, getpid()); exit(0); } ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/misc.sh#24 (text+ko) ==== @@ -26,6 +26,7 @@ msgtest="${maindir}/msgtest" mmaptest="${maindir}/mmaptest" tcpconnect="${maindir}/tcpconnect" +tcpconnect6="${maindir}/tcpconnect6" ptrace="${maindir}/ptrace" posix_sem="${maindir}/posix_sem" From owner-p4-projects@FreeBSD.ORG Tue Dec 25 09:58:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B576616A473; Tue, 25 Dec 2007 09:58:19 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6036916A418 for ; Tue, 25 Dec 2007 09:58:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 627BA13C467 for ; Tue, 25 Dec 2007 09:58:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBP9wJLk023379 for ; Tue, 25 Dec 2007 09:58:19 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBP9wJMw023375 for perforce@freebsd.org; Tue, 25 Dec 2007 09:58:19 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 09:58:19 GMT Message-Id: <200712250958.lBP9wJMw023375@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 131572 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 09:58:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=131572 Change 131572 by hselasky@hselasky_laptop001 on 2007/12/25 09:57:46 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#85 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#85 (text+ko) ==== @@ -536,18 +536,19 @@ uint8_t curr_dma_set:1; /* used by USB HC/DC driver */ }; +struct usbd_config_sub { + usbd_callback_t *callback; /* USB transfer callback */ + uint16_t timeout; /* transfer timeout in milliseconds */ + struct usbd_xfer_flags flags; /* transfer flags */ +}; + struct usbd_config { - usbd_callback_t *cb[USB_MODE_MAX]; /* USB transfer callbacks */ + struct usbd_config_sub mh; /* parameters for USB_MODE_HOST */ + struct usbd_config_sub md; /* parameters for USB_MODE_DEVICE */ uint32_t bufsize; /* total pipe buffer size in bytes */ uint32_t frames; /* maximum number of USB frames */ uint16_t interval; /* interval in milliseconds */ - #define USBD_DEFAULT_INTERVAL 0 - - uint16_t timeout; /* transfer timeout in milliseconds */ - - struct usbd_xfer_flags flags; /* transfer flags */ - uint8_t type; /* pipe type */ uint8_t endpoint; /* pipe number */ uint8_t direction; /* pipe direction */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 09:58:20 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 709C616A52D; Tue, 25 Dec 2007 09:58:20 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9D9EA16A46C for ; Tue, 25 Dec 2007 09:58:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 86FC713C46A for ; Tue, 25 Dec 2007 09:58:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBP9wJqM023393 for ; Tue, 25 Dec 2007 09:58:19 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBP9wJJg023390 for perforce@freebsd.org; Tue, 25 Dec 2007 09:58:19 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 09:58:19 GMT Message-Id: <200712250958.lBP9wJJg023390@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 131573 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 09:58:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=131573 Change 131573 by hselasky@hselasky_laptop001 on 2007/12/25 09:58:13 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#9 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#9 (text+ko) ==== @@ -172,7 +172,7 @@ } } } - temp->bNumEndpoints ++; + temp->bNumEndpoints++; return; } From owner-p4-projects@FreeBSD.ORG Tue Dec 25 10:28:53 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DEE1916A421; Tue, 25 Dec 2007 10:28:52 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8C7A016A417 for ; Tue, 25 Dec 2007 10:28:52 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8D0E313C442 for ; Tue, 25 Dec 2007 10:28:52 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPASqFo002003 for ; Tue, 25 Dec 2007 10:28:52 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPASpor002000 for perforce@freebsd.org; Tue, 25 Dec 2007 10:28:51 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 10:28:51 GMT Message-Id: <200712251028.lBPASpor002000@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 131575 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 10:28:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=131575 Change 131575 by hselasky@hselasky_laptop001 on 2007/12/25 10:28:24 Make the parameters "timeout" and "flags" in "struct usbd_config" mode specific. This is for sake of convenience when we are setting up symmetric USB drivers. The structural changes needed were done by change 131572, which was mislabeled a style change. This commit only contains changes done by the following script. Note that there is an invisible tab and space character inside the brackets in the "sed" lines. #!/bin/sh chmod +x ./src/sys/dev/usb/usb_style.sh for F in `cat convert_all_files.txt | grep -E ".*[.][cChH]" | grep -v "mixer.[ch]"` do [ -f src/$F ] && ( cat src/$F | sed -E "s/^[ ]*(\.|cfg...\.|usbd_config...\.)cb.USB_MODE_HOST./&.mh.callback/g" | sed -E "s/^[ ]*(\.|cfg...\.|usbd_config...\.)cb.USB_MODE_DEVICE./&.md.callback/g" | sed -E "s/^[ ]*(\.|cfg...\.|usbd_config...\.)timeout/&.mh.timeout/g" | sed -E "s/^[ ]*(\.|cfg...\.|usbd_config...\.)flags/&.mh.flags/g" | sed -E "s/\.cb.USB_MODE_HOST..mh.callback/.mh.callback/g" | sed -E "s/\.cb.USB_MODE_DEVICE..md.callback/.md.callback/g" | sed -E "s/\.timeout.mh.timeout/.mh.timeout/g" | sed -E "s/\.flags.mh.flags/.mh.flags/g" > temp.c ) && ( ./src/sys/dev/usb/usb_style.sh `pwd`/temp.c) && ( (diff -du src/$F temp.c > /dev/null) || (cat temp.c > src/$F) ) done Affected files ... .. //depot/projects/usb/src/sys/dev/ata/ata-usb.c#31 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#30 edit .. //depot/projects/usb/src/sys/dev/usb/if_aue.c#42 edit .. //depot/projects/usb/src/sys/dev/usb/if_axe.c#44 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#36 edit .. //depot/projects/usb/src/sys/dev/usb/if_cue.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/if_kue.c#40 edit .. //depot/projects/usb/src/sys/dev/usb/if_rue.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/if_rum.c#25 edit .. //depot/projects/usb/src/sys/dev/usb/if_udav.c#40 edit .. //depot/projects/usb/src/sys/dev/usb/if_ural.c#49 edit .. //depot/projects/usb/src/sys/dev/usb/if_zyd.c#29 edit .. //depot/projects/usb/src/sys/dev/usb/uark.c#18 edit .. //depot/projects/usb/src/sys/dev/usb/ubsa.c#35 edit .. //depot/projects/usb/src/sys/dev/usb/ubser.c#27 edit .. //depot/projects/usb/src/sys/dev/usb/ucycom.c#30 edit .. //depot/projects/usb/src/sys/dev/usb/udbp.c#23 edit .. //depot/projects/usb/src/sys/dev/usb/ufoma.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/uftdi.c#32 edit .. //depot/projects/usb/src/sys/dev/usb/ugen.c#35 edit .. //depot/projects/usb/src/sys/dev/usb/ugensa.c#19 edit .. //depot/projects/usb/src/sys/dev/usb/uhid.c#29 edit .. //depot/projects/usb/src/sys/dev/usb/uhub.c#30 edit .. //depot/projects/usb/src/sys/dev/usb/uipaq.c#20 edit .. //depot/projects/usb/src/sys/dev/usb/ukbd.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/ulpt.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/umass.c#41 edit .. //depot/projects/usb/src/sys/dev/usb/umct.c#29 edit .. //depot/projects/usb/src/sys/dev/usb/umodem.c#39 edit .. //depot/projects/usb/src/sys/dev/usb/umoscom.c#15 edit .. //depot/projects/usb/src/sys/dev/usb/ums.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/uplcom.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/urio.c#23 edit .. //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.c#20 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#85 edit .. //depot/projects/usb/src/sys/dev/usb/uscanner.c#22 edit .. //depot/projects/usb/src/sys/dev/usb/uvisor.c#32 edit .. //depot/projects/usb/src/sys/dev/usb/uvscom.c#35 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#24 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#19 edit Differences ... ==== //depot/projects/usb/src/sys/dev/ata/ata-usb.c#31 (text) ==== @@ -172,9 +172,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_reset1_callback, - .timeout = 5000, /* 5 seconds */ + .mh.flags = {}, + .mh.callback = &atausb_t_bbb_reset1_callback, + .mh.timeout = 5000, /* 5 seconds */ .interval = 500, /* 500 milliseconds */ }, @@ -183,9 +183,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_reset2_callback, - .timeout = 5000, /* 5 seconds */ + .mh.flags = {}, + .mh.callback = &atausb_t_bbb_reset2_callback, + .mh.timeout = 5000, /* 5 seconds */ .interval = 50, /* 50 milliseconds */ }, @@ -194,9 +194,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_reset3_callback, - .timeout = 5000, /* 5 seconds */ + .mh.flags = {}, + .mh.callback = &atausb_t_bbb_reset3_callback, + .mh.timeout = 5000, /* 5 seconds */ .interval = 50, /* 50 milliseconds */ }, @@ -205,9 +205,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = sizeof(struct bbb_cbw), - .flags = {}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_command_callback, - .timeout = 5000, /* 5 seconds */ + .mh.flags = {}, + .mh.callback = &atausb_t_bbb_command_callback, + .mh.timeout = 5000, /* 5 seconds */ }, [ATAUSB_T_BBB_DATA_READ] = { @@ -215,9 +215,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = ATAUSB_BULK_SIZE, - .flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_data_read_callback, - .timeout = 0, /* overwritten later */ + .mh.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, + .mh.callback = &atausb_t_bbb_data_read_callback, + .mh.timeout = 0, /* overwritten later */ }, [ATAUSB_T_BBB_DATA_RD_CS] = { @@ -225,9 +225,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_data_rd_cs_callback, - .timeout = 5000, /* 5 seconds */ + .mh.flags = {}, + .mh.callback = &atausb_t_bbb_data_rd_cs_callback, + .mh.timeout = 5000, /* 5 seconds */ }, [ATAUSB_T_BBB_DATA_WRITE] = { @@ -235,9 +235,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = ATAUSB_BULK_SIZE, - .flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_data_write_callback, - .timeout = 0, /* overwritten later */ + .mh.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, + .mh.callback = &atausb_t_bbb_data_write_callback, + .mh.timeout = 0, /* overwritten later */ }, [ATAUSB_T_BBB_DATA_WR_CS] = { @@ -245,9 +245,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_data_wr_cs_callback, - .timeout = 5000, /* 5 seconds */ + .mh.flags = {}, + .mh.callback = &atausb_t_bbb_data_wr_cs_callback, + .mh.timeout = 5000, /* 5 seconds */ }, [ATAUSB_T_BBB_STATUS] = { @@ -255,9 +255,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = sizeof(struct bbb_csw), - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &atausb_t_bbb_status_callback, - .timeout = 5000, /* ms */ + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &atausb_t_bbb_status_callback, + .mh.timeout = 5000, /* ms */ }, }; ==== //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#30 (text+ko) ==== @@ -465,8 +465,8 @@ .direction = UE_DIR_IN, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = UAUDIO_NFRAMES, - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_record_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_record_callback, }, [1] = { @@ -475,8 +475,8 @@ .direction = UE_DIR_IN, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = UAUDIO_NFRAMES, - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_record_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_record_callback, }, }; @@ -488,8 +488,8 @@ .direction = UE_DIR_IN, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = (UAUDIO_NFRAMES * 8), - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_record_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_record_callback, }, [1] = { @@ -498,8 +498,8 @@ .direction = UE_DIR_IN, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = (UAUDIO_NFRAMES * 8), - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_record_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_record_callback, }, }; @@ -511,8 +511,8 @@ .direction = UE_DIR_OUT, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = UAUDIO_NFRAMES, - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_play_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_play_callback, }, [1] = { @@ -521,8 +521,8 @@ .direction = UE_DIR_OUT, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = UAUDIO_NFRAMES, - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_play_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_play_callback, }, }; @@ -534,8 +534,8 @@ .direction = UE_DIR_OUT, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = (UAUDIO_NFRAMES * 8), - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_play_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_play_callback, }, [1] = { @@ -544,8 +544,8 @@ .direction = UE_DIR_OUT, .bufsize = 0, /* use "wMaxPacketSize * frames" */ .frames = (UAUDIO_NFRAMES * 8), - .flags = {.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &uaudio_chan_play_callback, + .mh.flags = {.short_xfer_ok = 1,}, + .mh.callback = &uaudio_chan_play_callback, }, }; @@ -556,8 +556,8 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = (sizeof(usb_device_request_t) + 4), - .cb[USB_MODE_HOST] = &uaudio_mixer_write_cfg_callback, - .timeout = 1000, /* 1 second */ + .mh.callback = &uaudio_mixer_write_cfg_callback, + .mh.timeout = 1000, /* 1 second */ }, }; @@ -588,8 +588,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = UMIDI_BULK_SIZE, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &umidi_bulk_write_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &umidi_bulk_write_callback, }, [1] = { @@ -597,8 +597,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = UMIDI_BULK_SIZE, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &umidi_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &umidi_bulk_read_callback, }, [2] = { @@ -606,9 +606,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &umidi_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &umidi_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -617,9 +617,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &umidi_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &umidi_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_aue.c#42 (text+ko) ==== @@ -287,9 +287,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + 2), - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &aue_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &aue_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -297,8 +297,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 4 + ETHER_CRC_LEN), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &aue_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &aue_bulk_read_callback, }, [2] = { @@ -306,9 +306,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &aue_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &aue_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -317,9 +317,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &aue_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &aue_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -327,9 +327,9 @@ .type = UE_INTERRUPT, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .bufsize = 0, /* use wMaxPacketSize */ - .cb[USB_MODE_HOST] = &aue_intr_callback, + .mh.callback = &aue_intr_callback, }, [5] = { @@ -337,9 +337,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &aue_intr_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &aue_intr_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_axe.c#44 (text+ko) ==== @@ -235,9 +235,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = AXE_BULK_BUF_SIZE, - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &axe_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &axe_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -248,9 +248,9 @@ #error "(MCLBYTES < 2048)" #endif .bufsize = MCLBYTES, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &axe_bulk_read_callback, - .timeout = 0, /* no timeout */ + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &axe_bulk_read_callback, + .mh.timeout = 0, /* no timeout */ }, [2] = { @@ -258,9 +258,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &axe_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &axe_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -269,9 +269,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &axe_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &axe_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -279,9 +279,9 @@ .type = UE_INTERRUPT, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .bufsize = 0, /* use wMaxPacketSize */ - .cb[USB_MODE_HOST] = &axe_intr_callback, + .mh.callback = &axe_intr_callback, }, [5] = { @@ -289,9 +289,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &axe_intr_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &axe_intr_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#36 (text+ko) ==== @@ -97,9 +97,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + 4), - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &cdce_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &cdce_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -107,8 +107,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 4), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &cdce_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &cdce_bulk_read_callback, }, [2] = { @@ -116,9 +116,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &cdce_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &cdce_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -127,9 +127,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &cdce_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &cdce_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_cue.c#38 (text+ko) ==== @@ -168,9 +168,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + 2), - .flags = {.pipe_bof = 1,}, - .cb[USB_MODE_HOST] = &cue_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,}, + .mh.callback = &cue_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -178,8 +178,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 2), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &cue_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &cue_bulk_read_callback, }, [2] = { @@ -187,9 +187,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &cue_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &cue_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -198,9 +198,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &cue_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &cue_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_kue.c#40 (text+ko) ==== @@ -202,9 +202,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + 2 + 64), - .flags = {.pipe_bof = 1,}, - .cb[USB_MODE_HOST] = &kue_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,}, + .mh.callback = &kue_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -212,9 +212,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 2), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &kue_bulk_read_callback, - .timeout = 0, /* no timeout */ + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &kue_bulk_read_callback, + .mh.timeout = 0, /* no timeout */ }, [2] = { @@ -222,9 +222,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &kue_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &kue_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -233,9 +233,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &kue_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &kue_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_rue.c#38 (text+ko) ==== @@ -215,9 +215,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = MCLBYTES, - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &rue_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &rue_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -225,9 +225,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 4), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &rue_bulk_read_callback, - .timeout = 0, /* no timeout */ + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &rue_bulk_read_callback, + .mh.timeout = 0, /* no timeout */ }, [2] = { @@ -235,9 +235,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &rue_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &rue_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -246,9 +246,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &rue_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &rue_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -256,9 +256,9 @@ .type = UE_INTERRUPT, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .bufsize = 0, /* use wMaxPacketSize */ - .cb[USB_MODE_HOST] = &rue_intr_callback, + .mh.callback = &rue_intr_callback, }, [5] = { @@ -266,9 +266,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &rue_intr_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &rue_intr_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_rum.c#25 (text+ko) ==== @@ -377,9 +377,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + RT2573_TX_DESC_SIZE + 8), - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &rum_bulk_write_callback, - .timeout = 5000, /* ms */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &rum_bulk_write_callback, + .mh.timeout = 5000, /* ms */ }, [1] = { @@ -387,8 +387,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + RT2573_RX_DESC_SIZE), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &rum_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &rum_bulk_read_callback, }, [2] = { @@ -396,8 +396,8 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .cb[USB_MODE_HOST] = &rum_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.callback = &rum_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -406,8 +406,8 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .cb[USB_MODE_HOST] = &rum_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.callback = &rum_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_udav.c#40 (text+ko) ==== @@ -161,9 +161,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + 2), - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &udav_bulk_write_callback, - .timeout = 10000, /* 10 seconds */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &udav_bulk_write_callback, + .mh.timeout = 10000, /* 10 seconds */ }, [1] = { @@ -171,9 +171,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 3), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &udav_bulk_read_callback, - .timeout = 0, /* no timeout */ + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &udav_bulk_read_callback, + .mh.timeout = 0, /* no timeout */ }, [2] = { @@ -181,9 +181,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &udav_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &udav_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -192,9 +192,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &udav_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &udav_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -202,9 +202,9 @@ .type = UE_INTERRUPT, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .bufsize = 0, /* use wMaxPacketSize */ - .cb[USB_MODE_HOST] = &udav_intr_callback, + .mh.callback = &udav_intr_callback, }, [5] = { @@ -212,9 +212,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &udav_intr_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &udav_intr_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_ural.c#49 (text+ko) ==== @@ -436,9 +436,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (RAL_FRAME_SIZE + RAL_TX_DESC_SIZE + 4), - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &ural_bulk_write_callback, - .timeout = 5000, /* ms */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &ural_bulk_write_callback, + .mh.timeout = 5000, /* ms */ }, [1] = { @@ -446,8 +446,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (RAL_FRAME_SIZE + RAL_RX_DESC_SIZE), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &ural_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &ural_bulk_read_callback, }, [2] = { @@ -455,8 +455,8 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .cb[USB_MODE_HOST] = &ural_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.callback = &ural_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -465,8 +465,8 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .cb[USB_MODE_HOST] = &ural_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.callback = &ural_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, }; ==== //depot/projects/usb/src/sys/dev/usb/if_zyd.c#29 (text+ko) ==== @@ -236,10 +236,10 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + sizeof(struct zyd_controlsetformat) + 1), - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &zyd_bulk_write_callback, + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &zyd_bulk_write_callback, .index = 0, - .timeout = 10000, /* 10 seconds */ + .mh.timeout = 10000, /* 10 seconds */ }, [ZYD_TR_BULK_DT_RD] = { @@ -247,8 +247,8 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MAX(MCLBYTES, 2312) + sizeof(struct zyd_rxleninfoapp)), - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &zyd_bulk_read_callback, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.callback = &zyd_bulk_read_callback, .index = 0, }, @@ -257,9 +257,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &zyd_bulk_write_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &zyd_bulk_write_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -268,9 +268,9 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), - .flags = {}, - .cb[USB_MODE_HOST] = &zyd_bulk_read_clear_stall_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {}, + .mh.callback = &zyd_bulk_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ .interval = 50, /* 50ms */ }, @@ -279,9 +279,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = ZYD_INTR_BUF_SIZE, - .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, - .cb[USB_MODE_HOST] = &zyd_intr_write_callback, - .timeout = 1000, /* 1 second */ + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.callback = &zyd_intr_write_callback, + .mh.timeout = 1000, /* 1 second */ .index = 1, }, @@ -290,9 +290,9 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = ZYD_INTR_BUF_SIZE, - .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, - .cb[USB_MODE_HOST] = &zyd_intr_read_callback, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Dec 25 10:31:56 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6253116A41A; Tue, 25 Dec 2007 10:31:56 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 008CA16A418 for ; Tue, 25 Dec 2007 10:31:56 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 02D3213C4D9 for ; Tue, 25 Dec 2007 10:31:56 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPAVtUs002796 for ; Tue, 25 Dec 2007 10:31:55 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPAVtBm002793 for perforce@freebsd.org; Tue, 25 Dec 2007 10:31:55 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 10:31:55 GMT Message-Id: <200712251031.lBPAVtBm002793@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 131576 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 10:31:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=131576 Change 131576 by hselasky@hselasky_laptop001 on 2007/12/25 10:31:48 Compile fix. Affected files ... .. //depot/projects/usb/src/sys/conf/files#21 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#79 edit Differences ... ==== //depot/projects/usb/src/sys/conf/files#21 (text+ko) ==== @@ -1146,6 +1146,7 @@ dev/usb/usb_requests.c optional usb dev/usb/usb_subr.c optional usb dev/usb/usb_template.c optional usb +dev/usb/usb_template_cdce.c optional usb dev/usb/usb_transfer.c optional usb dev/usb/usb_compat_linux.c optional usb dev/usb/uscanner.c optional uscanner ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#79 (text+ko) ==== @@ -70,6 +70,7 @@ #include #include "usbdevs.h" #include +#include #ifdef USBVERBOSE /* From owner-p4-projects@FreeBSD.ORG Tue Dec 25 10:43:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AE41016A420; Tue, 25 Dec 2007 10:43:08 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2C1D016A418 for ; Tue, 25 Dec 2007 10:43:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2E64413C469 for ; Tue, 25 Dec 2007 10:43:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPAh8EC004480 for ; Tue, 25 Dec 2007 10:43:08 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPAh8Du004477 for perforce@freebsd.org; Tue, 25 Dec 2007 10:43:08 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 10:43:08 GMT Message-Id: <200712251043.lBPAh8Du004477@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 131577 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 10:43:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=131577 Change 131577 by hselasky@hselasky_laptop001 on 2007/12/25 10:42:44 Some manual edits that were not covered by change 131575 . Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#86 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#86 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#86 (text+ko) ==== @@ -271,6 +271,7 @@ struct usbd_device *udev; struct usbd_xfer *curr_xfer; const struct usbd_config *curr_setup; + const struct usbd_config_sub *curr_setup_sub; const struct usbd_pipe_methods *methods; void *buf; uint32_t *xfer_length_ptr; ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#86 (text+ko) ==== @@ -372,6 +372,7 @@ }; struct usbd_xfer *xfer = parm->curr_xfer; const struct usbd_config *setup = parm->curr_setup; + const struct usbd_config_sub *setup_sub = parm->curr_setup_sub; usb_endpoint_descriptor_t *edesc; struct usbd_std_packet_size std_size; uint32_t n_frlengths; @@ -392,10 +393,10 @@ type = (edesc->bmAttributes & UE_XFERTYPE); - xfer->flags = setup->flags; + xfer->flags = setup_sub->flags; xfer->nframes = setup->frames; - xfer->timeout = setup->timeout; - xfer->callback = setup->cb[parm->udev->flags.usb_mode]; + xfer->timeout = setup_sub->timeout; + xfer->callback = setup_sub->callback; xfer->interval = setup->interval; xfer->endpoint = edesc->bEndpointAddress; xfer->max_packet_size = UGETW(edesc->wMaxPacketSize); @@ -789,14 +790,15 @@ PRINTFN(5, ("using global lock\n")); priv_mtx = &usb_global_lock; } + /* sanity checks */ for (setup = setup_start, n = 0; setup != setup_end; setup++, n++) { if (setup->bufsize == 0xffffffff) { parm.err = USBD_BAD_BUFSIZE; PRINTF(("invalid bufsize\n")); } - if ((setup->cb[USB_MODE_HOST] == NULL) && - (setup->cb[USB_MODE_DEVICE] == NULL)) { + if ((setup->mh.callback == NULL) && + (setup->md.callback == NULL)) { parm.err = USBD_NO_CALLBACK; PRINTF(("no callback\n")); } @@ -860,7 +862,14 @@ for (setup = setup_start, n = 0; setup != setup_end; setup++, n++) { - if (setup->cb[udev->flags.usb_mode] == NULL) { + /* select mode specific structure */ + if (udev->flags.usb_mode == USB_MODE_HOST) { + parm.curr_setup_sub = &(setup->mh); + } else { + parm.curr_setup_sub = &(setup->md); + } + + if (parm.curr_setup_sub->callback == NULL) { /* * Skip USB transfers without * callbacks ! @@ -872,7 +881,7 @@ ifaces[setup->if_index], setup); if (!pipe) { - if (setup->flags.no_pipe_ok) { + if (parm.curr_setup_sub->flags.no_pipe_ok) { continue; } parm.err = USBD_NO_PIPE; @@ -3358,6 +3367,7 @@ .bufsize = 1024, /* bytes */ .mh.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, .mh.callback = &usbd_do_request_callback, + .md.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, .md.callback = &usbd_handle_request_callback, }, }; @@ -3764,11 +3774,11 @@ * .type = UE_CONTROL, * .endpoint = 0, * .direction = UE_DIR_ANY, - * .timeout = 1000, //1.000 seconds * .interval = 50, //50 milliseconds - * .flags = { }, * .bufsize = sizeof(usb_device_request_t), - * .cb[USB_MODE_HOST] = &my_clear_stall_callback, + * .mh.timeout = 1000, //1.000 seconds + * .mh.flags = { }, + * .mh.callback = &my_clear_stall_callback, * }; */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 11:03:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADA2516A419; Tue, 25 Dec 2007 11:03:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3B66616A420 for ; Tue, 25 Dec 2007 11:03:17 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe11.swipnet.se [212.247.155.65]) by mx1.freebsd.org (Postfix) with ESMTP id D91C813C44B for ; Tue, 25 Dec 2007 11:03:16 +0000 (UTC) (envelope-from hselasky@c2i.net) X-Cloudmark-Score: 0.000000 [] Received: from [193.217.102.3] (account mc467741@c2i.net HELO [10.0.0.105]) by mailfe11.swip.net (CommuniGate Pro SMTP 5.1.13) with ESMTPA id 574816044 for perforce@freebsd.org; Tue, 25 Dec 2007 11:03:13 +0100 From: Hans Petter Selasky To: Perforce Change Reviews Date: Tue, 25 Dec 2007 11:03:56 +0100 User-Agent: KMail/1.9.7 References: <200712250958.lBP9wJMw023375@repoman.freebsd.org> In-Reply-To: <200712250958.lBP9wJMw023375@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200712251103.57098.hselasky@c2i.net> Cc: Subject: Re: PERFORCE change 131572 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 11:03:18 -0000 Hi, Some extra stuff sneaked in too early in this commit. It is not a pure style change. --HPS On Tuesday 25 December 2007, Hans Petter Selasky wrote: > http://perforce.freebsd.org/chv.cgi?CH=131572 > > Change 131572 by hselasky@hselasky_laptop001 on 2007/12/25 09:57:46 > > > Style change by "usb_style.sh". > > Affected files ... > > .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#85 edit > > Differences ... > > ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#85 (text+ko) ==== > > @@ -536,18 +536,19 @@ > uint8_t curr_dma_set:1; /* used by USB HC/DC driver */ > }; > > +struct usbd_config_sub { > + usbd_callback_t *callback; /* USB transfer callback */ > + uint16_t timeout; /* transfer timeout in milliseconds */ > + struct usbd_xfer_flags flags; /* transfer flags */ > +}; > + > struct usbd_config { > - usbd_callback_t *cb[USB_MODE_MAX]; /* USB transfer callbacks */ > + struct usbd_config_sub mh; /* parameters for USB_MODE_HOST */ > + struct usbd_config_sub md; /* parameters for USB_MODE_DEVICE */ > uint32_t bufsize; /* total pipe buffer size in bytes */ > uint32_t frames; /* maximum number of USB frames */ > uint16_t interval; /* interval in milliseconds */ > - > #define USBD_DEFAULT_INTERVAL 0 > - > - uint16_t timeout; /* transfer timeout in milliseconds */ > - > - struct usbd_xfer_flags flags; /* transfer flags */ > - > uint8_t type; /* pipe type */ > uint8_t endpoint; /* pipe number */ > uint8_t direction; /* pipe direction */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 11:44:14 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 55D0416A41B; Tue, 25 Dec 2007 11:44:14 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8C79D16A419 for ; Tue, 25 Dec 2007 11:44:13 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8D4D613C4E3 for ; Tue, 25 Dec 2007 11:44:13 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPBiDDd015169 for ; Tue, 25 Dec 2007 11:44:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPBiDuK015166 for perforce@freebsd.org; Tue, 25 Dec 2007 11:44:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 25 Dec 2007 11:44:13 GMT Message-Id: <200712251144.lBPBiDuK015166@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 131578 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 11:44:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=131578 Change 131578 by rwatson@rwatson_cinnamon on 2007/12/25 11:44:08 Minor style tweaks. Affected files ... .. //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#27 edit Differences ... ==== //depot/projects/zcopybpf/src/sys/net/bpf_zerocopy.c#27 (text+ko) ==== @@ -140,8 +140,8 @@ /* * Given a user pointer to a page of user memory, return an sf_buf for the - * page. Because we may be requesting quite a few sf_bufs, prefer failure - * to deadlock and use SFB_NOWAIT. + * page. Because we may be requesting quite a few sf_bufs, prefer failure to + * deadlock and use SFB_NOWAIT. */ static struct sf_buf * zbuf_sfbuf_get(struct vm_map *map, vm_offset_t uaddr) @@ -149,20 +149,17 @@ struct sf_buf *sf; vm_page_t pp; - if (vm_fault_quick((caddr_t) uaddr, VM_PROT_READ | VM_PROT_WRITE) - < 0) + if (vm_fault_quick((caddr_t) uaddr, VM_PROT_READ | VM_PROT_WRITE) < + 0) return (NULL); - - pp = pmap_extract_and_hold(map->pmap, uaddr, - VM_PROT_READ | VM_PROT_WRITE); + pp = pmap_extract_and_hold(map->pmap, uaddr, VM_PROT_READ | + VM_PROT_WRITE); if (pp == NULL) return (NULL); - vm_page_lock_queues(); vm_page_wire(pp); vm_page_unhold(pp); vm_page_unlock_queues(); - sf = sf_buf_alloc(pp, SFB_NOWAIT); if (sf == NULL) { zbuf_page_free(pp); @@ -197,6 +194,9 @@ if ((len / PAGE_SIZE) > BPF_MAX_PAGES) return (EINVAL); + /* + * Allocate the buffer and set up each page with is own sf_buf. + */ error = 0; zb = malloc(sizeof(*zb), M_BPF, M_ZERO | M_WAITOK); zb->zb_uaddr = uaddr; @@ -240,7 +240,6 @@ ("bpf_zerocopy_append_bytes: not in zbuf mode")); KASSERT(buf != NULL, ("bpf_zerocopy_append_bytes: NULL buf")); - src_bytes = (u_char *)src; zb = (struct zbuf *)buf; @@ -258,7 +257,6 @@ count = min(len, PAGE_SIZE - poffset); bcopy(src_bytes, ((u_char *)sf_buf_kva(zb->zb_pages[page])) + poffset, count); - poffset += count; if (poffset == PAGE_SIZE) { poffset = 0; @@ -317,7 +315,6 @@ bcopy(mtod(m, u_char *) + moffset, ((u_char *)sf_buf_kva(zb->zb_pages[page])) + poffset, count); - poffset += count; if (poffset == PAGE_SIZE) { poffset = 0; @@ -507,10 +504,8 @@ * held buffer. */ BPFD_LOCK(d); - if (d->bd_immediate && d->bd_hbuf == NULL - && d->bd_slen != 0) { + if (d->bd_immediate && d->bd_hbuf == NULL && d->bd_slen != 0) ROTATE_BUFFERS(d); - } bzero(bz, sizeof(*bz)); if (d->bd_hbuf != NULL) { zb = (struct zbuf *)d->bd_hbuf; @@ -538,6 +533,7 @@ BPFD_UNLOCK(d); return (0); } + /* * Ioctl to configure zero-copy buffers -- may be done only once. */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 11:57:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D633D16A41B; Tue, 25 Dec 2007 11:57:28 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7307A16A417 for ; Tue, 25 Dec 2007 11:57:28 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7506413C459 for ; Tue, 25 Dec 2007 11:57:28 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPBvSaK016725 for ; Tue, 25 Dec 2007 11:57:28 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPBvSvR016722 for perforce@freebsd.org; Tue, 25 Dec 2007 11:57:28 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 25 Dec 2007 11:57:28 GMT Message-Id: <200712251157.lBPBvSvR016722@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 131579 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 11:57:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=131579 Change 131579 by rwatson@rwatson_cinnamon on 2007/12/25 11:57:13 Annotate a somewhat subtle problem associated with using purely asynchronous acknowledgements that userspace has finished with a buffer. We currently allow only one buffer to be owned by userspace at a time, and there is a scenario in which the fact that acknowledging a buffer from userspace won't force the kernel to rotate the buffers, just the arrival of a next packet, which might never happen. I have a possible solution for this but need to think more about the implications of it. Affected files ... .. //depot/projects/zcopybpf/README#4 edit Differences ... ==== //depot/projects/zcopybpf/README#4 (text+ko) ==== @@ -52,3 +52,29 @@ If doing an incremental rebuild of libpcap, make sure to "make clean" before "make" and "make install", as the dependencies appear not always to pick up changes in the size of pcap_t, which can cause libpcap to become confused. + +Issues +------ + +The zero-copy buffer implementation follows the same held/store/free buffer +model as with buffered reads. We currently assign ownership of a buffer to +userspace using the user/kernel generation number scheme only for buffers in +the store position. As the user acknowledgement to the kernel is +asynchronous (via a memory write rather than a system call), it's possible to +get into a state where the a rotation won't occur until another packet is +delivered to BPF, even if the buffer in the store spot is full. This means +that the user process may wait undefinitely for the store buffer to be move +to the hold position and get assigned to userspace, if no new packets arrive. +This should probably be fixed by allowing a full buffer in the store spot to +be assigned to userspace, allowing the buffer to be fully read without +waiting for a new packet to arrive in order to trigger the state machine. + +This can be worked around in userspace by performing a rotate ioctl to cause +the recently acknowledge buffer to be moved into the free position (etc) +before sleeping waiting for new data (libpcap currently doesn't do this), but +this problem should be fixed properly by modifying the buffer model. This is +slightly undesirable as it offers different buffer semantics than with +buffered reads, and will require the BPF code to know that sometimes it isn't +allow to write packet data to the store buffer even if there is room (as a +larger previous packet may have caused ownership to be assigned to userspace, +meaning that the kernel can no longer write to the buffer). From owner-p4-projects@FreeBSD.ORG Tue Dec 25 12:55:31 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BF1C316A46C; Tue, 25 Dec 2007 12:55:30 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5FD0516A417 for ; Tue, 25 Dec 2007 12:55:30 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4A73013C4DB for ; Tue, 25 Dec 2007 12:55:30 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPCtUJF035619 for ; Tue, 25 Dec 2007 12:55:30 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPCtUQs035616 for perforce@freebsd.org; Tue, 25 Dec 2007 12:55:30 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 12:55:30 GMT Message-Id: <200712251255.lBPCtUQs035616@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 131584 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 12:55:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=131584 Change 131584 by hselasky@hselasky_laptop001 on 2007/12/25 12:54:53 Add missing file to USB Makefile. Affected files ... .. //depot/projects/usb/src/sys/modules/usb/Makefile#5 edit Differences ... ==== //depot/projects/usb/src/sys/modules/usb/Makefile#5 (text+ko) ==== @@ -16,6 +16,7 @@ usb_requests.c \ usb_subr.c usb_subr.h \ usb_template.c usb_template.h \ + usb_template_cdce.c \ usb_transfer.c \ usb_compat_linux.c \ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 19:28:04 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9223116A41A; Tue, 25 Dec 2007 19:28:04 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2132216A417 for ; Tue, 25 Dec 2007 19:28:04 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E95B513C44B for ; Tue, 25 Dec 2007 19:28:03 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPJS22M023789 for ; Tue, 25 Dec 2007 19:28:02 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPJS2QQ023786 for perforce@freebsd.org; Tue, 25 Dec 2007 19:28:02 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 19:28:02 GMT Message-Id: <200712251928.lBPJS2QQ023786@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 131604 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 19:28:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=131604 Change 131604 by hselasky@hselasky_laptop001 on 2007/12/25 19:27:12 Get "bInterfaceNumber" right. The variable is incremented prior to writing it into the interface structures, so we need to start at minus one, so that the first interface gets a value of zero. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#10 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#10 (text+ko) ==== @@ -256,7 +256,7 @@ /* Reset some counters */ - temp->bInterfaceNumber = 0; + temp->bInterfaceNumber = 0 - 1; temp->bAlternateSetting = 0; /* Scan all the USB interfaces */ @@ -281,7 +281,7 @@ cd->bLength = sizeof(*cd); cd->bDescriptorType = UDESC_CONFIG; USETW(cd->wTotalLength, old_size); - cd->bNumInterface = temp->bInterfaceNumber; + cd->bNumInterface = temp->bInterfaceNumber + 1; cd->bConfigurationValue = temp->bConfigurationValue; cd->iConfiguration = tcd->iConfiguration; cd->bmAttributes = tcd->bmAttributes; From owner-p4-projects@FreeBSD.ORG Tue Dec 25 19:32:09 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 275DC16A468; Tue, 25 Dec 2007 19:32:09 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A2D0316A420 for ; Tue, 25 Dec 2007 19:32:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7670D13C442 for ; Tue, 25 Dec 2007 19:32:08 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPJW8di024673 for ; Tue, 25 Dec 2007 19:32:08 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPJW8S0024662 for perforce@freebsd.org; Tue, 25 Dec 2007 19:32:08 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 19:32:08 GMT Message-Id: <200712251932.lBPJW8S0024662@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 131605 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 19:32:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=131605 Change 131605 by hselasky@hselasky_laptop001 on 2007/12/25 19:31:27 Add a new device method that handles USB interface requests in USB device mode. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_if.m#4 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_if.m#4 (text+ko) ==== @@ -40,3 +40,19 @@ METHOD int reconfigure { device_t dev; }; + +# The device received a control request +# +# Return values: +# 0: Success +# ENOTTY: Transaction stalled +# Else: Use builtin request handler +# +METHOD int handle_request { + device_t dev; + const void *req; /* pointer to the device request */ + void **pptr; /* data pointer */ + uint16_t *plen; /* maximum transfer length */ + uint16_t offset; /* data offset */ + uint8_t is_complete; /* set if transfer is complete */ +}; From owner-p4-projects@FreeBSD.ORG Tue Dec 25 19:33:10 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F025716A420; Tue, 25 Dec 2007 19:33:09 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B505116A417 for ; Tue, 25 Dec 2007 19:33:09 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7034113C45B for ; Tue, 25 Dec 2007 19:33:09 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPJX9Jv025043 for ; Tue, 25 Dec 2007 19:33:09 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPJX9Ob025039 for perforce@freebsd.org; Tue, 25 Dec 2007 19:33:09 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 19:33:09 GMT Message-Id: <200712251933.lBPJX9Ob025039@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 131606 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 19:33:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131606 Change 131606 by hselasky@hselasky_laptop001 on 2007/12/25 19:32:54 Make sure that "usb_if.h" is included by default. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_port.h#22 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_port.h#22 (text+ko) ==== @@ -89,6 +89,8 @@ #endif +#include "usb_if.h" + #else #include #endif From owner-p4-projects@FreeBSD.ORG Tue Dec 25 19:45:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4DF8116A41A; Tue, 25 Dec 2007 19:45:23 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C741316A419 for ; Tue, 25 Dec 2007 19:45:22 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 988D913C448 for ; Tue, 25 Dec 2007 19:45:22 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPJjM3K026806 for ; Tue, 25 Dec 2007 19:45:22 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPJjMbg026803 for perforce@freebsd.org; Tue, 25 Dec 2007 19:45:22 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 19:45:22 GMT Message-Id: <200712251945.lBPJjMbg026803@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 131607 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 19:45:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131607 Change 131607 by hselasky@hselasky_laptop001 on 2007/12/25 19:45:00 Fixes for USB Device Side Mode. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#87 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#87 (text+ko) ==== @@ -1214,7 +1214,6 @@ } else { mtx_unlock(info->usb_mtx); } - } } } @@ -1500,7 +1499,6 @@ /* * This is not a valid operation! */ - PRINTFN(-1, ("Invalid parameter " "combination\n")); goto error; @@ -2756,6 +2754,7 @@ /* handle the request */ err = usbd_handle_request(xfer); + if (err) { if (err == USBD_BAD_CONTEXT) { /* * Currently we get a "start" context by @@ -2765,12 +2764,11 @@ USB_BUS_EXPLORE_TREE); return; } - if ((!xfer->flags_int.control_act) || err) { /* * If no control transfer is active, * receive the next SETUP message: */ - goto tr_start; + goto tr_restart; } usbd_start_hardware(xfer); return; @@ -2778,24 +2776,18 @@ default: if (xfer->error != USBD_CANCELLED) { /* should not happen - try stalling */ - err = USBD_STALLED; - goto tr_start; + goto tr_restart; } break; } return; -tr_start: +tr_restart: xfer->frlengths[0] = sizeof(usb_device_request_t); xfer->nframes = 1; xfer->flags.manual_status = 1; xfer->flags.force_short_xfer = 0; - xfer->flags.short_xfer_ok = 0; - if (err) { - xfer->flags.stall_pipe = 1; - } else { - xfer->flags.stall_pipe = 0; - } + xfer->flags.stall_pipe = 1; /* cancel previous transfer, if any */ usbd_start_hardware(xfer); return; } @@ -2821,64 +2813,20 @@ } if (usbd_set_config_index(xfer->udev, conf_no, 0)) { + PRINTFN(0, ("set config %d failed\n", conf_no)); mtx_lock(xfer->priv_mtx); return (USBD_STALLED); } if (usbd_probe_and_attach(xfer->udev, USB_IFACE_INDEX_ANY)) { - mtx_lock(xfer->priv_mtx); - return (USBD_STALLED); - } - mtx_lock(xfer->priv_mtx); - - return (0); -} - -/*------------------------------------------------------------------------* - * usbd_handle_set_alt_setting - *------------------------------------------------------------------------*/ -static usbd_status_t -usbd_handle_set_alt_setting(struct usbd_xfer *xfer, - uint8_t iface_index, uint8_t alt_index) -{ - if (iface_index >= USB_MAX_INTERFACES) { - return (USBD_STALLED); - } - mtx_unlock(xfer->priv_mtx); - - usbd_detach_device(xfer->udev, iface_index, 1); - - if (usbd_set_alt_interface_index(xfer->udev, - iface_index, alt_index)) { - mtx_lock(xfer->priv_mtx); - return (USBD_STALLED); - } - if (usbd_probe_and_attach(xfer->udev, iface_index)) { + PRINTFN(0, ("probe and attach failed\n")); mtx_lock(xfer->priv_mtx); return (USBD_STALLED); } mtx_lock(xfer->priv_mtx); - return (0); } /*------------------------------------------------------------------------* - * usbd_handle_get_alt_setting - *------------------------------------------------------------------------*/ -static usbd_status_t -usbd_handle_get_alt_setting(struct usbd_xfer *xfer, - uint8_t iface_index, uint8_t *ptr) -{ - struct usbd_interface *iface; - - iface = usbd_get_iface(xfer->udev, iface_index); - if (iface) { - *ptr = iface->alt_index; - return (0); - } - return (USBD_STALLED); -} - -/*------------------------------------------------------------------------* * usbd_handle_set_stall_sub * * This function is used to make a BULK or INTERRUPT endpoint @@ -3005,24 +2953,33 @@ /*------------------------------------------------------------------------* * usbd_handle_request + * + * Returns: + * 0: Ready to start hardware + * USBD_BAD_CONTEXT: Need to switch context + * Else: Stall current transfer, if any *------------------------------------------------------------------------*/ static usbd_status_t usbd_handle_request(struct usbd_xfer *xfer) { +/* + * USB handle request states + * + * Typical state sequence: + * + * ST_DATA [ -> ST_CONTEXT_START ] -> ST_POST_STATUS + */ enum { ST_DATA, ST_CONTEXT_START, ST_POST_STATUS, }; - - /* - * State sequence: - * - * ST_DATA [ -> ST_CONTEXT_START ] -> ST_POST_STATUS - */ usb_device_request_t req; struct usbd_device *udev; - const void *ptr; + struct usbd_interface *iface; + const void *src_zcopy; /* zero-copy source pointer */ + const void *src_mcopy; /* non zero-copy source pointer */ + int error; uint16_t off; /* data offset */ uint16_t rem; /* data remainder */ uint16_t max_len; /* max fragment length */ @@ -3041,15 +2998,17 @@ switch (USBD_GET_STATE(xfer)) { case USBD_ST_SETUP: + state = ST_CONTEXT_START; + if (!xfer->flags_int.control_act) { /* nothing to do */ - return (0); + goto tr_stalled; } + if (xfer->flags_int.context != USBD_CONTEXT_START) { - /* wrong context */ + /* wrong context - should not happen */ goto tr_bad_context; } - state = ST_CONTEXT_START; break; default: /* USBD_ST_TRANSFERRED */ @@ -3085,7 +3044,8 @@ /* set some defaults */ max_len = 0; - ptr = &temp; + src_zcopy = NULL; + src_mcopy = NULL; udev = xfer->udev; /* get some request fields decoded */ @@ -3093,9 +3053,9 @@ wValue = UGETW(req.wValue); wIndex = UGETW(req.wIndex); - PRINTFN(2, ("req 0x%02x 0x%02x 0x%04x 0x%04x " - "off=0x%x rem=0x%x\n", req.bmRequestType, - req.bRequest, wValue, wIndex, off, rem)); + PRINTFN(0, ("req 0x%02x 0x%02x 0x%04x 0x%04x " + "off=0x%x rem=0x%x, state=%d\n", req.bmRequestType, + req.bRequest, wValue, wIndex, off, rem, state)); /* demultiplex the control request */ @@ -3130,7 +3090,7 @@ case UT_WRITE_ENDPOINT: switch (req.bRequest) { case UR_CLEAR_FEATURE: - switch (UGETW(req.wValue)) { + switch (wValue) { case UF_ENDPOINT_HALT: goto tr_handle_clear_halt; case UF_DEVICE_REMOTE_WAKEUP: @@ -3141,7 +3101,7 @@ break; case UR_SET_FEATURE: - switch (UGETW(req.wValue)) { + switch (wValue) { case UF_ENDPOINT_HALT: goto tr_handle_set_halt; case UF_DEVICE_REMOTE_WAKEUP: @@ -3163,60 +3123,35 @@ goto tr_stalled; } break; - - case UT_WRITE_INTERFACE: - switch (req.bRequest) { - case UR_SET_INTERFACE: - goto tr_handle_set_interface; - default: - goto tr_stalled; - } - break; - - case UT_READ_INTERFACE: - switch (req.bRequest) { - case UR_GET_INTERFACE: - goto tr_handle_get_interface; - default: - goto tr_stalled; + default: + if ((req.bmRequestType & 0x1F) == UT_INTERFACE) { + if (state == ST_DATA) { + goto tr_bad_context; + } + goto tr_handle_iface_request; } - break; - - case UT_WRITE_CLASS_INTERFACE: - case UT_WRITE_VENDOR_INTERFACE: - /* XXX forward */ - break; - - case UT_READ_CLASS_INTERFACE: - case UT_READ_VENDOR_INTERFACE: - /* XXX forward */ - break; - default: goto tr_stalled; } goto tr_valid; tr_handle_get_descriptor: - usbd_temp_get_desc(udev, &req, &ptr, &max_len); - if (ptr == NULL) { + usbd_temp_get_desc(udev, &req, &src_zcopy, &max_len); + if (src_zcopy == NULL) { goto tr_stalled; } - /* use zero copy */ - usbd_set_frame_data(xfer, USBD_ADD_BYTES(ptr, off), 1); - ptr = NULL; - /* adjust maximum length according to offset */ - max_len -= off; goto tr_valid; tr_handle_get_config: + temp.buf[0] = udev->curr_config_no; + src_mcopy = temp.buf; max_len = 1; - temp.buf[0] = udev->curr_config_no; goto tr_valid; tr_handle_get_status: - max_len = sizeof(temp.wStatus); /* XXX FIXME */ USETW(temp.wStatus, UDS_SELF_POWERED); + src_mcopy = temp.wStatus; + max_len = sizeof(temp.wStatus); goto tr_valid; tr_handle_set_address: @@ -3238,7 +3173,7 @@ if (state == ST_DATA) { goto tr_bad_context; } else if (state == ST_CONTEXT_START) { - if (usbd_handle_set_config(xfer, wValue)) { + if (usbd_handle_set_config(xfer, req.wValue[0])) { goto tr_stalled; } } @@ -3246,7 +3181,7 @@ tr_handle_clear_halt: if (state == ST_DATA) { - if (usbd_handle_set_stall(xfer, wIndex, 0)) { + if (usbd_handle_set_stall(xfer, req.wIndex[0], 0)) { goto tr_stalled; } } @@ -3264,7 +3199,7 @@ tr_handle_set_halt: if (state == ST_DATA) { - if (usbd_handle_set_stall(xfer, wIndex, 1)) { + if (usbd_handle_set_stall(xfer, req.wIndex[0], 1)) { goto tr_stalled; } } @@ -3282,32 +3217,80 @@ tr_handle_get_ep_status: if (state == ST_DATA) { + temp.wStatus[0] = + usbd_handle_get_stall(udev, req.wIndex[0]); + temp.wStatus[1] = 0; + src_mcopy = temp.wStatus; max_len = sizeof(temp.wStatus); - temp.wStatus[0] = usbd_handle_get_stall(udev, req.wIndex[0]); - temp.wStatus[1] = 0; } goto tr_valid; -tr_handle_set_interface: - if (state == ST_DATA) { - goto tr_bad_context; - } else if (state == ST_CONTEXT_START) { - if (usbd_handle_set_alt_setting(xfer, wIndex - 1, wValue)) { +tr_handle_iface_request: + iface = usbd_get_iface(udev, req.wIndex[0]); + if (iface == NULL) { + goto tr_stalled; + } + if (iface->subdev == NULL) { + goto tr_handle_iface_request_builtin; + } + if (device_is_attached(iface->subdev) == 0) { + goto tr_handle_iface_request_builtin; + } + mtx_unlock(xfer->priv_mtx); + + /* We use "USBD_ADD_BYTES" to de-const the src_zcopy */ + + error = USB_HANDLE_REQUEST(iface->subdev, + &req, USBD_ADD_BYTES(&src_zcopy, 0), &max_len, + off, (state == ST_POST_STATUS)); + + mtx_lock(xfer->priv_mtx); + + if (error == 0) { + /* negativly adjust pointer and length */ + src_zcopy = ((const uint8_t *)src_zcopy) - off; + max_len += off; + goto tr_valid; + } else if (error == ENOTTY) { + goto tr_stalled; + } + goto tr_handle_iface_request_builtin; + +tr_handle_iface_request_builtin: + switch (req.bmRequestType) { + case UT_WRITE_INTERFACE: + switch (req.bRequest) { + case UR_SET_INTERFACE: + if (iface->alt_index != req.wValue[0]) { + goto tr_stalled; + } + break; + default: goto tr_stalled; } - } - goto tr_valid; + break; + + case UT_READ_INTERFACE: + switch (req.bRequest) { + case UR_GET_INTERFACE: + src_mcopy = &(iface->alt_index); + max_len = 1; + break; -tr_handle_get_interface: - if (state == ST_DATA) { - if (usbd_handle_get_alt_setting(xfer, wIndex, temp.buf)) { + default: goto tr_stalled; } - max_len = 1; + break; } goto tr_valid; tr_valid: + if (state == ST_POST_STATUS) { + goto tr_stalled; + } + /* subtract offset from length */ + + max_len -= off; /* Compute the real maximum data length */ @@ -3340,8 +3323,13 @@ xfer->nframes = max_len ? 2 : 1; } if (max_len > 0) { - if (ptr) { - usbd_copy_in(xfer->frbuffers + 1, 0, ptr, max_len); + if (src_mcopy) { + src_mcopy = USBD_ADD_BYTES(src_mcopy, off); + usbd_copy_in(xfer->frbuffers + 1, 0, + src_mcopy, max_len); + } else { + usbd_set_frame_data(xfer, + USBD_ADD_BYTES(src_zcopy, off), 1); } xfer->frlengths[1] = max_len; } else { @@ -3350,12 +3338,16 @@ xfer->frlengths[1] = 0; } xfer->flags.stall_pipe = 0; /* do not stall pipe */ + PRINTFN(0, ("success\n")); return (0); /* success */ tr_stalled: + PRINTFN(0, ("%s\n", (state == ST_POST_STATUS) ? + "complete" : "stalled")); return (USBD_STALLED); tr_bad_context: + PRINTFN(0, ("bad context\n")); return (USBD_BAD_CONTEXT); } @@ -3367,7 +3359,7 @@ .bufsize = 1024, /* bytes */ .mh.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, .mh.callback = &usbd_do_request_callback, - .md.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, + .md.flags = {.proxy_buffer = 1,.short_xfer_ok = 0,}, .md.callback = &usbd_handle_request_callback, }, }; From owner-p4-projects@FreeBSD.ORG Tue Dec 25 19:47:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EFDAC16A421; Tue, 25 Dec 2007 19:47:25 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 40DBF16A418 for ; Tue, 25 Dec 2007 19:47:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1308513C458 for ; Tue, 25 Dec 2007 19:47:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPJlObT026921 for ; Tue, 25 Dec 2007 19:47:24 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPJlOm6026918 for perforce@freebsd.org; Tue, 25 Dec 2007 19:47:24 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 19:47:24 GMT Message-Id: <200712251947.lBPJlOm6026918@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 131608 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 19:47:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131608 Change 131608 by hselasky@hselasky_laptop001 on 2007/12/25 19:46:37 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#88 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#88 (text+ko) ==== @@ -2755,16 +2755,16 @@ err = usbd_handle_request(xfer); if (err) { - if (err == USBD_BAD_CONTEXT) { + if (err == USBD_BAD_CONTEXT) { + /* + * Currently we get a "start" context by + * waking up the explore thread. + */ + usb_needs_explore(xfer->udev->bus, + USB_BUS_EXPLORE_TREE); + return; + } /* - * Currently we get a "start" context by - * waking up the explore thread. - */ - usb_needs_explore(xfer->udev->bus, - USB_BUS_EXPLORE_TREE); - return; - } - /* * If no control transfer is active, * receive the next SETUP message: */ @@ -2787,7 +2787,7 @@ xfer->nframes = 1; xfer->flags.manual_status = 1; xfer->flags.force_short_xfer = 0; - xfer->flags.stall_pipe = 1; /* cancel previous transfer, if any */ + xfer->flags.stall_pipe = 1; /* cancel previous transfer, if any */ usbd_start_hardware(xfer); return; } @@ -3004,7 +3004,6 @@ /* nothing to do */ goto tr_stalled; } - if (xfer->flags_int.context != USBD_CONTEXT_START) { /* wrong context - should not happen */ goto tr_bad_context; @@ -3286,7 +3285,7 @@ tr_valid: if (state == ST_POST_STATUS) { - goto tr_stalled; + goto tr_stalled; } /* subtract offset from length */ @@ -3325,8 +3324,8 @@ if (max_len > 0) { if (src_mcopy) { src_mcopy = USBD_ADD_BYTES(src_mcopy, off); - usbd_copy_in(xfer->frbuffers + 1, 0, - src_mcopy, max_len); + usbd_copy_in(xfer->frbuffers + 1, 0, + src_mcopy, max_len); } else { usbd_set_frame_data(xfer, USBD_ADD_BYTES(src_zcopy, off), 1); @@ -3342,8 +3341,8 @@ return (0); /* success */ tr_stalled: - PRINTFN(0, ("%s\n", (state == ST_POST_STATUS) ? - "complete" : "stalled")); + PRINTFN(0, ("%s\n", (state == ST_POST_STATUS) ? + "complete" : "stalled")); return (USBD_STALLED); tr_bad_context: From owner-p4-projects@FreeBSD.ORG Tue Dec 25 20:01:41 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7599516A4F0; Tue, 25 Dec 2007 20:01:41 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D7DA916A49C for ; Tue, 25 Dec 2007 20:01:40 +0000 (UTC) (envelope-from thioretic@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A588613C4E5 for ; Tue, 25 Dec 2007 20:01:40 +0000 (UTC) (envelope-from thioretic@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPK1eBn029856 for ; Tue, 25 Dec 2007 20:01:40 GMT (envelope-from thioretic@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPK1eM4029853 for perforce@freebsd.org; Tue, 25 Dec 2007 20:01:40 GMT (envelope-from thioretic@FreeBSD.org) Date: Tue, 25 Dec 2007 20:01:40 GMT Message-Id: <200712252001.lBPK1eM4029853@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to thioretic@FreeBSD.org using -f From: Maxim Zhuravlev To: Perforce Change Reviews Cc: Subject: PERFORCE change 131610 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 20:01:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=131610 Change 131610 by thioretic@thioretic on 2007/12/25 20:00:47 Add some connected device's state notification infrastructure. Affected files ... .. //depot/projects/soc2007/thioretic_gidl2/kern/device_if.m#2 edit .. //depot/projects/soc2007/thioretic_gidl2/kern/subr_bus.c#10 edit .. //depot/projects/soc2007/thioretic_gidl2/sys/bus.h#6 edit Differences ... ==== //depot/projects/soc2007/thioretic_gidl2/kern/device_if.m#2 (text+ko) ==== @@ -62,9 +62,14 @@ { return EOPNOTSUPP; } - static void* null_info (device_t dev) + static void* null_info (device_t dev, char *buf, size_t buflen) + { + return NULL; + } + static void null_receive_event (device_t dev, device_t provider, + enum relationship rel, enum dev_event ev) { - return EOPNOTSUPP; + return; } }; @@ -346,3 +351,30 @@ char *buf; size_t buflen; } DEFAULT null_info; + +/** + * @brief This is called when the some connected device has issued + * an event. + * + * To include this method in a device driver, use a line like this + * in the driver's method list: + * + * @code + * KOBJMETHOD(device_info, foo_info) + * @endcode + * + * @param dev the device being requested to receive an event + * + * @param provider the device that issued the event + * + * @param rel specifies how the provider does relate to the dev + * + * @param ev the event to process + * + */ +METHOD void receive_event { + device_t dev; + device_t provider; + enum relationship rel; + enum dev_event ev_type; +} DEFAULT null_receive_event; ==== //depot/projects/soc2007/thioretic_gidl2/kern/subr_bus.c#10 (text+ko) ==== @@ -129,6 +129,13 @@ uint32_t flags; }; +struct dev_event_entry { + enum dev_event ev_type; + TAILQ_ENTRY(dev_event_entry) link; +}; +typedef struct dev_event_entry* dev_event_entry_t; +typedef TAILQ_HEAD(dev_event_list, dev_event_entry) dev_event_list_t; + /** * @brief Implementation of device. */ @@ -181,6 +188,8 @@ struct sysctl_ctx_list sysctl_ctx; /**< state for sysctl variables */ struct sysctl_oid *sysctl_tree; /**< state for sysctl variables */ + + dev_event_list_t evs; }; typedef struct devicelink* devicelink_t; @@ -188,7 +197,7 @@ device_t device_ptr; #define DLF_ANCHOR 1 int flags; - TAILQ(devicelink) link; + TAILQ_ENTRY(devicelink) link; }; static MALLOC_DEFINE(M_BUS, "bus", "Bus data structures"); @@ -2059,6 +2068,45 @@ filter_probe_and_attach (dv->devices[i], filter); } } + +static void device_issue_event (device_t dev, enum dev_event ev_type){ + dev_event_entry_t dee; + devicelink_t pd; + + /*deliver to all children*/ + if (!TAILQ_EMPTY(&dev->children)){ + TAILQ_FOREACH (pd, &dev->children, link){ + DEVICE_RECEIVE_EVENT (pd, dev, REL_CHILD, ev_type); + } + } + + /*deliver to all parents*/ + if (!TAILQ_EMPTY(&dev->parents)){ + TAILQ_FOREACH (pd, &dev->parents, link){ + DEVICE_RECEIVE_EVENT (pd, dev, REL_PARENT, ev_type); + } + } + + /*enqueue*/ + dee = malloc (sizeof(struct dev_event_entry), M_BUS, M_NOWAIT|M_ZERO); + if (dee == NULL) + return; + + dee->ev_type = ev_type; + TAILQ_INSERT_TAIL (&dev->evs, dee, link); +} + +static void device_deliver_events (device_t dev, device_t recipient, enum relationship rel){ + dev_event_entry_t dee; + + if (TAILQ_EMPTY(&dev->evs)) + return; + + TAILQ_FOREACH (dee, &dev->evs, link){ + DEVICE_RECEIVE_EVENT (recipient, dev, rel, dee->ev_type); + } +} + /** * @internal * @brief Make a new device and add it as a child of @p parent @@ -2096,12 +2144,13 @@ dev = malloc(sizeof(struct device), M_BUS, M_NOWAIT|M_ZERO); if (!dev) return (NULL); - TAILQ_INIT(&(dev->parents)); + TAILQ_INIT(&dev->parents); pd = malloc(sizeof(struct devicelink), M_BUS, M_NOWAIT|M_ZERO); if (!pd){free(dev); return(NULL);} pd->device_ptr = parent; TAILQ_INSERT_TAIL(&dev->parents, pd, link); TAILQ_INIT(&dev->children); + TAILQ_INIT(&dev->evs); kobj_init((kobj_t) dev, &drv_compat_ctrl_driver) for (level=DRL_LOWEST; level<=DRL_TOPMOST; level++) TAILQ_INIT(&dev->drivers[level]); ==== //depot/projects/soc2007/thioretic_gidl2/sys/bus.h#6 (text+ko) ==== @@ -1,717 +1,734 @@ -/*- - * Copyright (c) 1997,1998,2003 Doug Rabson - * 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. - * 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 - * 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. - * - * $FreeBSD: src/sys/sys/bus.h,v 1.70.2.4 2006/12/15 21:33:23 imp Exp $ - */ - -#ifndef _SYS_BUS_H_ -#define _SYS_BUS_H_ - -/** - * @defgroup NEWBUS newbus - a generic framework for managing devices - * @{ - */ - -/** - * @brief Interface information structure. - */ -struct u_businfo { - int ub_version; /**< @brief interface version */ -#define BUS_USER_VERSION 1 - int ub_generation; /**< @brief generation count */ -}; - -/** - * @brief State of the device. - */ -typedef enum device_state { - DS_RAW, - DS_NOTPRESENT, /**< @brief not probed or probe failed */ - DS_ALIVE, /**< @brief probe succeeded */ - DS_ATTACHED, /**< @brief attach method called */ - DS_BUSY /**< @brief device is open */ -} device_state_t; - -/** - * @brief Device information exported to userspace. - */ -struct u_device { - uintptr_t dv_handle; - uintptr_t dv_parent; - - char dv_name[32]; /**< @brief Name of device in tree. */ - char dv_desc[32]; /**< @brief Driver description */ - char dv_drivername[32]; /**< @brief Driver name */ - char dv_pnpinfo[128]; /**< @brief Plug and play info */ - char dv_location[128]; /**< @brief Where is the device? */ - uint32_t dv_devflags; /**< @brief API Flags for device */ - uint16_t dv_flags; /**< @brief flags for dev date */ - device_state_t dv_state; /**< @brief State of attachment */ - /* XXX more driver info? */ -}; - -#ifdef _KERNEL - -#include -#include - -/** - * devctl hooks. Typically one should use the devctl_notify - * hook to send the message. However, devctl_queue_data is also - * included in case devctl_notify isn't sufficiently general. - */ -void devctl_notify(const char *__system, const char *__subsystem, - const char *__type, const char *__data); -void devctl_queue_data(char *__data); - -/* - * Forward declarations - */ -typedef struct device *device_t; - -/** - * @brief A device driver (included mainly for compatibility with - * FreeBSD 4.x). - */ -typedef struct kobj_class driver_t; - -/** - * @brief A device class - * - * The devclass object has two main functions in the system. The first - * is to manage the allocation of unit numbers for device instances - * and the second is to hold the list of device drivers for a - * particular bus type. Each devclass has a name and there cannot be - * two devclasses with the same name. This ensures that unique unit - * numbers are allocated to device instances. - * - * Drivers that support several different bus attachments (e.g. isa, - * pci, pccard) should all use the same devclass to ensure that unit - * numbers do not conflict. - * - * Each devclass may also have a parent devclass. This is used when - * searching for device drivers to allow a form of inheritance. When - * matching drivers with devices, first the driver list of the parent - * device's devclass is searched. If no driver is found in that list, - * the search continues in the parent devclass (if any). - */ -typedef struct devclass *devclass_t; - -/** - * @brief A device method (included mainly for compatibility with - * FreeBSD 4.x). - */ -#define device_method_t kobj_method_t - -/** - * @brief A driver interrupt service routine - */ -typedef void driver_intr_t(void*); - -/** - * @brief Interrupt type bits. - * - * These flags are used both by newbus interrupt - * registration (nexus.c) and also in struct intrec, which defines - * interrupt properties. - * - * XXX We should probably revisit this and remove the vestiges of the - * spls implicit in names like INTR_TYPE_TTY. In the meantime, don't - * confuse things by renaming them (Grog, 18 July 2000). - * - * We define this in terms of bits because some devices may belong - * to multiple classes (and therefore need to be included in - * multiple interrupt masks, which is what this really serves to - * indicate. Buses which do interrupt remapping will want to - * change their type to reflect what sort of devices are underneath. - */ -enum intr_type { - INTR_TYPE_TTY = 1, - INTR_TYPE_BIO = 2, - INTR_TYPE_NET = 4, - INTR_TYPE_CAM = 8, - INTR_TYPE_MISC = 16, - INTR_TYPE_CLK = 32, - INTR_TYPE_AV = 64, - INTR_FAST = 128, - INTR_EXCL = 256, /* exclusive interrupt */ - INTR_MPSAFE = 512, /* this interrupt is SMP safe */ - INTR_ENTROPY = 1024 /* this interrupt provides entropy */ -}; - -enum intr_trigger { - INTR_TRIGGER_CONFORM = 0, - INTR_TRIGGER_EDGE = 1, - INTR_TRIGGER_LEVEL = 2 -}; - -enum intr_polarity { - INTR_POLARITY_CONFORM = 0, - INTR_POLARITY_HIGH = 1, - INTR_POLARITY_LOW = 2 -}; - -typedef int (*devop_t)(void); - -/** - * @brief This structure is deprecated. - * - * Use the kobj(9) macro DEFINE_CLASS to - * declare classes which implement device drivers. - */ -struct driver { - KOBJ_CLASS_FIELDS; -}; - -/* - * Definitions for drivers which need to keep simple lists of resources - * for their child devices. - */ -struct resource; - -/** - * @brief An entry for a single resource in a resource list. - */ -struct resource_list_entry { - STAILQ_ENTRY(resource_list_entry) link; - int type; /**< @brief type argument to alloc_resource */ - int rid; /**< @brief resource identifier */ - struct resource *res; /**< @brief the real resource when allocated */ - u_long start; /**< @brief start of resource range */ - u_long end; /**< @brief end of resource range */ - u_long count; /**< @brief count within range */ -}; -STAILQ_HEAD(resource_list, resource_list_entry); - -void resource_list_init(struct resource_list *rl); -void resource_list_free(struct resource_list *rl); -struct resource_list_entry * - resource_list_add(struct resource_list *rl, - int type, int rid, - u_long start, u_long end, u_long count); -int resource_list_add_next(struct resource_list *rl, - int type, - u_long start, u_long end, u_long count); -struct resource_list_entry* - resource_list_find(struct resource_list *rl, - int type, int rid); -void resource_list_delete(struct resource_list *rl, - int type, int rid); -struct resource * - resource_list_alloc(struct resource_list *rl, - device_t bus, device_t child, - int type, int *rid, - u_long start, u_long end, - u_long count, u_int flags); -int resource_list_release(struct resource_list *rl, - device_t bus, device_t child, - int type, int rid, struct resource *res); -void resource_list_purge(struct resource_list *rl); -int resource_list_print_type(struct resource_list *rl, - const char *name, int type, - const char *format); - -/* - * The root bus, to which all top-level busses are attached. - */ -extern device_t root_bus; -extern devclass_t root_devclass; -void root_bus_configure(void); - -/* - * Useful functions for implementing busses. - */ - -int bus_generic_activate_resource(device_t dev, device_t child, int type, - int rid, struct resource *r); -device_t - bus_generic_add_child(device_t dev, int order, const char *name, - int unit); -struct resource * - bus_generic_alloc_resource(device_t bus, device_t child, int type, - int *rid, u_long start, u_long end, - u_long count, u_int flags); -int bus_generic_attach(device_t dev); -int bus_generic_child_present(device_t dev, device_t child); -int bus_generic_config_intr(device_t, int, enum intr_trigger, - enum intr_polarity); -int bus_generic_deactivate_resource(device_t dev, device_t child, int type, - int rid, struct resource *r); -int bus_generic_detach(device_t dev); -void bus_generic_driver_added(device_t dev, driver_t *driver); -struct resource_list * - bus_generic_get_resource_list (device_t, device_t); -int bus_print_child_header(device_t dev, device_t child); -int bus_print_child_footer(device_t dev, device_t child); -int bus_generic_print_child(device_t dev, device_t child); -int bus_generic_probe(device_t dev); -int bus_generic_read_ivar(device_t dev, device_t child, int which, - uintptr_t *result); -int bus_generic_release_resource(device_t bus, device_t child, - int type, int rid, struct resource *r); -int bus_generic_resume(device_t dev); -int bus_generic_setup_intr(device_t dev, device_t child, - struct resource *irq, int flags, - driver_intr_t *intr, void *arg, void **cookiep); - -struct resource * - bus_generic_rl_alloc_resource (device_t, device_t, int, int *, - u_long, u_long, u_long, u_int); -void bus_generic_rl_delete_resource (device_t, device_t, int, int); -int bus_generic_rl_get_resource (device_t, device_t, int, int, u_long *, - u_long *); -int bus_generic_rl_set_resource (device_t, device_t, int, int, u_long, - u_long); -int bus_generic_rl_release_resource (device_t, device_t, int, int, - struct resource *); - -int bus_generic_shutdown(device_t dev); -int bus_generic_suspend(device_t dev); -int bus_generic_teardown_intr(device_t dev, device_t child, - struct resource *irq, void *cookie); -int bus_generic_write_ivar(device_t dev, device_t child, int which, - uintptr_t value); - -/* - * Wrapper functions for the BUS_*_RESOURCE methods to make client code - * a little simpler. - */ -struct resource *bus_alloc_resource(device_t dev, int type, int *rid, - u_long start, u_long end, u_long count, - u_int flags); -int bus_activate_resource(device_t dev, int type, int rid, - struct resource *r); -int bus_deactivate_resource(device_t dev, int type, int rid, - struct resource *r); -int bus_release_resource(device_t dev, int type, int rid, - struct resource *r); -int bus_free_resource(device_t dev, int type, struct resource *r); -int bus_setup_intr(device_t dev, struct resource *r, int flags, - driver_intr_t handler, void *arg, void **cookiep); -int bus_teardown_intr(device_t dev, struct resource *r, void *cookie); -int bus_set_resource(device_t dev, int type, int rid, - u_long start, u_long count); -int bus_get_resource(device_t dev, int type, int rid, - u_long *startp, u_long *countp); -u_long bus_get_resource_start(device_t dev, int type, int rid); -u_long bus_get_resource_count(device_t dev, int type, int rid); -void bus_delete_resource(device_t dev, int type, int rid); -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) -{ - return (bus_alloc_resource(dev, type, rid, 0ul, ~0ul, 1, flags)); -} - -/* - * Forward compatibility define. bus_get_dma_tag is defined in current - * to get the parent's dma tag. In RELENG_6 this is currently spelled NULL, - * so provide a stop-gap compatibilty hook until this functionality is - * merged from head (if ever) - */ -#define bus_get_dma_tag(a) NULL - -/* - * Access functions for device. - */ -device_t device_add_child(device_t dev, const char *name, int unit); -int device_add_existing_child (device_t dev, device_t child); -int device_add_existing_parent (device_t dev, device_t parent); -device_t device_add_child_ordered(device_t dev, int order, - const char *name, int unit); -void device_busy(device_t dev); -int device_delete_child(device_t dev, device_t child); -int device_delete_existing_child (device_t dev, device_t child); -int device_delete_existing_parent (device_t dev, device_t parent); -int device_attach(device_t dev); -int device_detach(device_t dev); -void device_disable(device_t dev); -void device_enable(device_t dev); -device_t device_find_child(device_t dev, const char *classname, - int unit); -device_t device_find_parent(device_t dev, const char* classname, - int unit); -const char *device_get_desc(device_t dev); -devclass_t device_get_devclass(device_t dev); -driver_t *device_get_driver(device_t dev); -u_int32_t device_get_flags(device_t dev); -device_t device_get_parent(device_t dev); -int device_get_children(device_t dev, device_t **listp, int *countp); -int device_get_all_parents(device_t dev, device_t **listp, int *countp); -void *device_get_ivars(device_t dev); -void *device_get_driver_ivars (device_t dev, driver_t *driver); -void device_set_ivars(device_t dev, void *ivars); -void device_set_driver_ivars (device_t dev, driver_t *driver, - void* ivars); -const char *device_get_name(device_t dev); -const char *device_get_nameunit(device_t dev); -void *device_get_softc(device_t dev); -void *device_get_driver_softc(device_t dev, driver_t *driver); -device_state_t device_get_state(device_t dev); -int device_get_unit(device_t dev); -struct sysctl_ctx_list *device_get_sysctl_ctx(device_t dev); -struct sysctl_oid *device_get_sysctl_tree(device_t dev); -int device_is_alive(device_t dev); /* did probe succeed? */ -int device_is_attached(device_t dev); /* did attach succeed? */ -int device_is_enabled(device_t dev); -int device_is_quiet(device_t dev); -int device_print_prettyname(device_t dev); -int device_printf(device_t dev, const char *, ...) __printflike(2, 3); -int device_probe_and_attach(device_t dev); -int device_quiesce(device_t dev); -void device_quiet(device_t dev); -void device_set_desc(device_t dev, const char* desc); -void device_set_desc_copy(device_t dev, const char* desc); -int device_set_devclass(device_t dev, const char *classname); -int device_set_driver(device_t dev, driver_t *driver); -void device_set_flags(device_t dev, u_int32_t flags); -void device_set_softc(device_t dev, void *softc); -void device_set_driver_softc(device_t dev, driver_t *driver, - void* softc); -int device_set_unit(device_t dev, int unit); /* XXX DONT USE XXX */ -int device_shutdown(device_t dev); -void device_unbusy(device_t dev); -void device_verbose(device_t dev); - -/* - * Access functions for devclass. - */ -int devclass_add_driver(devclass_t dc, kobj_class_t driver); -int devclass_delete_driver(devclass_t dc, kobj_class_t driver); -devclass_t devclass_create(const char *classname); -devclass_t devclass_find(const char *classname); -kobj_class_t devclass_find_driver(devclass_t dc, const char *classname); -const char *devclass_get_name(devclass_t dc); -device_t devclass_get_device(devclass_t dc, int unit); -void *devclass_get_softc(devclass_t dc, int unit); -void *devclass_get_driver_softc (devclass_t dc, int unit, driver_t *driver); - -int devclass_get_devices(devclass_t dc, device_t **listp, int *countp); -int devclass_get_drivers(devclass_t dc, driver_t ***listp, int *countp); -int devclass_get_count(devclass_t dc); -int devclass_get_maxunit(devclass_t dc); -int devclass_find_free_unit(devclass_t dc, int unit); -void devclass_set_parent(devclass_t dc, devclass_t pdc); -devclass_t devclass_get_parent(devclass_t dc); -struct sysctl_ctx_list *devclass_get_sysctl_ctx(devclass_t dc); -struct sysctl_oid *devclass_get_sysctl_tree(devclass_t dc); -int devclass_quiesce_driver(devclass_t dc, kobj_class_t driver); - -/* - * Access functions for device resources. - */ - -int resource_int_value(const char *name, int unit, const char *resname, - int *result); -int resource_long_value(const char *name, int unit, const char *resname, - long *result); -int resource_string_value(const char *name, int unit, const char *resname, - const char **result); -int resource_disabled(const char *name, int unit); -int resource_find_match(int *anchor, const char **name, int *unit, - const char *resname, const char *value); -int resource_find_dev(int *anchor, const char *name, int *unit, - const char *resname, const char *value); -int resource_set_int(const char *name, int unit, const char *resname, - int value); -int resource_set_long(const char *name, int unit, const char *resname, - long value); -int resource_set_string(const char *name, int unit, const char *resname, - const char *value); -/* - * Functions for maintaining and checking consistency of - * bus information exported to userspace. - */ -int bus_data_generation_check(int generation); -void bus_data_generation_update(void); - -/** - * Some convenience defines for probe routines to return. These are just - * suggested values, and there's nothing magical about them. - * BUS_PROBE_SPECIFIC is for devices that cannot be reprobed, and that no - * possible other driver may exist (typically legacy drivers who don't fallow - * all the rules, or special needs drivers). BUS_PROBE_VENDOR is the - * suggested value that vendor supplied drivers use. This is for source or - * binary drivers that are not yet integrated into the FreeBSD tree. Its use - * in the base OS is prohibited. BUS_PROBE_DEFAULT is the normal return value - * for drivers to use. It is intended that nearly all of the drivers in the - * tree should return this value. BUS_PROBE_LOW_PRIORITY are for drivers that - * have special requirements like when there are two drivers that support - * overlapping series of hardware devices. In this case the one that supports - * the older part of the line would return this value, while the one that - * supports the newer ones would return BUS_PROBE_DEFAULT. BUS_PROBE_GENERIC - * is for drivers that wish to have a generic form and a specialized form, - * like is done with the pci bus and the acpi pci bus. BUS_PROBE_HOOVER is - * for those busses that implement a generic device place-holder for devices on - * the bus that have no more specific driver for them (aka ugen). - */ -#define BUS_PROBE_SPECIFIC 0 /* Only I can use this device */ -#define BUS_PROBE_VENDOR (-10) /* Vendor supplied driver */ -#define BUS_PROBE_DEFAULT (-20) /* Base OS default driver */ -#define BUS_PROBE_LOW_PRIORITY (-40) /* Older, less desirable drivers */ -#define BUS_PROBE_GENERIC (-100) /* generic driver for dev */ -#define BUS_PROBE_HOOVER (-500) /* Generic dev for all devs on bus */ - -/** - * Shorthand for constructing method tables. - */ -#define DEVMETHOD KOBJMETHOD - -/* - * Some common device interfaces. - */ -#include "device_if.h" -#include "bus_if.h" -#include - -struct module; - -int driver_module_handler(struct module *, int, void *); - -#define DRL_LEVELS 5 -#define DRL_LOWEST 0 -#define DRL_LOWER 1 -#define DRL_MIDDLE 2 -#define DRL_UPPER 3 -#define DRL_TOPMOST 4 -/** - * Module support for automatically adding drivers to busses. - */ -struct drv_internal { - kobj_class_t devops; +/*- + * Copyright (c) 1997,1998,2003 Doug Rabson + * 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. + * 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 + * 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. + * + * $FreeBSD: src/sys/sys/bus.h,v 1.70.2.4 2006/12/15 21:33:23 imp Exp $ + */ + +#ifndef _SYS_BUS_H_ +#define _SYS_BUS_H_ + +/** + * @defgroup NEWBUS newbus - a generic framework for managing devices + * @{ + */ + +/** + * @brief Interface information structure. + */ +struct u_businfo { + int ub_version; /**< @brief interface version */ +#define BUS_USER_VERSION 1 + int ub_generation; /**< @brief generation count */ +}; + +/** + * @brief State of the device. + */ +typedef enum device_state { + DS_RAW, + DS_NOTPRESENT, /**< @brief not probed or probe failed */ + DS_ALIVE, /**< @brief probe succeeded */ + DS_ATTACHED, /**< @brief attach method called */ + DS_BUSY /**< @brief device is open */ +} device_state_t; + +/** + * @brief Device information exported to userspace. + */ +struct u_device { + uintptr_t dv_handle; + uintptr_t dv_parent; + + char dv_name[32]; /**< @brief Name of device in tree. */ + char dv_desc[32]; /**< @brief Driver description */ + char dv_drivername[32]; /**< @brief Driver name */ + char dv_pnpinfo[128]; /**< @brief Plug and play info */ + char dv_location[128]; /**< @brief Where is the device? */ + uint32_t dv_devflags; /**< @brief API Flags for device */ + uint16_t dv_flags; /**< @brief flags for dev date */ + device_state_t dv_state; /**< @brief State of attachment */ + /* XXX more driver info? */ +}; + +#ifdef _KERNEL + +#include +#include + +/** + * devctl hooks. Typically one should use the devctl_notify + * hook to send the message. However, devctl_queue_data is also + * included in case devctl_notify isn't sufficiently general. + */ +void devctl_notify(const char *__system, const char *__subsystem, + const char *__type, const char *__data); +void devctl_queue_data(char *__data); + +/* + * Forward declarations + */ +typedef struct device *device_t; + +/** + * @brief A device driver (included mainly for compatibility with + * FreeBSD 4.x). + */ +typedef struct kobj_class driver_t; + +/** + * @brief A device class + * + * The devclass object has two main functions in the system. The first + * is to manage the allocation of unit numbers for device instances + * and the second is to hold the list of device drivers for a + * particular bus type. Each devclass has a name and there cannot be + * two devclasses with the same name. This ensures that unique unit + * numbers are allocated to device instances. + * + * Drivers that support several different bus attachments (e.g. isa, + * pci, pccard) should all use the same devclass to ensure that unit + * numbers do not conflict. + * + * Each devclass may also have a parent devclass. This is used when + * searching for device drivers to allow a form of inheritance. When + * matching drivers with devices, first the driver list of the parent + * device's devclass is searched. If no driver is found in that list, + * the search continues in the parent devclass (if any). + */ +typedef struct devclass *devclass_t; + +/** + * @brief A device method (included mainly for compatibility with + * FreeBSD 4.x). + */ +#define device_method_t kobj_method_t + +/** + * @brief A driver interrupt service routine + */ +typedef void driver_intr_t(void*); + +/** + * @brief Interrupt type bits. + * + * These flags are used both by newbus interrupt + * registration (nexus.c) and also in struct intrec, which defines + * interrupt properties. + * + * XXX We should probably revisit this and remove the vestiges of the + * spls implicit in names like INTR_TYPE_TTY. In the meantime, don't + * confuse things by renaming them (Grog, 18 July 2000). + * + * We define this in terms of bits because some devices may belong + * to multiple classes (and therefore need to be included in + * multiple interrupt masks, which is what this really serves to + * indicate. Buses which do interrupt remapping will want to + * change their type to reflect what sort of devices are underneath. + */ +enum intr_type { + INTR_TYPE_TTY = 1, + INTR_TYPE_BIO = 2, + INTR_TYPE_NET = 4, + INTR_TYPE_CAM = 8, + INTR_TYPE_MISC = 16, + INTR_TYPE_CLK = 32, + INTR_TYPE_AV = 64, + INTR_FAST = 128, + INTR_EXCL = 256, /* exclusive interrupt */ + INTR_MPSAFE = 512, /* this interrupt is SMP safe */ + INTR_ENTROPY = 1024 /* this interrupt provides entropy */ +}; + +enum intr_trigger { + INTR_TRIGGER_CONFORM = 0, + INTR_TRIGGER_EDGE = 1, + INTR_TRIGGER_LEVEL = 2 +}; + +enum intr_polarity { + INTR_POLARITY_CONFORM = 0, + INTR_POLARITY_HIGH = 1, + INTR_POLARITY_LOW = 2 +}; + +typedef int (*devop_t)(void); + +/** + * @brief This structure is deprecated. + * + * Use the kobj(9) macro DEFINE_CLASS to + * declare classes which implement device drivers. + */ +struct driver { + KOBJ_CLASS_FIELDS; +}; + +/* + * Definitions for drivers which need to keep simple lists of resources + * for their child devices. + */ +struct resource; + +/** + * @brief An entry for a single resource in a resource list. + */ +struct resource_list_entry { + STAILQ_ENTRY(resource_list_entry) link; + int type; /**< @brief type argument to alloc_resource */ + int rid; /**< @brief resource identifier */ + struct resource *res; /**< @brief the real resource when allocated */ + u_long start; /**< @brief start of resource range */ + u_long end; /**< @brief end of resource range */ + u_long count; /**< @brief count within range */ +}; +STAILQ_HEAD(resource_list, resource_list_entry); + +void resource_list_init(struct resource_list *rl); +void resource_list_free(struct resource_list *rl); +struct resource_list_entry * + resource_list_add(struct resource_list *rl, + int type, int rid, + u_long start, u_long end, u_long count); +int resource_list_add_next(struct resource_list *rl, + int type, + u_long start, u_long end, u_long count); +struct resource_list_entry* + resource_list_find(struct resource_list *rl, + int type, int rid); +void resource_list_delete(struct resource_list *rl, + int type, int rid); +struct resource * + resource_list_alloc(struct resource_list *rl, + device_t bus, device_t child, + int type, int *rid, + u_long start, u_long end, + u_long count, u_int flags); +int resource_list_release(struct resource_list *rl, + device_t bus, device_t child, + int type, int rid, struct resource *res); +void resource_list_purge(struct resource_list *rl); +int resource_list_print_type(struct resource_list *rl, + const char *name, int type, + const char *format); + +/* + * The root bus, to which all top-level busses are attached. + */ +extern device_t root_bus; +extern devclass_t root_devclass; +void root_bus_configure(void); + +/* + * Useful functions for implementing busses. + */ + +int bus_generic_activate_resource(device_t dev, device_t child, int type, + int rid, struct resource *r); +device_t + bus_generic_add_child(device_t dev, int order, const char *name, + int unit); +struct resource * + bus_generic_alloc_resource(device_t bus, device_t child, int type, + int *rid, u_long start, u_long end, + u_long count, u_int flags); +int bus_generic_attach(device_t dev); +int bus_generic_child_present(device_t dev, device_t child); +int bus_generic_config_intr(device_t, int, enum intr_trigger, + enum intr_polarity); +int bus_generic_deactivate_resource(device_t dev, device_t child, int type, + int rid, struct resource *r); +int bus_generic_detach(device_t dev); +void bus_generic_driver_added(device_t dev, driver_t *driver); +struct resource_list * + bus_generic_get_resource_list (device_t, device_t); +int bus_print_child_header(device_t dev, device_t child); +int bus_print_child_footer(device_t dev, device_t child); +int bus_generic_print_child(device_t dev, device_t child); +int bus_generic_probe(device_t dev); +int bus_generic_read_ivar(device_t dev, device_t child, int which, + uintptr_t *result); +int bus_generic_release_resource(device_t bus, device_t child, + int type, int rid, struct resource *r); +int bus_generic_resume(device_t dev); +int bus_generic_setup_intr(device_t dev, device_t child, + struct resource *irq, int flags, + driver_intr_t *intr, void *arg, void **cookiep); + +struct resource * + bus_generic_rl_alloc_resource (device_t, device_t, int, int *, + u_long, u_long, u_long, u_int); +void bus_generic_rl_delete_resource (device_t, device_t, int, int); +int bus_generic_rl_get_resource (device_t, device_t, int, int, u_long *, + u_long *); +int bus_generic_rl_set_resource (device_t, device_t, int, int, u_long, + u_long); +int bus_generic_rl_release_resource (device_t, device_t, int, int, + struct resource *); + +int bus_generic_shutdown(device_t dev); +int bus_generic_suspend(device_t dev); +int bus_generic_teardown_intr(device_t dev, device_t child, + struct resource *irq, void *cookie); +int bus_generic_write_ivar(device_t dev, device_t child, int which, + uintptr_t value); + +/* + * Wrapper functions for the BUS_*_RESOURCE methods to make client code + * a little simpler. + */ +struct resource *bus_alloc_resource(device_t dev, int type, int *rid, + u_long start, u_long end, u_long count, + u_int flags); +int bus_activate_resource(device_t dev, int type, int rid, + struct resource *r); +int bus_deactivate_resource(device_t dev, int type, int rid, + struct resource *r); +int bus_release_resource(device_t dev, int type, int rid, + struct resource *r); +int bus_free_resource(device_t dev, int type, struct resource *r); +int bus_setup_intr(device_t dev, struct resource *r, int flags, + driver_intr_t handler, void *arg, void **cookiep); +int bus_teardown_intr(device_t dev, struct resource *r, void *cookie); +int bus_set_resource(device_t dev, int type, int rid, + u_long start, u_long count); +int bus_get_resource(device_t dev, int type, int rid, + u_long *startp, u_long *countp); +u_long bus_get_resource_start(device_t dev, int type, int rid); +u_long bus_get_resource_count(device_t dev, int type, int rid); +void bus_delete_resource(device_t dev, int type, int rid); +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) +{ + return (bus_alloc_resource(dev, type, rid, 0ul, ~0ul, 1, flags)); +} + +/* >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Dec 25 20:29:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7911F16A46E; Tue, 25 Dec 2007 20:29:12 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B80B216A468 for ; Tue, 25 Dec 2007 20:29:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8486213C458 for ; Tue, 25 Dec 2007 20:29:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPKTBKY038846 for ; Tue, 25 Dec 2007 20:29:11 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPKTACB038843 for perforce@freebsd.org; Tue, 25 Dec 2007 20:29:10 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 20:29:10 GMT Message-Id: <200712252029.lBPKTACB038843@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 131613 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 20:29:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131613 Change 131613 by hselasky@hselasky_laptop001 on 2007/12/25 20:29:08 Make the "usbd_clear_stall_callback()" NULL safe. Also add a line that clears the "stall_pipe" flag automatically when using the "usbd_clear_stall_callback()". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#89 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#89 (text+ko) ==== @@ -3698,6 +3698,8 @@ * xfer1: Clear Stall Control Transfer * xfer2: Stalled USB Transfer * + * This function is NULL safe. + * * Return values: * 0: In progress * Else: Finished @@ -3708,6 +3710,11 @@ { usb_device_request_t req; + if (xfer2 == NULL) { + /* looks like we are tearing down */ + PRINTFN(0, ("NULL input parameter\n")); + return (0); + } mtx_assert(xfer1->priv_mtx, MA_OWNED); mtx_assert(xfer2->priv_mtx, MA_OWNED); @@ -3756,6 +3763,9 @@ } break; } + + xfer2->flags.stall_pipe = 0; /* stop stalling the pipe */ + return (1); /* Clear Stall Finished */ } From owner-p4-projects@FreeBSD.ORG Tue Dec 25 20:44:31 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CD5716A421; Tue, 25 Dec 2007 20:44:31 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3D47916A41A for ; Tue, 25 Dec 2007 20:44:31 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0A2A813C4D1 for ; Tue, 25 Dec 2007 20:44:31 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPKiRiq041741 for ; Tue, 25 Dec 2007 20:44:27 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPKiRif041738 for perforce@freebsd.org; Tue, 25 Dec 2007 20:44:27 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 20:44:27 GMT Message-Id: <200712252044.lBPKiRif041738@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 131615 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 20:44:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=131615 Change 131615 by hselasky@hselasky_laptop001 on 2007/12/25 20:43:32 Update documentation. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/README#30 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/README#30 (text+ko) ==== @@ -380,7 +380,7 @@ started. The transfer is started at the moment the host issues a clear-stall command on the STALL'ed endpoint. This flag can be changed during operation. This flag does only have effect - in USB device mode. + in USB device mode except for control endpoints. - The "bufsize" field sets the total buffer size in bytes. If this field is zero, "wMaxPacketSize" will be used, multiplied by the From owner-p4-projects@FreeBSD.ORG Tue Dec 25 20:57:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 07D3716A468; Tue, 25 Dec 2007 20:57:43 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 856AB16A420 for ; Tue, 25 Dec 2007 20:57:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5128B13C455 for ; Tue, 25 Dec 2007 20:57:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPKvgHO052706 for ; Tue, 25 Dec 2007 20:57:42 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPKvgig052703 for perforce@freebsd.org; Tue, 25 Dec 2007 20:57:42 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 20:57:42 GMT Message-Id: <200712252057.lBPKvgig052703@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 131617 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 20:57:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131617 Change 131617 by hselasky@hselasky_laptop001 on 2007/12/25 20:57:07 Factor out clearing of "stall_pipe" flag, for sake of convenience. The "stall_pipe" flag is mostly used in USB Device Side Mode. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/README#31 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#90 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/README#31 (text+ko) ==== @@ -380,7 +380,9 @@ started. The transfer is started at the moment the host issues a clear-stall command on the STALL'ed endpoint. This flag can be changed during operation. This flag does only have effect - in USB device mode except for control endpoints. + in USB device side mode except for control endpoints. This + flag is cleared before the callback is called in case the USB + transfer state is "USBD_ST_TRANSFERRED". - The "bufsize" field sets the total buffer size in bytes. If this field is zero, "wMaxPacketSize" will be used, multiplied by the ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#90 (text+ko) ==== @@ -2388,6 +2388,8 @@ (!xfer->flags_int.bdma_no_post_sync)) { usbd_bdma_post_sync(xfer); } + /* clear any previous stall command */ + xfer->flags.stall_pipe = 0; callback: /* call processing routine */ (xfer->callback) (xfer); @@ -3336,7 +3338,6 @@ xfer->flags.manual_status = 0; xfer->frlengths[1] = 0; } - xfer->flags.stall_pipe = 0; /* do not stall pipe */ PRINTFN(0, ("success\n")); return (0); /* success */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 21:09:57 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9219616A419; Tue, 25 Dec 2007 21:09:57 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0457216A417 for ; Tue, 25 Dec 2007 21:09:57 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DC2F813C457 for ; Tue, 25 Dec 2007 21:09:56 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPL9u5B056695 for ; Tue, 25 Dec 2007 21:09:56 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPL9uxT056692 for perforce@freebsd.org; Tue, 25 Dec 2007 21:09:56 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 21:09:56 GMT Message-Id: <200712252109.lBPL9uxT056692@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 131619 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 21:09:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=131619 Change 131619 by hselasky@hselasky_laptop001 on 2007/12/25 21:09:50 This commit adds the following to the "if_cdce" driver: o Interrupt endpoint support. o Full Device Side Mode support. o Debug prints. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#37 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdcereg.h#14 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#37 (text+ko) ==== @@ -73,11 +73,15 @@ static device_attach_t cdce_attach; static device_detach_t cdce_detach; static device_shutdown_t cdce_shutdown; +static usb_handle_request_t cdce_handle_request; static usbd_callback_t cdce_bulk_write_clear_stall_callback; static usbd_callback_t cdce_bulk_write_callback; static usbd_callback_t cdce_bulk_read_clear_stall_callback; static usbd_callback_t cdce_bulk_read_callback; +static usbd_callback_t cdce_intr_read_clear_stall_callback; +static usbd_callback_t cdce_intr_read_callback; +static usbd_callback_t cdce_intr_write_callback; static void cdce_start_cb(struct ifnet *ifp); static void cdce_start_transfers(struct cdce_softc *sc); @@ -88,18 +92,37 @@ static int cdce_ifmedia_upd_cb(struct ifnet *ifp); static void cdce_ifmedia_sts_cb(struct ifnet *const ifp, struct ifmediareq *req); +#ifdef USB_DEBUG +#define DPRINTF(sc,n,fmt,...) \ + do { if (cdce_debug > (n)) { \ + printf("%s:%s: " fmt, (sc)->sc_name, \ + __FUNCTION__,## __VA_ARGS__); } } while (0) + +static int cdce_debug = 0; + +SYSCTL_NODE(_hw_usb, OID_AUTO, cdce, CTLFLAG_RW, 0, "USB cdce"); +SYSCTL_INT(_hw_usb_cdce, OID_AUTO, debug, CTLFLAG_RW, &cdce_debug, 0, + "cdce debug level"); +#else #define DPRINTF(...) +#endif -static const struct usbd_config cdce_config[CDCE_ENDPT_MAX] = { +static const struct usbd_config cdce_config[CDCE_N_TRANSFER] = { [0] = { .type = UE_BULK, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, .bufsize = (MCLBYTES + 4), + .if_index = 0, + /* Host Mode */ .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, .mh.callback = &cdce_bulk_write_callback, .mh.timeout = 10000, /* 10 seconds */ + /* Device Mode */ + .md.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .md.callback = &cdce_bulk_read_callback, + .md.timeout = 0, /* no timeout */ }, [1] = { @@ -107,8 +130,15 @@ .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, .bufsize = (MCLBYTES + 4), + .if_index = 0, + /* Host Mode */ .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, .mh.callback = &cdce_bulk_read_callback, + .mh.timeout = 0, /* no timeout */ + /* Device Mode */ + .md.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .md.callback = &cdce_bulk_write_callback, + .md.timeout = 10000, /* 10 seconds */ }, [2] = { @@ -116,10 +146,12 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), + .interval = 50, /* 50ms */ + .if_index = 0, + /* Host Mode Only */ .mh.flags = {}, .mh.callback = &cdce_bulk_write_clear_stall_callback, .mh.timeout = 1000, /* 1 second */ - .interval = 50, /* 50ms */ }, [3] = { @@ -127,14 +159,48 @@ .endpoint = 0x00, /* Control pipe */ .direction = UE_DIR_ANY, .bufsize = sizeof(usb_device_request_t), + .interval = 50, /* 50ms */ + .if_index = 0, + /* Host Mode Only */ .mh.flags = {}, .mh.callback = &cdce_bulk_read_clear_stall_callback, .mh.timeout = 1000, /* 1 second */ + }, + + [4] = { + .type = UE_INTERRUPT, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_IN, + .bufsize = CDCE_IND_SIZE_MAX, + .if_index = 1, + /* Host Mode */ + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,.no_pipe_ok = 1,}, + .mh.callback = &cdce_intr_read_callback, + .mh.timeout = 0, + /* Device Mode */ + .md.flags = {.pipe_bof = 1,.force_short_xfer = 1,.no_pipe_ok = 1,}, + .md.callback = &cdce_intr_write_callback, + .md.timeout = 10000, /* 10 seconds */ + }, + + [5] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = UE_DIR_ANY, + .bufsize = sizeof(usb_device_request_t), .interval = 50, /* 50ms */ + .if_index = 1, + /* Host Mode Only */ + .mh.flags = {}, + .mh.callback = &cdce_intr_read_clear_stall_callback, + .mh.timeout = 1000, /* 1 second */ }, }; static device_method_t cdce_methods[] = { + /* USB interface */ + DEVMETHOD(usb_handle_request, cdce_handle_request), + /* Device interface */ DEVMETHOD(device_probe, cdce_probe), DEVMETHOD(device_attach, cdce_attach), @@ -181,9 +247,6 @@ struct usb_attach_arg *uaa = device_get_ivars(dev); usb_interface_descriptor_t *id; - if (uaa->usb_mode != USB_MODE_HOST) { - return (UMATCH_NONE); - } if (uaa->iface == NULL) { return (UMATCH_NONE); } @@ -237,7 +300,8 @@ mtx_init(&(sc->sc_mtx), "cdce lock", NULL, MTX_DEF | MTX_RECURSE); if (sc->sc_flags & CDCE_FLAG_NO_UNION) { - sc->sc_data_iface_index = uaa->iface_index; + sc->sc_ifaces_index[0] = uaa->iface_index; + sc->sc_ifaces_index[1] = uaa->iface_index; sc->sc_data_iface_no = 0; /* not used */ goto alloc_transfers; } @@ -261,7 +325,8 @@ if (id && (id->bInterfaceNumber == sc->sc_data_iface_no)) { - sc->sc_data_iface_index = i; + sc->sc_ifaces_index[0] = i; + sc->sc_ifaces_index[1] = uaa->iface_index; USBD_SET_IFACE_NO_PROBE(uaa->device, i); break; } @@ -295,7 +360,7 @@ for (i = 0; i < 32; i++) { error = usbd_set_alt_interface_index - (uaa->device, sc->sc_data_iface_index, i); + (uaa->device, sc->sc_ifaces_index[0], i); if (error) { device_printf(dev, "no valid alternate " @@ -303,8 +368,8 @@ goto detach; } error = usbd_transfer_setup - (uaa->device, &(sc->sc_data_iface_index), - sc->sc_xfer, cdce_config, CDCE_ENDPT_MAX, + (uaa->device, sc->sc_ifaces_index, + sc->sc_xfer, cdce_config, CDCE_N_TRANSFER, sc, &(sc->sc_mtx)); if (error == 0) { @@ -389,6 +454,11 @@ ether_ifattach(ifp, eaddr); + /* start the interrupt transfer, if any */ + mtx_lock(&(sc->sc_mtx)); + usbd_transfer_start(sc->sc_xfer[4]); + mtx_unlock(&(sc->sc_mtx)); + return (0); /* success */ detach: @@ -411,7 +481,7 @@ mtx_unlock(&(sc->sc_mtx)); /* stop all USB transfers first */ - usbd_transfer_unsetup(sc->sc_xfer, CDCE_ENDPT_MAX); + usbd_transfer_unsetup(sc->sc_xfer, CDCE_N_TRANSFER); /* get rid of any late children */ bus_generic_detach(dev); @@ -463,7 +533,6 @@ if (usbd_clear_stall_callback(xfer, xfer_other)) { DPRINTF(sc, 0, "stall cleared\n"); - sc->sc_flags &= ~CDCE_FLAG_WRITE_STALL; usbd_transfer_start(xfer_other); } return; @@ -484,8 +553,9 @@ ifp->if_opackets++; case USBD_ST_SETUP: - - if (sc->sc_flags & CDCE_FLAG_WRITE_STALL) { +tr_setup: + if (xfer->flags.stall_pipe && + (xfer->flags_int.usb_mode == USB_MODE_HOST)) { usbd_transfer_start(sc->sc_xfer[2]); goto done; } @@ -531,8 +601,8 @@ if (xfer->error != USBD_CANCELLED) { /* try to clear stall first */ - sc->sc_flags |= CDCE_FLAG_WRITE_STALL; - usbd_transfer_start(sc->sc_xfer[2]); + xfer->flags.stall_pipe = 1; + goto tr_setup; } ifp->if_oerrors++; return; @@ -653,11 +723,16 @@ ifp->if_drv_flags |= IFF_DRV_RUNNING; - sc->sc_flags |= (CDCE_FLAG_READ_STALL | - CDCE_FLAG_WRITE_STALL | + sc->sc_flags |= ( CDCE_FLAG_LL_READY | CDCE_FLAG_HL_READY); + if (sc->sc_xfer[0]) { + sc->sc_xfer[0]->flags.stall_pipe = 1; + } + if (sc->sc_xfer[1]) { + sc->sc_xfer[1]->flags.stall_pipe = 1; + } cdce_start_transfers(sc); mtx_unlock(&(sc->sc_mtx)); @@ -673,7 +748,6 @@ if (usbd_clear_stall_callback(xfer, xfer_other)) { DPRINTF(sc, 0, "stall cleared\n"); - sc->sc_flags &= ~CDCE_FLAG_READ_STALL; usbd_transfer_start(xfer_other); } return; @@ -716,8 +790,8 @@ case USBD_ST_SETUP: tr_setup: - - if (sc->sc_flags & CDCE_FLAG_READ_STALL) { + if (xfer->flags.stall_pipe && + (xfer->flags_int.usb_mode == USB_MODE_HOST)) { usbd_transfer_start(sc->sc_xfer[3]); } else { xfer->frlengths[0] = xfer->max_data_length; @@ -739,8 +813,8 @@ default: /* Error */ if (xfer->error != USBD_CANCELLED) { /* try to clear stall first */ - sc->sc_flags |= CDCE_FLAG_READ_STALL; - usbd_transfer_start(sc->sc_xfer[3]); + xfer->flags.stall_pipe = 1; + goto tr_setup; } DPRINTF(sc, 0, "bulk read error, %s\n", usbd_errstr(xfer->error)); @@ -752,7 +826,6 @@ static int cdce_ifmedia_upd_cb(struct ifnet *ifp) { - /* no-op, cdce has only 1 possible media type */ return (0); } @@ -764,3 +837,97 @@ req->ifm_status = IFM_AVALID | IFM_ACTIVE; req->ifm_active = IFM_ETHER | IFM_10_T; } + +static void +cdce_intr_read_clear_stall_callback(struct usbd_xfer *xfer) +{ + struct cdce_softc *sc = xfer->priv_sc; + struct usbd_xfer *xfer_other = sc->sc_xfer[4]; + + if (usbd_clear_stall_callback(xfer, xfer_other)) { + DPRINTF(sc, 0, "stall cleared\n"); + usbd_transfer_start(xfer_other); + } + return; +} + +static void +cdce_intr_read_callback(struct usbd_xfer *xfer) +{ + struct cdce_softc *sc = xfer->priv_sc; + + switch (USBD_GET_STATE(xfer)) { + case USBD_ST_TRANSFERRED: + + DPRINTF(sc, 0, "Received %d bytes\n", + xfer->actlen); + + /* TODO: decode some indications */ + + case USBD_ST_SETUP: +tr_setup: + if (xfer->flags.stall_pipe && + (xfer->flags_int.usb_mode == USB_MODE_HOST)) { + usbd_transfer_start(sc->sc_xfer[5]); + } else { + xfer->frlengths[0] = xfer->max_data_length; + usbd_start_hardware(xfer); + } + break; + + default: /* Error */ + if (xfer->error != USBD_CANCELLED) { + /* start clear stall */ + xfer->flags.stall_pipe = 1; + goto tr_setup; + } + break; + } + return; +} + +static void +cdce_intr_write_callback(struct usbd_xfer *xfer) +{ + struct cdce_softc *sc = xfer->priv_sc; + + switch (USBD_GET_STATE(xfer)) { + case USBD_ST_TRANSFERRED: + + DPRINTF(sc, 0, "Transferred %d bytes\n", xfer->actlen); + + case USBD_ST_SETUP: +tr_setup: + if (xfer->flags.stall_pipe && + (xfer->flags_int.usb_mode == USB_MODE_HOST)) { + usbd_transfer_start(sc->sc_xfer[5]); + } else { +#if 0 + xfer->frlengths[0] = XXX; + usbd_start_hardware(xfer); +#endif + } + break; + + default: /* Error */ + if (xfer->error != USBD_CANCELLED) { + /* start clear stall */ + xfer->flags.stall_pipe = 1; + goto tr_setup; + } + break; + } + return; +} + +static int +cdce_handle_request(device_t dev, const void *req, void **pptr, + uint16_t *plen, uint16_t offset, uint8_t is_complete) +{ +#ifdef USB_DEBUG + struct cdce_softc *sc = device_get_softc(dev); + + DPRINTF(sc, 0, "\n"); +#endif + return (ENXIO); /* use builtin handling */ +} ==== //depot/projects/usb/src/sys/dev/usb/if_cdcereg.h#14 (text+ko) ==== @@ -35,7 +35,8 @@ #ifndef _USB_IF_CDCEREG_H_ #define _USB_IF_CDCEREG_H_ -#define CDCE_ENDPT_MAX 4 +#define CDCE_N_TRANSFER 6 +#define CDCE_IND_SIZE_MAX 32 /* bytes */ struct cdce_type { struct usb_devno cdce_dev; @@ -49,7 +50,7 @@ struct mtx sc_mtx; struct ifnet *sc_ifp; - struct usbd_xfer *sc_xfer[CDCE_ENDPT_MAX]; + struct usbd_xfer *sc_xfer[CDCE_N_TRANSFER]; struct usbd_device *sc_udev; device_t sc_dev; @@ -60,12 +61,10 @@ #define CDCE_FLAG_NO_UNION 0x0002 #define CDCE_FLAG_LL_READY 0x0004 #define CDCE_FLAG_HL_READY 0x0008 -#define CDCE_FLAG_WRITE_STALL 0x0010 -#define CDCE_FLAG_READ_STALL 0x0020 uint8_t sc_name[16]; uint8_t sc_data_iface_no; - uint8_t sc_data_iface_index; + uint8_t sc_ifaces_index[2]; }; #endif /* _USB_IF_CDCEREG_H_ */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 21:17:05 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8C3A016A473; Tue, 25 Dec 2007 21:17:05 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0D33616A41A for ; Tue, 25 Dec 2007 21:17:05 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id ED6FF13C46E for ; Tue, 25 Dec 2007 21:17:04 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPLH4L1058215 for ; Tue, 25 Dec 2007 21:17:04 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPLH4oM058212 for perforce@freebsd.org; Tue, 25 Dec 2007 21:17:04 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 21:17:04 GMT Message-Id: <200712252117.lBPLH4oM058212@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 131620 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 21:17:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=131620 Change 131620 by hselasky@hselasky_laptop001 on 2007/12/25 21:16:44 Add missing "usb_if.h" to all USB makefiles. Affected files ... .. //depot/projects/usb/src/sys/modules/cdce/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/rum/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uark/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ubser/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ugen/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/ugensa/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uhid/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uipaq/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ukbd/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/ulpt/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/umoscom/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ums/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/usb/Makefile#6 edit Differences ... ==== //depot/projects/usb/src/sys/modules/cdce/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_cdce -SRCS= if_cdce.c opt_usb.h device_if.h bus_if.h +SRCS= if_cdce.c opt_usb.h device_if.h bus_if.h usb_if.h SRCS+= usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/rum/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD = if_rum -SRCS = if_rum.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS = if_rum.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uark/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uark -SRCS= uark.c opt_usb.h bus_if.h device_if.h usbdevs.h +SRCS= uark.c opt_usb.h bus_if.h usb_if.h device_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ubser/Makefile#3 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= ubser -SRCS= ubser.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= ubser.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ugen/Makefile#4 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ugen -SRCS= bus_if.h device_if.h opt_usb.h ugen.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugen.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ugensa/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ugensa -SRCS= bus_if.h device_if.h opt_usb.h ugensa.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugensa.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uhid/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uhid -SRCS= bus_if.h device_if.h opt_usb.h uhid.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uhid.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uipaq/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= uipaq -SRCS= uipaq.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= uipaq.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ukbd/Makefile#4 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ukbd -SRCS= bus_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ +SRCS= bus_if.h usb_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ usbdevs.h ukbd.c .if !defined(KERNBUILDDIR) ==== //depot/projects/usb/src/sys/modules/ulpt/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ulpt -SRCS= bus_if.h device_if.h opt_usb.h ulpt.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ulpt.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/umoscom/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umoscom -SRCS= bus_if.h device_if.h opt_usb.h umoscom.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umoscom.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ums/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ums -SRCS= bus_if.h device_if.h opt_usb.h ums.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ums.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/usb/Makefile#6 (text+ko) ==== @@ -5,7 +5,7 @@ .PATH: $S/dev/usb $S/pci KMOD= usb -SRCS= bus_if.h device_if.h usb_if.h usb_if.c vnode_if.h \ +SRCS= bus_if.h usb_if.h device_if.h usb_if.c vnode_if.h \ opt_usb.h \ uhub.c \ usbdevs.h usbdevs_data.h \ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 21:58:54 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CAA2116A469; Tue, 25 Dec 2007 21:58:53 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 58E8A16A468 for ; Tue, 25 Dec 2007 21:58:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 426C613C46A for ; Tue, 25 Dec 2007 21:58:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPLwqxV064161 for ; Tue, 25 Dec 2007 21:58:52 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPLwoYe064158 for perforce@freebsd.org; Tue, 25 Dec 2007 21:58:50 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 21:58:50 GMT Message-Id: <200712252158.lBPLwoYe064158@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 131623 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 21:58:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=131623 Change 131623 by hselasky@hselasky_laptop001 on 2007/12/25 21:58:42 More makefiles that need "usb_if.h" added. Affected files ... .. //depot/projects/usb/src/sys/modules/ata/atausb/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/aue/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/axe/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/cdce/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/cue/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/if_ndis/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/kue/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ndis/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/netgraph/bluetooth/ubt/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/rue/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/rum/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/slhci/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/sound/driver/uaudio/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uark/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ubsa/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ubser/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/uchcom/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ucom/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ucycom/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/udav/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/udbp/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ufm/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ufoma/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uftdi/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ugen/Makefile#5 edit .. //depot/projects/usb/src/sys/modules/ugensa/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/uhid/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/uipaq/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ukbd/Makefile#5 edit .. //depot/projects/usb/src/sys/modules/ulpt/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/umass/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/umct/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/umodem/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/umoscom/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ums/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/uplcom/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/ural/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/urio/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/usb/Makefile#7 edit .. //depot/projects/usb/src/sys/modules/uscanner/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uvisor/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/uvscom/Makefile#2 edit .. //depot/projects/usb/src/sys/modules/zyd/Makefile#2 edit Differences ... ==== //depot/projects/usb/src/sys/modules/ata/atausb/Makefile#2 (text) ==== @@ -4,6 +4,6 @@ KMOD= atausb SRCS= ata-usb.c -SRCS+= opt_usb.h opt_ata.h ata_if.h device_if.h bus_if.h pci_if.h +SRCS+= opt_usb.h opt_ata.h ata_if.h device_if.h bus_if.h usb_if.h pci_if.h .include ==== //depot/projects/usb/src/sys/modules/aue/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_aue -SRCS= if_aue.c opt_usb.h device_if.h bus_if.h -SRCS+= miibus_if.h usbdevs.h +SRCS= if_aue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/axe/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_axe -SRCS= if_axe.c opt_usb.h device_if.h bus_if.h -SRCS+= miibus_if.h usbdevs.h +SRCS= if_axe.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/cdce/Makefile#3 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_cdce -SRCS= if_cdce.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS= if_cdce.c opt_usb.h device_if.h bus_if.h usb_if.h SRCS+= usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/cue/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_cue -SRCS= if_cue.c opt_usb.h device_if.h bus_if.h -SRCS+= miibus_if.h usbdevs.h +SRCS= if_cue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/if_ndis/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ KMOD= if_ndis SRCS= if_ndis.c if_ndis_pci.c if_ndis_pccard.c if_ndis_usb.c -SRCS+= device_if.h bus_if.h pci_if.h card_if.h pccarddevs.h +SRCS+= device_if.h bus_if.h usb_if.h pci_if.h card_if.h pccarddevs.h SRCS+= opt_usb.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/kue/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_kue -SRCS= if_kue.c opt_usb.h device_if.h bus_if.h -SRCS+= miibus_if.h usbdevs.h +SRCS= if_kue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ndis/Makefile#2 (text+ko) ==== @@ -5,7 +5,7 @@ KMOD= ndis SRCS= subr_pe.c subr_ndis.c subr_hal.c subr_ntoskrnl.c kern_ndis.c SRCS+= kern_windrv.c subr_usbd.c -SRCS+= device_if.h bus_if.h pci_if.h vnode_if.h +SRCS+= device_if.h bus_if.h usb_if.h pci_if.h vnode_if.h .if ${MACHINE_ARCH} == "amd64" SRCS+= winx64_wrap.S ==== //depot/projects/usb/src/sys/modules/netgraph/bluetooth/ubt/Makefile#2 (text+ko) ==== @@ -7,6 +7,6 @@ -I${.CURDIR}/../../../../netgraph/bluetooth/drivers/ubt KMOD= ng_ubt -SRCS= ng_ubt.c bus_if.h device_if.h opt_usb.h usbdevs.h +SRCS= ng_ubt.c bus_if.h usb_if.h device_if.h opt_usb.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#2 (text+ko) ==== @@ -7,6 +7,6 @@ -I${.CURDIR}/../../../../netgraph/bluetooth/drivers/ubtbcmfw KMOD= ubtbcmfw -SRCS= ubtbcmfw.c bus_if.h device_if.h opt_usb.h usbdevs.h +SRCS= ubtbcmfw.c bus_if.h usb_if.h device_if.h opt_usb.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/rue/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_rue -SRCS= if_rue.c opt_usb.h device_if.h bus_if.h -SRCS+= miibus_if.h usbdevs.h +SRCS= if_rue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/rum/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD = if_rum -SRCS = if_rum.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h +SRCS = if_rum.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/slhci/Makefile#3 (text+ko) ==== @@ -5,6 +5,6 @@ KMOD= slhci SRCS= sl811hs.c slhci_pccard.c -SRCS+= opt_slhci.h opt_usb.h device_if.h bus_if.h usbdevs.h card_if.h power_if.h pccarddevs.h +SRCS+= opt_slhci.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h card_if.h power_if.h pccarddevs.h .include ==== //depot/projects/usb/src/sys/modules/sound/driver/uaudio/Makefile#2 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../../../dev/sound/usb KMOD= snd_uaudio -SRCS= device_if.h bus_if.h opt_usb.h +SRCS= device_if.h bus_if.h usb_if.h opt_usb.h SRCS+= uaudio.c uaudio_pcm.c .include ==== //depot/projects/usb/src/sys/modules/uark/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uark -SRCS= uark.c opt_usb.h bus_if.h usb_if.h device_if.h usbdevs.h +SRCS= uark.c opt_usb.h bus_if.h usb_if.h device_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ubsa/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= ubsa -SRCS= ubsa.c ucomvar.h opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= ubsa.c ucomvar.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ubser/Makefile#4 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= ubser -SRCS= ubser.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h +SRCS= ubser.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uchcom/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= uchcom -SRCS= uchcom.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= uchcom.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ucom/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= ucom -SRCS= ucom.c ucomvar.h opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= ucom.c ucomvar.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ucycom/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= ucycom -SRCS= ucycom.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= ucycom.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/udav/Makefile#2 (text+ko) ==== @@ -3,7 +3,7 @@ S= ${.CURDIR}/../.. .PATH: $S/dev/usb KMOD= if_udav -SRCS= if_udav.c opt_usb.h device_if.h bus_if.h opt_inet.h -SRCS+= miibus_if.h usbdevs.h +SRCS= if_udav.c opt_usb.h device_if.h bus_if.h usb_if.h opt_inet.h +SRCS+= miibus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/udbp/Makefile#2 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= udbp -SRCS= bus_if.h device_if.h \ +SRCS= bus_if.h usb_if.h device_if.h \ opt_usb.h opt_netgraph.h \ udbp.c usbdevs.h ==== //depot/projects/usb/src/sys/modules/ufm/Makefile#2 (text+ko) ==== @@ -2,6 +2,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ufm -SRCS= bus_if.h device_if.h vnode_if.h opt_usb.h ufm.c dsbr100io.h usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h vnode_if.h opt_usb.h ufm.c dsbr100io.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ufoma/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ufoma -SRCS= bus_if.h device_if.h opt_usb.h ufoma.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ufoma.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uftdi/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= uftdi -SRCS= uftdi.c uftdireg.h opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= uftdi.c uftdireg.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ugen/Makefile#5 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ugen -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugen.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugen.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ugensa/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ugensa -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugensa.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugensa.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uhid/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uhid -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uhid.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uhid.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uipaq/Makefile#3 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= uipaq -SRCS= uipaq.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h +SRCS= uipaq.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ukbd/Makefile#5 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ukbd -SRCS= bus_if.h usb_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ +SRCS= bus_if.h usb_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ usbdevs.h ukbd.c .if !defined(KERNBUILDDIR) ==== //depot/projects/usb/src/sys/modules/ulpt/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ulpt -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ulpt.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ulpt.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/umass/Makefile#2 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umass -SRCS= bus_if.h device_if.h \ +SRCS= bus_if.h usb_if.h device_if.h \ opt_usb.h opt_cam.h opt_scsi.h \ umass.c usbdevs.h ==== //depot/projects/usb/src/sys/modules/umct/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= umct -SRCS= umct.c ucomvar.h opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= umct.c ucomvar.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/umodem/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umodem -SRCS= bus_if.h device_if.h opt_usb.h umodem.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umodem.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/umoscom/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umoscom -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umoscom.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umoscom.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ums/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ums -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ums.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ums.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uplcom/Makefile#2 (text+ko) ==== @@ -5,6 +5,6 @@ KMOD= uplcom SRCS= uplcom.c ucomvar.h opt_usb.h opt_uplcom.h \ - device_if.h bus_if.h usbdevs.h + device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ural/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD = if_ural -SRCS = if_ural.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS = if_ural.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/urio/Makefile#2 (text+ko) ==== @@ -5,6 +5,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= urio -SRCS= bus_if.h device_if.h opt_usb.h urio.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h urio.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/usb/Makefile#7 (text+ko) ==== @@ -5,7 +5,7 @@ .PATH: $S/dev/usb $S/pci KMOD= usb -SRCS= bus_if.h usb_if.h device_if.h usb_if.c vnode_if.h \ +SRCS= bus_if.h usb_if.h device_if.h usb_if.c vnode_if.h \ opt_usb.h \ uhub.c \ usbdevs.h usbdevs_data.h \ ==== //depot/projects/usb/src/sys/modules/uscanner/Makefile#2 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uscanner -SRCS= bus_if.h device_if.h opt_usb.h uscanner.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uscanner.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uvisor/Makefile#2 (text+ko) ==== @@ -4,6 +4,6 @@ .PATH: $S/dev/usb KMOD= uvisor -SRCS= uvisor.c ucomvar.h opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS= uvisor.c ucomvar.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uvscom/Makefile#2 (text+ko) ==== @@ -5,6 +5,6 @@ KMOD= uvscom SRCS= uvscom.c ucomvar.h opt_usb.h opt_uvscom.h \ - device_if.h bus_if.h usbdevs.h + device_if.h bus_if.h usb_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/zyd/Makefile#2 (text+ko) ==== @@ -5,6 +5,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD = if_zyd -SRCS = if_zyd.c opt_usb.h device_if.h bus_if.h usbdevs.h +SRCS = if_zyd.c opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h .include From owner-p4-projects@FreeBSD.ORG Tue Dec 25 22:21:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B410916A46C; Tue, 25 Dec 2007 22:21:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 468BD16A420 for ; Tue, 25 Dec 2007 22:21:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2DC9213C457 for ; Tue, 25 Dec 2007 22:21:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPMLGZM069018 for ; Tue, 25 Dec 2007 22:21:16 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPMLG7c069010 for perforce@freebsd.org; Tue, 25 Dec 2007 22:21:16 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 22:21:16 GMT Message-Id: <200712252221.lBPMLG7c069010@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 131625 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 22:21:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131625 Change 131625 by hselasky@hselasky_laptop001 on 2007/12/25 22:20:51 "usb_if.h" related - more Affected files ... .. //depot/projects/usb/src/sys/modules/aue/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/axe/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/cue/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/kue/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/rue/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/udav/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/udbp/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ufm/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ufoma/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/ugen/Makefile#6 edit .. //depot/projects/usb/src/sys/modules/ugensa/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/uhid/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/ukbd/Makefile#6 edit .. //depot/projects/usb/src/sys/modules/ulpt/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/umass/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/umodem/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/umoscom/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/ums/Makefile#4 edit .. //depot/projects/usb/src/sys/modules/urio/Makefile#3 edit .. //depot/projects/usb/src/sys/modules/usb/Makefile#8 edit .. //depot/projects/usb/src/sys/modules/uscanner/Makefile#3 edit Differences ... ==== //depot/projects/usb/src/sys/modules/aue/Makefile#3 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_aue -SRCS= if_aue.c opt_usb.h device_if.h bus_if.h usb_if.h -SRCS+= miibus_if.h usb_if.h usbdevs.h +SRCS= if_aue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/axe/Makefile#3 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_axe -SRCS= if_axe.c opt_usb.h device_if.h bus_if.h usb_if.h -SRCS+= miibus_if.h usb_if.h usbdevs.h +SRCS= if_axe.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/cue/Makefile#3 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_cue -SRCS= if_cue.c opt_usb.h device_if.h bus_if.h usb_if.h -SRCS+= miibus_if.h usb_if.h usbdevs.h +SRCS= if_cue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/kue/Makefile#3 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_kue -SRCS= if_kue.c opt_usb.h device_if.h bus_if.h usb_if.h -SRCS+= miibus_if.h usb_if.h usbdevs.h +SRCS= if_kue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/rue/Makefile#3 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: $S/dev/usb KMOD= if_rue -SRCS= if_rue.c opt_usb.h device_if.h bus_if.h usb_if.h -SRCS+= miibus_if.h usb_if.h usbdevs.h +SRCS= if_rue.c opt_usb.h device_if.h bus_if.h usb_if.h +SRCS+= miibus_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/udav/Makefile#3 (text+ko) ==== @@ -3,7 +3,7 @@ S= ${.CURDIR}/../.. .PATH: $S/dev/usb KMOD= if_udav -SRCS= if_udav.c opt_usb.h device_if.h bus_if.h usb_if.h opt_inet.h -SRCS+= miibus_if.h usb_if.h usbdevs.h +SRCS= if_udav.c opt_usb.h device_if.h bus_if.h usb_if.h opt_inet.h +SRCS+= miibus_if.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/udbp/Makefile#3 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= udbp -SRCS= bus_if.h usb_if.h device_if.h \ +SRCS= bus_if.h usb_if.h device_if.h \ opt_usb.h opt_netgraph.h \ udbp.c usbdevs.h ==== //depot/projects/usb/src/sys/modules/ufm/Makefile#3 (text+ko) ==== @@ -2,6 +2,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ufm -SRCS= bus_if.h usb_if.h device_if.h vnode_if.h opt_usb.h ufm.c dsbr100io.h usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h vnode_if.h opt_usb.h ufm.c dsbr100io.h usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ufoma/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ufoma -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ufoma.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ufoma.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ugen/Makefile#6 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ugen -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugen.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugen.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ugensa/Makefile#4 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ugensa -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugensa.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ugensa.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/uhid/Makefile#4 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uhid -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uhid.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uhid.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ukbd/Makefile#6 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ukbd -SRCS= bus_if.h usb_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ +SRCS= bus_if.h usb_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ usbdevs.h ukbd.c .if !defined(KERNBUILDDIR) ==== //depot/projects/usb/src/sys/modules/ulpt/Makefile#4 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ulpt -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ulpt.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ulpt.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/umass/Makefile#3 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umass -SRCS= bus_if.h usb_if.h device_if.h \ +SRCS= bus_if.h usb_if.h device_if.h \ opt_usb.h opt_cam.h opt_scsi.h \ umass.c usbdevs.h ==== //depot/projects/usb/src/sys/modules/umodem/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umodem -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umodem.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umodem.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/umoscom/Makefile#4 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= umoscom -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umoscom.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h umoscom.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/ums/Makefile#4 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ums -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ums.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h ums.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/urio/Makefile#3 (text+ko) ==== @@ -5,6 +5,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= urio -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h urio.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h urio.c usbdevs.h .include ==== //depot/projects/usb/src/sys/modules/usb/Makefile#8 (text+ko) ==== @@ -5,7 +5,7 @@ .PATH: $S/dev/usb $S/pci KMOD= usb -SRCS= bus_if.h usb_if.h device_if.h usb_if.c vnode_if.h \ +SRCS= bus_if.h usb_if.h device_if.h usb_if.c vnode_if.h \ opt_usb.h \ uhub.c \ usbdevs.h usbdevs_data.h \ ==== //depot/projects/usb/src/sys/modules/uscanner/Makefile#3 (text+ko) ==== @@ -3,6 +3,6 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= uscanner -SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uscanner.c usbdevs.h +SRCS= bus_if.h usb_if.h device_if.h opt_usb.h uscanner.c usbdevs.h .include From owner-p4-projects@FreeBSD.ORG Tue Dec 25 22:44:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D79216A41A; Tue, 25 Dec 2007 22:44:43 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BEEFD16A417 for ; Tue, 25 Dec 2007 22:44:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A589B13C45B for ; Tue, 25 Dec 2007 22:44:42 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPMigNm072825 for ; Tue, 25 Dec 2007 22:44:42 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPMigIp072822 for perforce@freebsd.org; Tue, 25 Dec 2007 22:44:42 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 22:44:42 GMT Message-Id: <200712252244.lBPMigIp072822@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 131627 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 22:44:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131627 Change 131627 by hselasky@hselasky_laptop001 on 2007/12/25 22:44:31 Need a function to clear interrupts. Probably this is not the right way to do it. We need an interrupt-sharing framework around this, but until further it is good enough, hence there is only one device using these kinds of interrupts. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91_pio.c#8 edit .. //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#5 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91_pio.c#8 (text) ==== @@ -384,6 +384,14 @@ return; } +uint32_t +at91_pio_gpio_clear_interrupt(uint32_t pio) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + /* reading this register will clear the interrupts */ + return (PIO[PIO_ISR / 4]); +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/usb/src/sys/arm/at91/at91_piovar.h#5 (text+ko) ==== @@ -40,5 +40,6 @@ int use_deglitch); void at91_pio_gpio_set_interrupt(uint32_t pio, uint32_t data_mask, int enable_interrupt); +uint32_t at91_pio_gpio_clear_interrupt(uint32_t pio); #endif /* ARM_AT91_AT91_PIOVAR_H */ From owner-p4-projects@FreeBSD.ORG Tue Dec 25 22:45:44 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0EE016A474; Tue, 25 Dec 2007 22:45:44 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 53CF816A41A for ; Tue, 25 Dec 2007 22:45:44 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2099213C46A for ; Tue, 25 Dec 2007 22:45:44 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPMjhXb072925 for ; Tue, 25 Dec 2007 22:45:43 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPMjhMN072922 for perforce@freebsd.org; Tue, 25 Dec 2007 22:45:43 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 22:45:43 GMT Message-Id: <200712252245.lBPMjhMN072922@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 131629 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 22:45:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=131629 Change 131629 by hselasky@hselasky_laptop001 on 2007/12/25 22:45:21 The VBUS interrupt is located on PIOB. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91.c#7 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91.c#7 (text) ==== @@ -301,7 +301,7 @@ { "at91_udp", 0, AT91RM92_BASE + AT91RM92_UDP_BASE, AT91RM92_UDP_SIZE, - AT91RM92_IRQ_UDP, AT91RM92_IRQ_PIOD + AT91RM92_IRQ_UDP, AT91RM92_IRQ_PIOB }, { "at91_mci", 0, From owner-p4-projects@FreeBSD.ORG Tue Dec 25 22:47:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E2E4C16A419; Tue, 25 Dec 2007 22:47:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 514A916A417 for ; Tue, 25 Dec 2007 22:47:47 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 373D113C4DB for ; Tue, 25 Dec 2007 22:47:47 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPMlkPA072994 for ; Tue, 25 Dec 2007 22:47:47 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPMlkG7072991 for perforce@freebsd.org; Tue, 25 Dec 2007 22:47:46 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 22:47:46 GMT Message-Id: <200712252247.lBPMlkG7072991@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 131630 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 22:47:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=131630 Change 131630 by hselasky@hselasky_laptop001 on 2007/12/25 22:46:45 Correct VBUS and PULLUP pin. Make sure that the clocks are turned on and off in the correct order. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91_udp.c#2 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91_udp.c#2 (text+ko) ==== @@ -51,11 +51,11 @@ /* Pin Definitions - do they belong here or somewhere else ? */ -#define VBUS_MASK AT91C_PIO_PD4 -#define VBUS_BASE AT91RM92_PIOD_BASE +#define VBUS_MASK AT91C_PIO_PB24 +#define VBUS_BASE AT91RM92_PIOB_BASE -#define PULLUP_MASK AT91C_PIO_PD5 -#define PULLUP_BASE AT91RM92_PIOD_BASE +#define PULLUP_MASK AT91C_PIO_PB22 +#define PULLUP_BASE AT91RM92_PIOB_BASE static device_probe_t at91_udp_probe; static device_attach_t at91_udp_attach; @@ -72,8 +72,13 @@ static void at91_vbus_interrupt(struct at91_udp_softc *sc) { + uint32_t temp; uint8_t vbus_val; + /* XXX temporary clear interrupts here */ + + temp = at91_pio_gpio_clear_interrupt(VBUS_BASE); + /* just forward it */ vbus_val = at91_pio_gpio_get(VBUS_BASE, VBUS_MASK); @@ -87,8 +92,8 @@ { struct at91_udp_softc *sc = arg; + at91_pmc_clock_enable(sc->sc_iclk); at91_pmc_clock_enable(sc->sc_fclk); - at91_pmc_clock_enable(sc->sc_iclk); return; } @@ -97,8 +102,8 @@ { struct at91_udp_softc *sc = arg; + at91_pmc_clock_disable(sc->sc_fclk); at91_pmc_clock_disable(sc->sc_iclk); - at91_pmc_clock_disable(sc->sc_fclk); return; } @@ -152,6 +157,7 @@ * configure VBUS input pin, enable deglitch and enable * interrupt : */ + at91_pio_use_gpio(VBUS_BASE, VBUS_MASK); at91_pio_gpio_input(VBUS_BASE, VBUS_MASK); at91_pio_gpio_set_deglitch(VBUS_BASE, VBUS_MASK, 1); at91_pio_gpio_set_interrupt(VBUS_BASE, VBUS_MASK, 1); @@ -159,10 +165,15 @@ /* * configure PULLUP output pin : */ + at91_pio_use_gpio(PULLUP_BASE, PULLUP_MASK); at91_pio_gpio_output(PULLUP_BASE, PULLUP_MASK, 0); at91_udp_pull_down(sc); + /* wait 10ms for pulldown to stabilise */ + + DELAY(10000); + sc->sc_iclk = at91_pmc_clock_ref("udc_clk"); sc->sc_fclk = at91_pmc_clock_ref("udpck"); @@ -225,19 +236,6 @@ sc->sc_vbus_intr_hdl = NULL; goto error; } - /* - * turn on the clocks from the AT91's point of view. Keep the unit - * in reset. - */ - at91_pmc_clock_enable(sc->sc_iclk); - at91_pmc_clock_enable(sc->sc_fclk); - - /* disable Transceiver */ - AT91_UDP_WRITE_4(&(sc->sc_dci), AT91_UDP_TXVC, AT91_UDP_TXVC_DIS); - - /* disable and clear all interrupts */ - AT91_UDP_WRITE_4(&(sc->sc_dci), AT91_UDP_IDR, 0xFFFFFFFF); - AT91_UDP_WRITE_4(&(sc->sc_dci), AT91_UDP_ICR, 0xFFFFFFFF); err = at9100_dci_init(&(sc->sc_dci)); if (!err) { From owner-p4-projects@FreeBSD.ORG Tue Dec 25 23:48:54 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2FC6116A46E; Tue, 25 Dec 2007 23:48:54 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C9D1716A417 for ; Tue, 25 Dec 2007 23:48:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AB28B13C442 for ; Tue, 25 Dec 2007 23:48:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBPNmrUg083254 for ; Tue, 25 Dec 2007 23:48:53 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBPNmrqb083251 for perforce@freebsd.org; Tue, 25 Dec 2007 23:48:53 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 25 Dec 2007 23:48:53 GMT Message-Id: <200712252348.lBPNmrqb083251@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 131636 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Dec 2007 23:48:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=131636 Change 131636 by hselasky@hselasky_laptop001 on 2007/12/25 23:48:19 This commit is device side related. Fix the AT91 series full speed USB Device Controller driver so that it works ! Some more testing remains. At least the Control Endpoint is working excellent. o Reading string descriptor test yielded: 5000 bytes per second at 154 transactions per second. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#4 edit .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.h#3 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#4 (text+ko) ==== @@ -38,8 +38,11 @@ */ /* - * NOTE: the "fifo_bank" is not reset in hardware when the endpoint is + * NOTE: The "fifo_bank" is not reset in hardware when the endpoint is * reset ! + * + * NOTE: When the chip detects BUS-reset it will also reset the + * endpoints, Function-address and more. */ #include @@ -109,7 +112,8 @@ */ #define AT91_CSR_ACK(csr, what) do { \ (csr) &= ~((AT91_UDP_CSR_FORCESTALL| \ - AT91_UDP_CSR_TXPKTRDY) ^ (what)); \ + AT91_UDP_CSR_TXPKTRDY| \ + AT91_UDP_CSR_RXBYTECNT) ^ (what));\ (csr) |= ((AT91_UDP_CSR_RX_DATA_BK0| \ AT91_UDP_CSR_RX_DATA_BK1| \ AT91_UDP_CSR_TXCOMP| \ @@ -197,6 +201,8 @@ if (sc->sc_flags.clocks_off && sc->sc_flags.port_powered) { + DPRINTFN(4, "\n"); + if (sc->sc_clocks_on) { (sc->sc_clocks_on) (sc->sc_clocks_arg); } @@ -213,6 +219,8 @@ { if (!sc->sc_flags.clocks_off) { + DPRINTFN(4, "\n"); + /* disable Transceiver */ AT91_UDP_WRITE_4(sc, AT91_UDP_TXVC, AT91_UDP_TXVC_DIS); @@ -227,6 +235,8 @@ static void at9100_dci_pull_up(struct at9100_dci_softc *sc) { + /* pullup D+, if possible */ + if (!sc->sc_flags.d_pulled_up && sc->sc_flags.port_powered) { sc->sc_flags.d_pulled_up = 1; @@ -238,6 +248,8 @@ static void at9100_dci_pull_down(struct at9100_dci_softc *sc) { + /* pulldown D+, if possible */ + if (sc->sc_flags.d_pulled_up) { sc->sc_flags.d_pulled_up = 0; (sc->sc_pull_down) (sc->sc_pull_arg); @@ -265,66 +277,106 @@ return; } +static void +at9100_dci_set_address(struct at9100_dci_softc *sc, uint8_t addr) +{ + DPRINTFN(4, "addr=%d\n", addr); + + AT91_UDP_WRITE_4(sc, AT91_UDP_FADDR, addr | + AT91_UDP_FADDR_EN); + + return; +} + static uint8_t at9100_dci_setup_rx(struct at9100_dci_td *td) { - struct usbd_page_search buf_res; + struct at9100_dci_softc *sc; + usb_device_request_t req; uint32_t csr; + uint32_t temp; uint16_t count; /* read out FIFO status */ csr = bus_space_read_4(td->io_tag, td->io_hdl, td->status_reg); - DPRINTFN(4, "csr=0x%08x\n", csr); + DPRINTFN(4, "csr=0x%08x rem=%d\n", csr, td->remainder); + + temp = csr; + temp &= (AT91_UDP_CSR_RX_DATA_BK0 | + AT91_UDP_CSR_RX_DATA_BK1 | + AT91_UDP_CSR_STALLSENT | + AT91_UDP_CSR_RXSETUP | + AT91_UDP_CSR_TXCOMP); - /* check status */ if (!(csr & AT91_UDP_CSR_RXSETUP)) { - return (1); /* not complete */ + /* abort any ongoing transfer */ + if (!td->did_stall) { + DPRINTFN(4, "stalling\n"); + temp |= AT91_UDP_CSR_FORCESTALL; + td->did_stall = 1; + } + goto not_complete; } /* get the packet byte count */ count = (csr & AT91_UDP_CSR_RXBYTECNT) >> 16; /* verify data length */ if (count != td->remainder) { - DPRINTFN(0, "Invalid SETUP packet " + DPRINTFN(-1, "Invalid SETUP packet " + "length, %d bytes\n", count); + goto not_complete; + } + if (count != sizeof(req)) { + DPRINTFN(-1, "Unsupported SETUP packet " "length, %d bytes\n", count); - td->error = 1; - return (0); /* we are complete */ + goto not_complete; } - while (count > 0) { - usbd_get_page(td->pc, td->offset, &buf_res); + /* receive data */ + bus_space_read_multi_1(td->io_tag, td->io_hdl, + td->fifo_reg, (void *)&req, sizeof(req)); + + /* copy data into real buffer */ + usbd_copy_in(td->pc, 0, &req, sizeof(req)); + + td->offset = sizeof(req); + td->remainder = 0; - /* get correct length */ - if (buf_res.length > count) { - buf_res.length = count; - } - /* receive data */ - bus_space_read_multi_1(td->io_tag, td->io_hdl, - td->fifo_reg, buf_res.buffer, buf_res.length); + /* get pointer to softc */ + sc = td->pc->xfer->usb_sc; - if (td->offset == 0) { - /* sneak peek the endpoint direction */ - if ((*(uint8_t *)(buf_res.buffer)) & UE_DIR_IN) { - csr |= AT91_UDP_CSR_DIR; - } else { - csr &= ~AT91_UDP_CSR_DIR; - } - } - /* update counters */ - count -= buf_res.length; - td->offset += buf_res.length; - td->remainder -= buf_res.length; + /* sneak peek the set address */ + if ((req.bmRequestType == UT_WRITE_DEVICE) && + (req.bRequest == UR_SET_ADDRESS)) { + sc->sc_dv_addr = req.wValue[0] & 0x7F; + } else { + sc->sc_dv_addr = 0xFF; } - /* clear RXSETUP */ - AT91_CSR_ACK(csr, AT91_UDP_CSR_RXSETUP); + /* sneak peek the endpoint direction */ + if (req.bmRequestType & UE_DIR_IN) { + csr |= AT91_UDP_CSR_DIR; + } else { + csr &= ~AT91_UDP_CSR_DIR; + } - /* write command */ + /* write the direction of the control transfer */ + AT91_CSR_ACK(csr, temp); bus_space_write_4(td->io_tag, td->io_hdl, td->status_reg, csr); + return (0); /* complete */ + +not_complete: + /* clear interrupts, if any */ + if (temp) { + DPRINTFN(4, "clearing 0x%08x\n", temp); + AT91_CSR_ACK(csr, temp); + bus_space_write_4(td->io_tag, td->io_hdl, + td->status_reg, csr); + } + return (1); /* not complete */ - return (0); /* complete */ } static uint8_t @@ -332,93 +384,122 @@ { struct usbd_page_search buf_res; uint32_t csr; + uint32_t temp; uint16_t count; uint8_t to; to = 2; /* don't loop forever! */ /* check if any of the FIFO banks have data */ - do { - /* read out FIFO status */ - csr = bus_space_read_4(td->io_tag, td->io_hdl, - td->status_reg); +repeat: + /* read out FIFO status */ + csr = bus_space_read_4(td->io_tag, td->io_hdl, + td->status_reg); - DPRINTFN(4, "csr=0x%08x\n", csr); + DPRINTFN(4, "csr=0x%08x\n", csr); - /* check status */ - if (!(csr & (AT91_UDP_CSR_RX_DATA_BK0 | - AT91_UDP_CSR_RX_DATA_BK1))) { - break; + if (csr & AT91_UDP_CSR_RXSETUP) { + if (td->remainder == 0) { + /* + * We are actually complete and have + * received the next SETUP + */ + DPRINTFN(4, "faking complete\n"); + return (0); /* complete */ } - /* get the packet byte count */ - count = (csr & AT91_UDP_CSR_RXBYTECNT) >> 16; + /* + * USB Host Aborted the transfer. + */ + td->error = 1; + return (0); /* complete */ + } + /* Make sure that "STALLSENT" gets cleared */ + temp = csr; + temp &= AT91_UDP_CSR_STALLSENT; - /* verify the packet byte count */ - if (count != td->max_packet_size) { - if (count < td->max_packet_size) { - /* we have a short packet */ - td->short_pkt = 1; - } else { - /* invalid USB packet */ - td->error = 1; - return (0); /* we are complete */ - } + /* check status */ + if (!(csr & (AT91_UDP_CSR_RX_DATA_BK0 | + AT91_UDP_CSR_RX_DATA_BK1))) { + if (temp) { + /* write command */ + AT91_CSR_ACK(csr, temp); + bus_space_write_4(td->io_tag, td->io_hdl, + td->status_reg, csr); } - /* verify the packet byte count */ - if (count > td->remainder) { + return (1); /* not complete */ + } + /* get the packet byte count */ + count = (csr & AT91_UDP_CSR_RXBYTECNT) >> 16; + + /* verify the packet byte count */ + if (count != td->max_packet_size) { + if (count < td->max_packet_size) { + /* we have a short packet */ + td->short_pkt = 1; + } else { /* invalid USB packet */ td->error = 1; return (0); /* we are complete */ } - while (count > 0) { - usbd_get_page(td->pc, td->offset, &buf_res); + } + /* verify the packet byte count */ + if (count > td->remainder) { + /* invalid USB packet */ + td->error = 1; + return (0); /* we are complete */ + } + while (count > 0) { + usbd_get_page(td->pc, td->offset, &buf_res); - /* get correct length */ - if (buf_res.length > count) { - buf_res.length = count; - } - /* receive data */ - bus_space_read_multi_1(td->io_tag, td->io_hdl, - td->fifo_reg, buf_res.buffer, buf_res.length); + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* receive data */ + bus_space_read_multi_1(td->io_tag, td->io_hdl, + td->fifo_reg, buf_res.buffer, buf_res.length); - /* update counters */ - count -= buf_res.length; - td->offset += buf_res.length; - td->remainder -= buf_res.length; - } + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } - /* clear status bits */ - if (td->support_multi_buffer) { - if (td->fifo_bank) { - td->fifo_bank = 0; - AT91_CSR_ACK(csr, AT91_UDP_CSR_RX_DATA_BK1); - } else { - td->fifo_bank = 1; - AT91_CSR_ACK(csr, AT91_UDP_CSR_RX_DATA_BK0); - } + /* clear status bits */ + if (td->support_multi_buffer) { + if (td->fifo_bank) { + td->fifo_bank = 0; + temp |= AT91_UDP_CSR_RX_DATA_BK1; } else { - AT91_CSR_ACK(csr, AT91_UDP_CSR_RX_DATA_BK0 | - AT91_UDP_CSR_RX_DATA_BK1); + td->fifo_bank = 1; + temp |= AT91_UDP_CSR_RX_DATA_BK0; } + } else { + temp |= (AT91_UDP_CSR_RX_DATA_BK0 | + AT91_UDP_CSR_RX_DATA_BK1); + } - /* write command */ - bus_space_write_4(td->io_tag, td->io_hdl, - td->status_reg, csr); + /* write command */ + AT91_CSR_ACK(csr, temp); + bus_space_write_4(td->io_tag, td->io_hdl, + td->status_reg, csr); - /* - * NOTE: We may have to delay a little bit before - * proceeding after clearing the DATA_BK bits. - */ + /* + * NOTE: We may have to delay a little bit before + * proceeding after clearing the DATA_BK bits. + */ - /* check if we are complete */ - if (td->remainder == 0) { - if (td->short_pkt) { - /* we are complete */ - return (0); - } - /* else need to receive a zero length packet */ + /* check if we are complete */ + if (td->remainder == 0) { + if (td->short_pkt) { + /* we are complete */ + return (0); } - } while (--to); + /* else need to receive a zero length packet */ + } + if (--to) { + goto repeat; + } return (1); /* not complete */ } @@ -427,70 +508,94 @@ { struct usbd_page_search buf_res; uint32_t csr; + uint32_t temp; uint16_t count; + uint8_t to; + + to = 2; /* don't loop forever! */ + +repeat: /* read out FIFO status */ csr = bus_space_read_4(td->io_tag, td->io_hdl, td->status_reg); - DPRINTFN(4, "csr=0x%08x\n", csr); + DPRINTFN(4, "csr=0x%08x rem=%d\n", csr, td->remainder); + + if (csr & AT91_UDP_CSR_RXSETUP) { + /* + * The current transfer was aborted + * by the USB Host + */ + td->error = 1; + return (0); /* complete */ + } + /* Make sure that "STALLSENT" gets cleared */ + temp = csr; + temp &= AT91_UDP_CSR_STALLSENT; - /* check status */ if (csr & AT91_UDP_CSR_TXPKTRDY) { - return (1); /* not complete - wait for interrupt */ - } - /* clear TXCOMP and set TXPKTRDY */ - AT91_CSR_ACK(csr, AT91_UDP_CSR_TXCOMP | - AT91_UDP_CSR_TXPKTRDY); + /* check for double buffering */ + if (td->support_multi_buffer && + (!td->did_multi_buffer)) { + td->did_multi_buffer = 1; + + /* only set TXPKTRDY next time */ + temp |= AT91_UDP_CSR_TXPKTRDY; - while (1) { - count = td->max_packet_size; - if (td->remainder < count) { - /* we have a short packet */ - td->short_pkt = 1; - count = td->remainder; + } else if (temp) { + /* write command */ + AT91_CSR_ACK(csr, temp); + bus_space_write_4(td->io_tag, td->io_hdl, + td->status_reg, csr); + return (1); /* not complete */ + } else { + return (1); /* not complete */ } - while (count > 0) { + } else { + /* clear TXCOMP and set TXPKTRDY */ + temp |= (AT91_UDP_CSR_TXCOMP | + AT91_UDP_CSR_TXPKTRDY); + } - usbd_get_page(td->pc, td->offset, &buf_res); + count = td->max_packet_size; + if (td->remainder < count) { + /* we have a short packet */ + td->short_pkt = 1; + count = td->remainder; + } + while (count > 0) { - /* get correct length */ - if (buf_res.length > count) { - buf_res.length = count; - } - /* transmit data */ - bus_space_write_multi_1(td->io_tag, td->io_hdl, - td->fifo_reg, buf_res.buffer, buf_res.length); + usbd_get_page(td->pc, td->offset, &buf_res); - /* update counters */ - count -= buf_res.length; - td->offset += buf_res.length; - td->remainder -= buf_res.length; + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; } + /* transmit data */ + bus_space_write_multi_1(td->io_tag, td->io_hdl, + td->fifo_reg, buf_res.buffer, buf_res.length); + + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } - /* write command */ - bus_space_write_4(td->io_tag, td->io_hdl, - td->status_reg, csr); + /* write command */ + AT91_CSR_ACK(csr, temp); + bus_space_write_4(td->io_tag, td->io_hdl, + td->status_reg, csr); - /* check remainder */ - if (td->remainder == 0) { - if (td->short_pkt) { - return (0); /* complete */ - } - /* else we need to transmit a short packet */ + /* check remainder */ + if (td->remainder == 0) { + if (td->short_pkt) { + return (0); /* complete */ } - /* check for double buffering */ - if (!td->support_multi_buffer) { - break; - } - /* check if we can do a multi buffer */ - if (td->did_multi_buffer) { - break; - } - td->did_multi_buffer = 1; - - /* only set TXPKTRDY next time */ - AT91_CSR_ACK(csr, AT91_UDP_CSR_TXPKTRDY); + /* else we need to transmit a short packet */ + } + if (--to) { + goto repeat; } return (1); /* not complete */ } @@ -498,8 +603,11 @@ static uint8_t at9100_dci_data_tx_sync(struct at9100_dci_td *td) { - struct usbd_xfer *xfer; + struct at9100_dci_softc *sc; uint32_t csr; + uint32_t temp; + +repeat: /* read out FIFO status */ csr = bus_space_read_4(td->io_tag, td->io_hdl, @@ -507,26 +615,49 @@ DPRINTFN(4, "csr=0x%08x\n", csr); + if (csr & AT91_UDP_CSR_RXSETUP) { + DPRINTFN(4, "faking complete\n"); + /* Race condition */ + return (0); /* complete */ + } + temp = csr; + temp &= (AT91_UDP_CSR_STALLSENT | + AT91_UDP_CSR_TXCOMP); + /* check status */ if (csr & AT91_UDP_CSR_TXPKTRDY) { - return (1); /* not complete - wait for interrupt */ + goto not_complete; + } + if (!(csr & AT91_UDP_CSR_TXCOMP)) { + goto not_complete; + } + sc = td->pc->xfer->usb_sc; + if (sc->sc_dv_addr != 0xFF) { + /* + * The AT91 has a special requirement with regard to + * setting the address and that is to write the new + * address before clearing TXCOMP: + */ + at9100_dci_set_address(sc, sc->sc_dv_addr); } - if (csr & AT91_UDP_CSR_TXCOMP) { + /* write command */ + AT91_CSR_ACK(csr, temp); + bus_space_write_4(td->io_tag, td->io_hdl, + td->status_reg, csr); - /* clear TXCOMP */ - AT91_CSR_ACK(csr, AT91_UDP_CSR_TXCOMP); + if (td->did_multi_buffer) { + /* wait for the second and final interrupt */ + td->did_multi_buffer = 0; + goto repeat; + } + return (0); /* complete */ +not_complete: + if (temp) { /* write command */ + AT91_CSR_ACK(csr, temp); bus_space_write_4(td->io_tag, td->io_hdl, td->status_reg, csr); - - if (!td->did_multi_buffer) { - /* restore double buffer flag */ - xfer = td->pc->xfer; - return (0); /* complete */ - } - /* wait for the second and final interrupt */ - td->did_multi_buffer = 0; } return (1); /* not complete */ } @@ -538,6 +669,8 @@ struct at9100_dci_td *td; uint8_t temp; + DPRINTFN(8, "\n"); + td = xfer->td_transfer_cache; while (1) { if ((td->func) (td)) { @@ -578,7 +711,7 @@ done: sc = xfer->usb_sc; - temp = (xfer->pipe->edesc->bEndpointAddress & UE_ADDR); + temp = (xfer->endpoint & UE_ADDR); /* update FIFO bank flag and multi buffer */ if (td->fifo_bank) { @@ -661,17 +794,22 @@ mtx_lock(&(sc->sc_bus.mtx)); status = AT91_UDP_READ_4(sc, AT91_UDP_ISR); + status &= AT91_UDP_INT_DEFAULT; + + if (!status) { + mtx_unlock(&(sc->sc_bus.mtx)); + return; + } + /* acknowledge interrupts */ + AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, status); + /* check for any bus state change interrupts */ if (status & AT91_UDP_INT_BUS) { DPRINTFN(4, "real bus interrupt 0x%08x\n", status); - /* acknowledge interrupts */ - - AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, status & AT91_UDP_INT_BUS); - if (status & AT91_UDP_INT_END_BR) { sc->sc_flags.status_bus_reset = 1; sc->sc_flags.status_suspend = 0; @@ -732,6 +870,7 @@ td->fifo_bank = 0; td->error = 0; td->did_multi_buffer = 0; + td->did_stall = 0; td->short_pkt = temp->short_pkt; td->alt_next = temp->setup_alt_next; return; @@ -753,8 +892,9 @@ temp.max_frame_size = xfer->max_frame_size; - xfer->td_transfer_first = xfer->td_start; - xfer->td_transfer_cache = xfer->td_start; + td = xfer->td_start[0]; + xfer->td_transfer_first = td; + xfer->td_transfer_cache = td; /* setup temp */ @@ -762,9 +902,9 @@ temp.td_next = xfer->td_start[0]; temp.setup_alt_next = xfer->flags_int.short_frames_ok; temp.offset = 0; - temp.pc = NULL; - need_sync = 0; + sc = xfer->usb_sc; + ep_no = (xfer->endpoint & UE_ADDR); /* check if we should prepend a setup message */ @@ -789,10 +929,14 @@ need_sync = 1; } else { temp.func = &at9100_dci_data_rx; + need_sync = 0; } + + /* setup "pc" pointer */ + temp.pc = xfer->frbuffers + x; + } else { + need_sync = 0; } - /* always setup a valid "pc" pointer */ - temp.pc = xfer->frbuffers + x; while (x != xfer->nframes) { @@ -828,6 +972,19 @@ } } + /* always setup a valid "pc" pointer for status and sync */ + temp.pc = xfer->frbuffers + 0; + + /* check if we need to sync */ + if (need_sync && !xfer->flags_int.isochronous_xfr) { + + /* we need a SYNC point after TX */ + temp.func = &at9100_dci_data_tx_sync; + temp.len = 0; + temp.short_pkt = 0; + + at9100_dci_setup_standard_chain_sub(&temp); + } /* check if we should append a status stage */ if (xfer->flags_int.control_xfr && @@ -839,6 +996,7 @@ */ if (xfer->endpoint & UE_DIR_IN) { temp.func = &at9100_dci_data_rx; + need_sync = 0; } else { temp.func = &at9100_dci_data_tx; need_sync = 1; @@ -847,27 +1005,19 @@ temp.short_pkt = 0; at9100_dci_setup_standard_chain_sub(&temp); - } - if (need_sync && !xfer->flags_int.isochronous_xfr) { + if (need_sync) { + /* we need a SYNC point after TX */ + temp.func = &at9100_dci_data_tx_sync; + temp.len = 0; + temp.short_pkt = 0; - /* we need a SYNC point */ - temp.func = &at9100_dci_data_tx_sync; - temp.len = 0; - temp.short_pkt = 0; - - at9100_dci_setup_standard_chain_sub(&temp); - - td = temp.td; - } else { - td = temp.td; + at9100_dci_setup_standard_chain_sub(&temp); + } } - /* must have at least one frame! */ + td = temp.td; xfer->td_transfer_last = td; - sc = xfer->usb_sc; - ep_no = (xfer->pipe->edesc->bEndpointAddress & UE_ADDR); - /* setup the correct fifo bank */ if (sc->sc_ep_flags[ep_no].fifo_bank) { td = xfer->td_transfer_first; @@ -904,8 +1054,23 @@ static void at9100_dci_start_standard_chain(struct usbd_xfer *xfer) { + DPRINTFN(8, "\n"); + /* poll one time */ if (at9100_dci_xfer_do_fifo(xfer)) { + + struct at9100_dci_softc *sc = xfer->usb_sc; + uint8_t ep_no = xfer->endpoint & UE_ADDR; + + /* + * Only enable the endpoint interrupt when we are actually + * waiting for data, hence we are dealing with level + * triggered interrupts ! + */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IER, AT91_UDP_INT_EP(ep_no)); + + DPRINTFN(14, "enable interrupts on endpoint %d\n", ep_no); + /* queue up transfer on interrupt list */ usbd_transfer_intr_enqueue(xfer); @@ -916,7 +1081,10 @@ (void *)&at9100_dci_timeout, xfer); } } else { - /* queue callback for execution */ + /* + * The USB transfer is complete. Queue callback for + * execution: + */ usbd_callback_wrapper(xfer, NULL, USBD_CONTEXT_CALLBACK); } @@ -929,6 +1097,8 @@ { struct at9100_dci_softc *sc = xfer->usb_sc; + DPRINTFN(8, "\n"); + mtx_assert(&sc->sc_bus.mtx, MA_OWNED); if (std->state != USBD_STD_ROOT_TR_PRE_DATA) { @@ -956,6 +1126,8 @@ uint32_t len; uint8_t error; + DPRINTFN(8, "\n"); + td = xfer->td_transfer_cache; do { @@ -1064,11 +1236,22 @@ static void at9100_dci_device_done(struct usbd_xfer *xfer, usbd_status_t error) { + struct at9100_dci_softc *sc = xfer->usb_sc; + uint8_t ep_no; + mtx_assert(&sc->sc_bus.mtx, MA_OWNED); DPRINTFN(1, "xfer=%p, pipe=%p, error=%d\n", xfer, xfer->pipe, error); + if (xfer->flags_int.usb_mode == USB_MODE_DEVICE) { + ep_no = (xfer->endpoint & UE_ADDR); + + /* disable endpoint interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, AT91_UDP_INT_EP(ep_no)); + + DPRINTFN(14, "disable interrupts on endpoint %d\n", ep_no); + } /* dequeue transfer and start next transfer */ usbd_transfer_dequeue(xfer, error); return; @@ -1082,6 +1265,10 @@ uint32_t csr_val; uint8_t csr_reg; + mtx_assert(&(udev->bus->mtx), MA_OWNED); + + DPRINTFN(4, "\n"); + if (xfer) { /* cancel any ongoing transfers */ at9100_dci_device_done(xfer, USBD_STALLED); @@ -1102,6 +1289,10 @@ struct at9100_dci_softc *sc; uint32_t rst_val; + mtx_assert(&(udev->bus->mtx), MA_OWNED); + + DPRINTFN(4, "\n"); + /* reset pipe state */ sc = AT9100_DCI_BUS2SC(udev->bus); @@ -1135,6 +1326,12 @@ uint8_t ep_type; uint8_t ep_dir; + mtx_assert(&(udev->bus->mtx), MA_OWNED); + + if (udev->flags.usb_mode == USB_MODE_HOST) { + /* this is the Root HUB */ + return; + } sc = AT9100_DCI_BUS2SC(udev->bus); AT91_CSR_ACK(csr_val, 0); @@ -1196,19 +1393,6 @@ return; } -static void -at9100_dci_set_address(struct usbd_device *udev, uint8_t addr) -{ - struct at9100_dci_softc *sc; - - sc = AT9100_DCI_BUS2SC(udev->bus); - - AT91_UDP_WRITE_4(sc, AT91_UDP_FADDR, (addr & 0x7F) | - AT91_UDP_FADDR_EN); - - return; -} - usbd_status_t at9100_dci_init(struct at9100_dci_softc *sc) { @@ -1223,14 +1407,25 @@ mtx_lock(&(sc->sc_bus.mtx)); + /* turn on clocks */ + + if (sc->sc_clocks_on) { + (sc->sc_clocks_on) (sc->sc_clocks_arg); + } + /* wait a little for things to stabilise */ + DELAY(1000); + + /* enable Transceiver */ + AT91_UDP_WRITE_4(sc, AT91_UDP_TXVC, 0); + + /* disable and clear all interrupts */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, 0xFFFFFFFF); + AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, 0xFFFFFFFF); + csr_val = 0; AT91_CSR_ACK(csr_val, 0); - /* reset device address */ - - AT91_UDP_WRITE_4(sc, AT91_UDP_FADDR, 0); - - /* disable everything */ + /* disable and reset all endpoints */ for (n = 0; n != AT91_UDP_EP_MAX; n++) { @@ -1242,25 +1437,18 @@ AT91_UDP_WRITE_4(sc, AT91_UDP_RST, 0); } - /* enable control endpoint */ + /* enable the interrupts we want */ - csr_val |= (AT91_UDP_CSR_ET_CTRL | AT91_UDP_CSR_EPEDS); + AT91_UDP_WRITE_4(sc, AT91_UDP_IER, AT91_UDP_INT_BUS); - AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(0), csr_val); - - /* disable all interrupts */ - - AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, 0xFFFFFFFF); + /* turn off clocks */ - /* enable the interrupts we want */ - - AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, AT91_UDP_INT_DEFAULT); - at9100_dci_clocks_off(sc); mtx_unlock(&(sc->sc_bus.mtx)); /* catch any lost interrupts */ + at9100_dci_do_poll(&(sc->sc_bus)); return (0); /* success */ @@ -1604,13 +1792,12 @@ 0x09, 0x04, /* American English */ #define STRING_VENDOR \ - 'A', 0, 'T', 0, 'M', 0, 'E', 0, 'L' + 'A', 0, 'T', 0, 'M', 0, 'E', 0, 'L', 0 #define STRING_PRODUCT \ - 'A', 0, 'T', 0, 'M', 0, 'E', 0, 'L', 0, \ - ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, \ - 'c', 0, 'e', 0, 'R', 0, 'o', 0, 'o', 0, \ - 't', 0, ' ', 0, 'H', 0, 'U', 0, 'B', 0, + 'D', 0, 'C', 0, 'I', 0, ' ', 0, 'R', 0, \ + 'o', 0, 'o', 0, 't', 0, ' ', 0, 'H', 0, \ + 'U', 0, 'B', 0, USB_MAKE_STRING_DESC(STRING_LANG, at9100_dci_langtab); USB_MAKE_STRING_DESC(STRING_VENDOR, at9100_dci_vendor); @@ -1885,7 +2072,7 @@ if (value & 0xFF00) { goto tr_stalled; } - sc->sc_addr = value; + sc->sc_rt_addr = value; goto tr_valid; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 26 05:55:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9EEB816A419; Wed, 26 Dec 2007 05:55:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3B1B916A417 for ; Wed, 26 Dec 2007 05:55:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2E99613C4D1 for ; Wed, 26 Dec 2007 05:55:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ5tOLk064797 for ; Wed, 26 Dec 2007 05:55:24 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ5tNqP064794 for perforce@freebsd.org; Wed, 26 Dec 2007 05:55:23 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 05:55:23 GMT Message-Id: <200712260555.lBQ5tNqP064794@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 131647 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 05:55:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=131647 Change 131647 by jb@jb_freebsd1 on 2007/12/26 05:54:49 Define SMP_MAXCPU for use in kernel modules which have to dimension things based on the maximum number of CPUs that _could_ be in the kernel. The MAXCPU definition is only useful for things compiled into the kernel itself. At module build time, the state of the SMP configuration isn't known and modules are supposed to be able to load into UP and SMP kernels (which is why the atomic functions aren't inlined in modules). Affected files ... .. //depot/projects/dtrace/src/sys/amd64/include/param.h#4 edit .. //depot/projects/dtrace/src/sys/arm/include/param.h#4 edit .. //depot/projects/dtrace/src/sys/i386/include/param.h#4 edit .. //depot/projects/dtrace/src/sys/ia64/include/param.h#4 edit .. //depot/projects/dtrace/src/sys/powerpc/include/param.h#4 edit .. //depot/projects/dtrace/src/sys/sparc64/include/param.h#5 edit .. //depot/projects/dtrace/src/sys/sun4v/include/param.h#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/amd64/include/param.h#4 (text+ko) ==== @@ -79,8 +79,13 @@ #define MACHINE_ARCH "amd64" #endif +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 16 #ifdef SMP -#define MAXCPU 16 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif ==== //depot/projects/dtrace/src/sys/arm/include/param.h#4 (text+ko) ==== @@ -72,8 +72,13 @@ #endif #define MID_MACHINE MID_ARM6 +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 2 #ifdef SMP -#define MAXCPU 2 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif /* SMP */ ==== //depot/projects/dtrace/src/sys/i386/include/param.h#4 (text+ko) ==== @@ -65,8 +65,13 @@ #endif #define MID_MACHINE MID_I386 +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 16 #ifdef SMP -#define MAXCPU 16 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif /* SMP */ ==== //depot/projects/dtrace/src/sys/ia64/include/param.h#4 (text+ko) ==== @@ -78,8 +78,13 @@ #define MACHINE_ARCH "ia64" #endif +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 4 #ifdef SMP -#define MAXCPU 4 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif ==== //depot/projects/dtrace/src/sys/powerpc/include/param.h#4 (text+ko) ==== @@ -67,8 +67,13 @@ #endif #define MID_MACHINE MID_POWERPC +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 2 #ifdef SMP -#define MAXCPU 2 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif /* SMP */ ==== //depot/projects/dtrace/src/sys/sparc64/include/param.h#5 (text+ko) ==== @@ -59,8 +59,13 @@ #endif #define MID_MACHINE MID_SPARC64 +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 16 #ifdef SMP -#define MAXCPU 16 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif /* SMP */ ==== //depot/projects/dtrace/src/sys/sun4v/include/param.h#5 (text+ko) ==== @@ -59,8 +59,13 @@ #endif #define MID_MACHINE MID_SPARC64 +/* + * SMP_MAXCPU - maximum number of CPUs in the kernel. Use this in kernel + * modules to allow for both SMP and !SMP cases. + */ +#define SMP_MAXCPU 32 #ifdef SMP -#define MAXCPU 32 +#define MAXCPU SMP_MAXCPU #else #define MAXCPU 1 #endif /* SMP */ From owner-p4-projects@FreeBSD.ORG Wed Dec 26 06:03:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A45516A420; Wed, 26 Dec 2007 06:03:37 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0B76316A417 for ; Wed, 26 Dec 2007 06:03:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F134213C45A for ; Wed, 26 Dec 2007 06:03:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ63aHw067321 for ; Wed, 26 Dec 2007 06:03:36 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ63YRg067309 for perforce@freebsd.org; Wed, 26 Dec 2007 06:03:34 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 06:03:34 GMT Message-Id: <200712260603.lBQ63YRg067309@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 131648 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 06:03:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131648 Change 131648 by jb@jb_freebsd1 on 2007/12/26 06:03:34 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#55 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/basics/chapter.sgml#8 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/config/chapter.sgml#9 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#51 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/book.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/eresources/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/l10n/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/users/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/flyer/Makefile#3 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/flyer/flyer.tex#3 integrate .. //depot/projects/dtrace/ports/LEGAL#30 integrate .. //depot/projects/dtrace/ports/MOVED#58 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackages#6 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackagestats#9 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/pdispatch#5 integrate .. //depot/projects/dtrace/ports/UPDATING#42 integrate .. //depot/projects/dtrace/src/bin/cp/cp.c#8 integrate .. //depot/projects/dtrace/src/games/fortune/datfiles/fortunes#27 integrate .. //depot/projects/dtrace/src/share/colldef/Makefile#6 integrate .. //depot/projects/dtrace/src/share/colldef/README#4 integrate .. //depot/projects/dtrace/src/share/colldef/map.ISO8859-9#1 branch .. //depot/projects/dtrace/src/share/colldef/tr_TR.ISO8859-9.src#1 branch .. //depot/projects/dtrace/src/share/man/man4/bge.4#7 integrate .. //depot/projects/dtrace/src/share/man/man4/ddb.4#12 integrate .. //depot/projects/dtrace/src/share/mklocale/Makefile#6 integrate .. //depot/projects/dtrace/src/share/mklocale/tr_TR.ISO8859-9.src#1 branch .. //depot/projects/dtrace/src/share/timedef/tr_TR.ISO8859-9.src#4 integrate .. //depot/projects/dtrace/src/share/timedef/tr_TR.UTF-8.src#4 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/machdep.c#24 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/mp_watchdog.c#5 integrate .. //depot/projects/dtrace/src/sys/arm/at91/kb920x_machdep.c#21 integrate .. //depot/projects/dtrace/src/sys/arm/at91/uart_dev_at91usart.c#9 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/spi_flash.c#6 integrate .. //depot/projects/dtrace/src/sys/cam/scsi/scsi_low.h#4 integrate .. //depot/projects/dtrace/src/sys/compat/ndis/subr_ntoskrnl.c#10 integrate .. //depot/projects/dtrace/src/sys/conf/files#59 integrate .. //depot/projects/dtrace/src/sys/conf/files.i386#30 integrate .. //depot/projects/dtrace/src/sys/ddb/db_capture.c#1 branch .. //depot/projects/dtrace/src/sys/ddb/db_command.c#11 integrate .. //depot/projects/dtrace/src/sys/ddb/db_input.c#4 integrate .. //depot/projects/dtrace/src/sys/ddb/db_main.c#5 integrate .. //depot/projects/dtrace/src/sys/ddb/db_output.c#7 integrate .. //depot/projects/dtrace/src/sys/ddb/ddb.h#6 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/Osd/OsdDebug.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/acpi_thermal.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bge.c#22 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bgereg.h#15 integrate .. //depot/projects/dtrace/src/sys/dev/dcons/dcons_os.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/ofw/ofw_console.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/sio/sio.c#11 integrate .. //depot/projects/dtrace/src/sys/dev/snp/snp.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/syscons/syscons.c#11 integrate .. //depot/projects/dtrace/src/sys/dev/uart/uart_core.c#6 integrate .. //depot/projects/dtrace/src/sys/fs/unionfs/union_subr.c#10 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part_bsd.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/conf/GENERIC.hints#7 integrate .. //depot/projects/dtrace/src/sys/i386/i386/machdep.c#24 integrate .. //depot/projects/dtrace/src/sys/i386/i386/mp_watchdog.c#5 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/machdep.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/kern_clock.c#12 integrate .. //depot/projects/dtrace/src/sys/kern/kern_shutdown.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/subr_kdb.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/subr_witness.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/tty_cons.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_subr.c#24 integrate .. //depot/projects/dtrace/src/sys/net/bpf.c#15 integrate .. //depot/projects/dtrace/src/sys/net/bpf.h#9 integrate .. //depot/projects/dtrace/src/sys/net/bpf_filter.c#5 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_base.c#10 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_dummynet.c#9 integrate .. //depot/projects/dtrace/src/sys/pc98/cbus/sio.c#6 integrate .. //depot/projects/dtrace/src/sys/pc98/pc98/machdep.c#19 integrate .. //depot/projects/dtrace/src/sys/powerpc/aim/machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powermac/pswitch.c#5 integrate .. //depot/projects/dtrace/src/sys/security/audit/audit_pipe.c#10 integrate .. //depot/projects/dtrace/src/sys/security/mac_test/mac_test.c#12 integrate .. //depot/projects/dtrace/src/sys/sparc64/pci/psycho.c#9 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/machdep.c#10 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/trap.c#9 integrate .. //depot/projects/dtrace/src/sys/sun4v/sun4v/hvcons.c#10 integrate .. //depot/projects/dtrace/src/sys/sun4v/sun4v/machdep.c#14 integrate .. //depot/projects/dtrace/src/sys/sun4v/sun4v/trap.c#22 integrate .. //depot/projects/dtrace/src/sys/sys/kdb.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/kernel.h#16 integrate .. //depot/projects/dtrace/src/sys/sys/mbuf.h#11 integrate .. //depot/projects/dtrace/src/sys/sys/param.h#28 integrate .. //depot/projects/dtrace/src/sys/sys/priv.h#4 integrate .. //depot/projects/dtrace/src/usr.bin/ipcrm/Makefile#4 integrate .. //depot/projects/dtrace/src/usr.bin/ipcrm/ipcrm.1#5 integrate .. //depot/projects/dtrace/src/usr.bin/ipcrm/ipcrm.c#5 integrate .. //depot/projects/dtrace/src/usr.bin/ipcs/Makefile#4 integrate .. //depot/projects/dtrace/src/usr.bin/ipcs/ipc.c#1 branch .. //depot/projects/dtrace/src/usr.bin/ipcs/ipc.h#1 branch .. //depot/projects/dtrace/src/usr.bin/ipcs/ipcs.c#6 integrate .. //depot/projects/dtrace/src/usr.sbin/config/config.y#7 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/index.c#8 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#55 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -306,22 +306,19 @@ Once the kernel has been recompiled with these two options, you can then determine what video modes are supported by your hardware by using the &man.vidcontrol.1; utility. To - get a list of supported video modes, type the following in a - root console: + get a list of supported video modes issue the following: &prompt.root; vidcontrol -i mode The output of this command is a list of video modes that are supported by your hardware. You can then choose to use a - new video mode by passing it to vidcontrol in a root console, - as in this example: + new video mode by passing it to &man.vidcontrol.1; in a root console: &prompt.root; vidcontrol MODE_279 If the new video mode is acceptable, it can be permanently - set on boot by including the following in your - /etc/rc.conf file, again using the above - example: + set on boot by setting it in the /etc/rc.conf + file: allscreens_flags="MODE_279" ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/config/chapter.sgml#9 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -465,7 +465,7 @@ utility_enable="YES" - This new method also allows for easier manipulation of the + This method also allows for easier manipulation of the command line arguments, inclusion of the default functions provided in /etc/rc.subr, compatibility with the &man.rcorder.8; utility and provides for easier ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#13 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -2779,27 +2779,12 @@ cp /root/.profile /mnt/root -cp -f /dev/MAKEDEV /mnt/dev -chmod 755 /mnt/dev/MAKEDEV - chmod 500 /mnt/sbin/init chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt chmod 555 /mnt/bin/sh /mnt/bin/sync chmod 6555 /mnt/sbin/restore # -# create the devices nodes -# -cd /mnt/dev -./MAKEDEV std -./MAKEDEV da0 -./MAKEDEV da1 -./MAKEDEV da2 -./MAKEDEV sa0 -./MAKEDEV pty0 -cd / - -# # create minimum file system table # cat > /mnt/etc/fstab < 800006 - + + 8.0-CURRENT after kdb_enter() gains a "why" + argument. + 800007 + ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml#5 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -59,7 +59,7 @@ - Hoe bestandssystemen gemount en ge-unmount + Hoe bestandssystemen gekoppeld en ontkoppeld worden; @@ -77,7 +77,7 @@ - Wat apparaten en apparaatmountpunten zijn; + Wat apparaten en apparaatkoppelpunten zijn; @@ -344,6 +344,40 @@ en de programma's die daarbij gebruikt worden. + + + Het wijzigen van de console video mode + + De &os; standaard video mode kan worden gewijzigd in + 1024x768, 1280x1024, of een van de vele andere formaten die + ondersteund worden door de grafische kaart en monitor. Om + gebruik te maken van de verschillende video modes, moet eerst + de kernel opnieuw gecompileerd worden met twee extra opties: + + options VESA +options SC_PIXEL_MODE + + Zodra de kernel opnieuw gecompileerd is met deze twee opties + kan gekeken worden welke video modes er ondersteund worden door + de hardware door gebruik te maken van de &man.vidcontrol.1; + applicatie. Om een overzicht te krijgen van de ondersteunde + video modes moet het volgende ingevoerd worden: + + &prompt.root; vidcontrol -i mode + + Het resultaat van dit commando is een lijst van video modes + welke ondersteund worden door de hardware. Hierna kan de nieuwe + video mode gekozen worden door dit aan te geven aan + &man.vidcontrol.1;: + + &prompt.root; vidcontrol MODE_279 + + Als de nieuwe video mode acceptabel is, kan dit permanent + ingesteld worden door het volgende in + /etc/rc.conf te zetten: + + allscreens_flags="MODE_279" + @@ -482,15 +516,15 @@ regulier bestand is. De volgende drie karakters, rw- in dit voorbeeld, geven de rechten voor de eigenaar van het bestand. De drie karakters - r--erna geven de rechten van voor de groep van + r-- erna geven de rechten van voor de groep van het bestand. De overige drie karakters r-- - tonen de rechten voor de rest. Een streepje betekent dat de + tonen de rechten voor alle overige gebruikers. Een streepje betekent dat de rechten uitgeschakeld zijn. In het geval van dit bestand zijn de rechten zo ingesteld dat de eigenaar kan lezen en schrijven naar - het bestand, de groep het bestand kan lezen, en de rest kan het - bestand alleen lezen. Volgens de tabel hierboven worden de - rechten 644, waar de cijfers de drie stukjes - van de rechten aangeven. + het bestand, de groep het bestand kan lezen, en alle overige + gebruikers kunnen ook het bestand lezen. Volgens de tabel hierboven + worden de rechten 644, waar de cijfers de drie + stukjes van de rechten aangeven. Dit is allemaal leuk en aardig, maar hoe controleert het systeem dan rechten voor apparaten? &os; behandelt de meeste @@ -736,24 +770,25 @@ De &os; mappenstructuur is erg belangrijk om het systeem goed te leren kennen. Het belangrijkste concept om greep op te krijgen is die van de rootmap, /. Deze map is de - eerste die gemount wordt tijdens het opstarten en bevat het + eerste die gekoppeld wordt tijdens het opstarten en bevat het basissysteem dat nodig is om het besturingssysteem gereed te - maken voor multi-user taken. De rootmap bevat ook mountpunten - voor elk ander bestandssysteem dat misschien gemount + maken voor multi-user taken. De rootmap bevat ook koppelpunten + voor elk ander bestandssysteem dat misschien gekoppeld wordt. - Een mountpunt is een map waar extra bestandssystemen aan het - root bestandssysteem geplakt kunnen worden. Dit wordt beschreven - in . Standaard mountpunten + Een koppelpunt is een map waar extra bestandssystemen aan het + een bestandssysteem gekoppeld kunnen worden (meestal het root + bestandssysteem). Dit wordt beschreven + in . Standaard koppelpunten zijn /usr, /var, /tmp, /mnt en /cdrom. Naar deze mappen wordt meestal verwezen in /etc/fstab, een tabel met - bestandssystemen en mountpunten ter referentie voor het systeem. + bestandssystemen en koppelpunten ter referentie voor het systeem. De meeste bestandssystemen in /etc/fstab - worden automatisch gemount tijdens het opstarten door het script - &man.rc.8;, behalve als ze de optie - hebben. Details staan beschreven in noauto + gedefinieerd is. Details staan beschreven in . Een complete beschrijving over het bestandssysteem staat in @@ -853,7 +888,7 @@ /mnt/ Lege map, veel gebruikt door systeembeheerders als - tijdelijk mountpunt voor opslagruimtes. + tijdelijk koppelpunt voor opslagruimtes. @@ -885,20 +920,12 @@ - /stand/ - - Programma's die gebruikt worden in een standalone - omgeving. - - - - /tmp/ Tijdelijke bestanden. De inhoud van /tmp blijft meestal NIET bewaard na een herstart. Er wordt vaak een - geheugengebaseerd bestandssysteem gemount op /tmp. Dit kan geautomatiseerd worden met de tmpmfs-gerelateerde variabelen van &man.rc.conf.5; (of met een regel in @@ -1091,7 +1118,7 @@ Eén bestandssysteem wordt aangewezen als root bestandssysteem, waar naar wordt verwezen met /. Elk ander bestandssysteem - wordt daarna gemount onder het root + wordt daarna gekoppeld onder het root bestandssysteem. Hoeveel schijven er ook aan een &os; systeem hangen, het lijkt alsof elke map zich op dezelfde schijf bevindt. @@ -1123,11 +1150,11 @@ - Een bestandssysteem moet gemount worden in een map op een + Een bestandssysteem moet gekoppeld worden in een map op een ander bestandssysteem. Als nu bestandssysteem - B wordt gemount onder de map + B wordt gekoppeld onder de map A1 vervangt B - A1 en zien de mappingen in + A1 en zien de koppelingen in B er als volgt uit: @@ -1153,9 +1180,9 @@ pad /A1/B1 of /A1/B2. Elk bestand dat in /A1 stond is tijdelijk verborgen en komt tevoorschijn als Bis - ge-unmountvan A. + ontkoppeldvan A. - Als B gemount is onder + Als B gekoppeld is onder A2 ziet de diagram er als volgt uit: @@ -1180,9 +1207,9 @@ /A2/B1 en /A2/B2 zijn. - Bestandssystemen kunnen op elkaar worden gemount. Doorgaand + Bestandssystemen kunnen op elkaar worden gekoppeld. Doorgaand op het vorige voorbeeld kan het bestandssysteem - C gemount worden bovenop de map + C gekoppeld worden bovenop de map B1 in het bestandssysteem B. Dit resulteert in: @@ -1209,7 +1236,7 @@ Of C kan direct onder het bestandssysteem - A gemount worden, onder de map + A gekoppeld worden, onder de map A1: @@ -1240,7 +1267,7 @@ Beginnende gebruikers hoeven zich hier gewoonlijk niet mee bezig te houden. Normaal gesproken worden bestandssystemen gemaakt als &os; wordt geïnstalleerd en er wordt - besloten waar ze gemount worden. Meestal worden ze ook niet + besloten waar ze gekoppeld worden. Meestal worden ze ook niet gewijzigd tot er een nieuwe schijf aan een systeem wordt toegevoegd. @@ -1255,13 +1282,13 @@ Verschillende bestandssystemen kunnen verschillende mount opties hebben. Met een goede voorbereiding kan het root bestandssysteem bijvoorbeeld als - alleen-lezen gemount worden, waardoor het onmogelijk wordt + alleen-lezen gekoppeld worden, waardoor het onmogelijk wordt om per ongeluk kritische bestanden te verwijderen of te bewerken. Het scheiden van andere bestandssystemen die beschrijfbaar zijn door gebruikers, zoals /home van andere bestandssystemen stelt de beheerder in staat om ze nosuid te - mounten. Deze optie voorkomt dat + koppelen. Deze optie voorkomt dat suid/guid bits op uitvoerbare bestanden effectief gebruikt kunnen worden, waardoor de beveiliging mogelijk beter wordt. @@ -1274,7 +1301,7 @@ bestanden bevat waar regelmatig naar geschreven wordt, wordt anders geoptimaliseerd dan een bestandssysteem dat minder maar grotere bestanden bevat. Door het gebruik van - één groot bestandssysteem werkt de + één groot bestandssysteem werkt deze optimalisatie niet. @@ -1314,7 +1341,7 @@ letter van a tot en met h. Elke partitie kan slechts één bestandssysteem hebben, wat betekent dat bestandssystem vaak omschreven worden - aan de hand van hun mountpunt in de bestandssysteem + aan de hand van hun koppelpunt in de bestandssysteem hiërarchie of de letter van de partitie waar ze in opgeslagen zijn. @@ -1373,11 +1400,9 @@ d Partitie d had vroeger een - speciale betekenis, maar die is verdwenen. Tegenwoordig - werken sommige hulpprogramma's raar als ze verteld worden - dat ze moeten werken op partitie d, - dus sysinstall maakt normaal - gesproken partitie d niet. + speciale betekenis, maar die is verdwenen. + d zou nu kunnen werken als een normale + partitie. @@ -1424,11 +1449,10 @@ linkend="basics-dev-codes">. Bij een referentie aan een partitie verwacht &os; ook dat - aan de slice en schijf refereert die de partitie bevat wordt - gerefereerd en als naar een slice wordt verwezen moet ook de - schijfnaam genoemd worden. Dit kan door de schijfnaam, - s, het slice nummer en de partitieletter aan - te geven. Voorbeelden staan in s, het slice nummer + en de partitieletter aan te geven. Voorbeelden staan in . In staat een @@ -1439,7 +1463,7 @@ schijfslices gemaakt worden en daarna moeten de partities op de slices voor &os; gemaakt worden. Daarna wordt op elke partitie het bestandssysteem (of wisselbestand) gemaakt en als - laatste wordt besloten waar het filesysteem gemount wordt. + laatste wordt besloten waar het filesysteem gekoppeld wordt. Schijf apparaatcodes @@ -1559,7 +1583,7 @@ : : | | | | :=================: ==: --. -| | | Partitie a, gemount als / | +| | | Partitie a, gekoppeld als / | | | > gerefereerd als ad0s2a | | | | | :-----------------: ==: | @@ -1584,7 +1608,7 @@ - Mounten en unmounten van bestandssystemen + Het koppelen en ontkoppelen van bestandssystemen Het bestandssysteem wordt het best weergegeven als een boom, met de stam als /. @@ -1616,18 +1640,18 @@ bestandssystemen - gemount met fstab + gekoppeld met fstab Tijdens het opstartproces, worden bestandssystemen die vermeld staan in - /etc/fstab automatisch gemount + /etc/fstab automatisch gekoppeld (tenzij ze vermeld staan met ). /etc/fstab bevat een lijst van regels die aan het volgende formaat voldoen: - apparaat /mountpunt fstype opties dumpfreq passno + apparaat /koppelpunt fstype opties dumpfreq passno @@ -1640,11 +1664,11 @@ - mountpunt + koppelpunt Een map (die moet bestaan) waarop het bestandssysteem - gemount moet worden. + gekoppeld moet worden. @@ -1666,7 +1690,7 @@ schrijven bestandssytemen, of voor alleen lezen, gevolgd door elke andere optie die mogelijk nodig is. Een standaard optie is - voor bestandssystemen die niet automatisch gemount + voor bestandssystemen die niet automatisch gekoppeld worden tijdens het opstarten. Andere opties staan in &man.mount.8;. @@ -1713,16 +1737,16 @@ bestandssystemen - mounten + koppelen &man.mount.8; wordt gebruikt om bestandsystemen te - mounten. + koppelen. De meest eenvoudige vorm is: - &prompt.root; mount apparaat mountpunt + &prompt.root; mount apparaat koppelpunt Alle opties voor het commando staat in &man.mount.8;, maar @@ -1739,7 +1763,7 @@ /etc/fstab staan, behalve die gemarkeerd staan als noauto, uitgesloten zijn door de optie of die al - gemount zijn. + gekoppeld zijn. @@ -1747,7 +1771,7 @@ - Doe alles behalve het echt aanroepen van de mount + Doe alles behalve het echt aanroepen van de mount systeemopdracht. Deze optie is handig in samen met de optie om te bepalen wat &man.mount.8; eigenlijk probeert te doen. @@ -1758,9 +1782,9 @@ - Forceert het mounten van een niet schoon + Forceert het koppelen van een niet schoon bestandssysteem (gevaarlijk) of forceert het innemen van - schrijftoegang als de mountstatus van een bestandssysteem + schrijftoegang als de koppelstatus van een bestandssysteem wijzigt van lezen en schrijven naar alleen lezen. @@ -1782,7 +1806,7 @@ Mount het opgegeven bestandssysteem als het opgegeven - type bestandssysteem of mount alleen bestandssystemen + type bestandssysteem of koppelt alleen bestandssystemen van het aangegeven type als ook de optie is opgegeven. @@ -1795,7 +1819,7 @@ - Werk mountopties van het bestandssysteem bij. + Werk koppel opties van het bestandssysteem bij. @@ -1821,16 +1845,6 @@ - nodev - - - Interpreteer geen speciale apparaten op het - bestandssysteem. Dit is een nuttige - veiligheidsoptie. - - - - noexec @@ -1858,18 +1872,18 @@ bestandssystemen - unmounten + ontkoppelen - &man.umount.8; heeft een mountpunt, een apparaatnaam, + &man.umount.8; heeft een koppelpunt, een apparaatnaam, of als parameter. Alle vormen kunnen de optie hebben om - een bestandsysteem te forceren te unmounten en de optie + een bestandsysteem te forceren te ontkoppelen en de optie voor uitgebreide informatie. De optie is meestal geen goed idee. Forceren dat - een bestandssysteem geunmount wordt kan de computer laten + een bestandssysteem ontkoppeld wordt kan de computer laten crashen of data op het bestandssysteem beschadigen. De opties en @@ -1877,7 +1891,7 @@ mogelijk nader gespecificeerd door de optie met daarachter op welke typen bestandssystemen het betrekking heeft. Voor de optie geldt dat deze niet - probeert het root bestandssysteem te unmounten. + probeert het root bestandssysteem te ontkoppelen. @@ -1944,7 +1958,8 @@ In het bovenstaande voorbeeld is de uitvoer van &man.ps.1; georganiseerd in een aantal kolommen. PID is het proces ID. PIDs worden toegekend vanaf 1 en lopen op tot - 99999. Als ze allemaal zijn gebruikt, worden ze hergebruikt. De + 99999. Als ze allemaal zijn gebruikt, worden ze hergebruikt. + (een PID wordt niet hergebruikt als deze reeds in gebruik is). De TT kolom toont de tty vanwaar het programma draait en wordt nu buiten beschouwing gelaten. STAT toont de huidige staat van het programma @@ -1966,8 +1981,9 @@ proceseigenaar, evenals geheugengebruik. De optie toont informatie over daemonprocessen en met de optie laat &man.ps.1; de volledige - commandoregel zien, in plaats van een mogelijk afgekorte regel - omdat die te lang is om op het scherm te passsen.. + commandoregel zien voor elk proces, in plaats van een mogelijk + afgekorte regel omdat die te lang is om op het scherm te + passsen.De uitvoer van &man.top.1; is hetzelfde: @@ -2042,7 +2058,7 @@ Er is een overeenkomst om programma's die meestal draaien als daemon te voorzien van het achtervoegsel d. BIND is de Berkeley Internet Name - Daemon (het echte programma heet named), de + Domain (het echte programma heet named), de Apache webserver heet httpd, de printerspooldriver heet lpd, etc. Deze overeenkomst geldt niet @@ -2051,11 +2067,9 @@ sendmail en niet maild. - Soms is communicatie met een daemon nodig. Deze - communicatie heet signaleren (signals). - Er kan met een daemon (of met elk ander draaiend proces) - gecommuniceerd worden door er een signaal naartoe te sturen. Er - zijn een verschillende signalen. Sommige hebben een specifieke + Soms is communicatie met een daemon nodig. Een manier om dit te + doen is het versturen van een signaal (signals). + Er zijn een verschillende signalen. Sommige hebben een specifieke bedoeling, andere worden geïntrepeteerd door de applicatie. In de documentatie van de applicatie staat hoe de applicatie signalen intrepeteert. Er kan alleen een signaal naar een proces ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/book.sgml#4 (text+ko) ==== @@ -1,5 +1,5 @@ @@ -71,6 +71,7 @@ 2004 2005 2006 + 2007 The &os; Dutch Documentation Project ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml#3 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -127,7 +127,7 @@ Basispartities Bij het aanmaken van bestandssystemen met - &man.disklabel.8; of &man.sysinstall.8; is het van belang + &man.bsdlabel.8; of &man.sysinstall.8; is het van belang dat op een harde schijf de data-overdracht het snelst is aan de buitenste sporen en het langzaamst aan de binnenste. Kleinere en veelgebruikte bestandssystemen kunnen daarom het @@ -387,7 +387,7 @@ opstartinstellingen verwerkt kunnen worden door simpele opstartscripts. - Voor de komst van rcNG zetten applicaties simpelweg een + Voor de komst van rc.d zetten applicaties simpelweg een opstartscript in de map /usr/local/etc/rc.d dat dan uitgelezen werd door de opstartscripts van het systeem. Deze @@ -398,7 +398,7 @@ instellen naar de nieuwe stijl over te zetten, bleef sommige software nog steeds een script nodig hebben in de genoemde map. De subtiele verschillen in de scripts hangen af van het wel of - niet gebruiken van rcNG. Vóór &os; 5.1 + niet gebruiken van rc.d. Vóór &os; 5.1 werden scripts oude stijl gebruikt en in bijna alle gevallen voldoet een script nieuwe stijl. @@ -446,17 +446,17 @@ ondersteunen. De meldingen tijdens de installatie van de port bevatten vaak meer informatie. Sommige software van derden levert opstartscripts die de applicatie kunnen laten - werken met rcNG. Dit wordt in de volgende paragraaf + werken met rc.d. Dit wordt in de volgende paragraaf behandeld. Uitgebreide applicatieinstellingen - Nu &os; rcNG heeft, zijn de instellingen van - applicaties die mee moeten opstarten verbeterd. Er is meer - diepgang in gekomen. Door gebruik te maken van de - sleutelwoorden die in de paragraaf rcNG behandeld worden, + Nu &os; rc.d heeft, zijn de instellingen + van applicaties die mee moeten opstarten versimpeld en rijker aan + mogelijkheden. Door gebruik te maken van de sleutelwoorden die + in de paragraaf rc.d behandeld worden, kunnen applicaties nu starten na andere diensten. DNS kan bijvoorbeeld extra opties meekrijgen van /etc/rc.conf in plaats @@ -467,8 +467,7 @@ # # PROVIDE: utility # REQUIRE: DAEMON -# BEFORE: LOGIN -# KEYWORD: FreeBSD shutdown +# KEYWORD: shutdown # # WIJZIG DEZE WAARDEN NIET HIER @@ -493,9 +492,8 @@ run_rc_command "$1" Dit script zorgt ervoor dat - utility wordt gestart voor - de dienst login, maar na de dienst - daemon. Het biedt ook de mogelijkheid + utility wordt gestart na + de daemon dienst. Het biedt ook de mogelijkheid voor het instellingen en volgen van het PID of het process ID bestand. @@ -505,17 +503,12 @@ utility_enable="YES" - Deze nieuwe methode maakt het volgende mogelijk: + Deze methode maakt het volgende mogelijk: makkelijker commandoregelopties manipuleren, importeren van standaardfuncties uit /etc/rc.subr, - compatibiliteit met het &man.rcorder.8; programma en het - eenvoudiger instellingen via - /etc/rc.conf. In essentie kan dit - script zelfs geplaatst worden in de map /etc/rc.d. Dat kan in - potentie wel het &man.mergemaster.8; programma van de wijs - brengen als dat gebruikt wordt voor het bijwerken van - software. + compatibiliteit met de &man.rcorder.8; utility en levert + makkelijkere configuratie via het rc.conf + bestand. @@ -737,7 +730,7 @@ - + @@ -748,11 +741,11 @@ - Gebruik van rc met &os; 5.X en later + Gebruik van rc met &os; - rcNG + rc.d - &os; gebruikt inmiddels het NetBSD rc.d + Sinds 2002 gebruikt &os; het NetBSD rc.d systeem bij het opstarten van het systeem. Veel van de bestanden in /etc/rc.d zijn scripts voor basisdiensten die werken met de opties , @@ -765,7 +758,7 @@ &prompt.root; /etc/rc.d/sshd restart Deze procedure is vrijwel gelijk voor andere diensten. - Uiteraard worden diensten meestal automatisch gestart zoals + Uiteraard worden diensten meestal automatisch tijdens het booten gestart zoals in &man.rc.conf.5; staat. Om de Network Address Translation daemon bij het opstarten te laten starten is de volgende regel in /etc/rc.conf bijvoorbeeld voldoende: @@ -788,12 +781,12 @@ heeft in /etc/rc.conf. Als er een service gestart, gestopt of herstart moet worden, ongeacht de definities in /etc/rc.conf, moet het commando - voorafgegaan worden door force. Dus om + voorafgegaan worden door one. Dus om sshd te herstarten ongeacht /etc/rc.conf setting, voldoet het volgende commando: - &prompt.root; /etc/rc.d/sshd forcerestart + &prompt.root; /etc/rc.d/sshd onerestart Het is eenvoudig te controleren of een dienst is ingeschakeld is in /etc/rc.conf door het bijpassende @@ -815,12 +808,13 @@ &prompt.root; /etc/rc.d/sshd status sshd is running as pid 433. - Het is ook mogelijk om een dienst te herladen met de optie - . Dan wordt er getracht een signaal te + In sommige gevallen is het ook mogelijk om een dienst te + herstarten met de optie . Dan wordt er getracht een signaal te sturen aan een individuele dienst, waarbij de dienst de bestanden met instellingen opnieuw in moet lezen. Meestal komt dit neer op het verzenden van het signaal - SIGHUP signaal. + SIGHUP signaal. Deze optie wordt niet door + alle diensten ondersteund. Het rc.d-systeem wordt niet alleen gebruikt voor netwerkdiensten, maar ook voor het merendeel van de @@ -865,12 +859,6 @@ uitgevoerd vóór de aangegeven diensten. - - - KEYWORD: &os; of NetBSD. Dit wordt gebruikt voor - speciale eigenschappen van één van de - *BSD's. - Met deze methode kan een systeembeheerder gemakkelijk @@ -879,7 +867,11 @@ systemen. Meer informatie over het rc.d-systeem - staat in &man.rc.8; en &man.rc.subr.8;. + staat in &man.rc.8; en &man.rc.subr.8;. Als je geinteresseerd + bent in het schrijven van je eigen rc.d + script of om de huidige scripts te verbeteren is wellicht + dit artikel + interessant. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 26 06:20:02 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD0CE16A421; Wed, 26 Dec 2007 06:20:01 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5BAD816A41A for ; Wed, 26 Dec 2007 06:20:01 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4F07A13C459 for ; Wed, 26 Dec 2007 06:19:56 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ6JuCl069116 for ; Wed, 26 Dec 2007 06:19:56 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ6Jut2069113 for perforce@freebsd.org; Wed, 26 Dec 2007 06:19:56 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 06:19:56 GMT Message-Id: <200712260619.lBQ6Jut2069113@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 131650 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 06:20:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=131650 Change 131650 by jb@jb_freebsd1 on 2007/12/26 06:19:53 Size the global CPU array using SMP_MAXCPU to allow for the maximum number of CPUs that the kernel would support if configured with SMP enabled. When looping through CPU IDs, use the mp_maxid variable as the limit for the maximum ID to look for. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#9 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#9 (text) ==== @@ -568,7 +568,7 @@ #include #include #define gethrtime_unscaled dtrace_gethrtime -static cyclic_cpu_t cyclic_cpu[MAXCPU]; +static cyclic_cpu_t cyclic_cpu[SMP_MAXCPU]; static kmutex_t cpu_lock; #endif @@ -3382,7 +3382,7 @@ do { #else - for (i = 0; i < MAXCPU; i++) { + for (i = 0; i < mp_maxid; i++) { if (pcpu_find(i) == NULL) continue; @@ -3450,7 +3450,7 @@ do { #else - for (i = 0; i < MAXCPU; i++) { + for (i = 0; i < mp_maxid; i++) { if (pcpu_find(i) == NULL) continue; From owner-p4-projects@FreeBSD.ORG Wed Dec 26 07:16:58 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2142016A418; Wed, 26 Dec 2007 07:16:58 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AEAD316A420 for ; Wed, 26 Dec 2007 07:16:57 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A53A713C47E for ; Wed, 26 Dec 2007 07:16:57 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ7Gvjd078963 for ; Wed, 26 Dec 2007 07:16:57 GMT (envelope-from zhouzhouyi@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ7Gv6F078960 for perforce@freebsd.org; Wed, 26 Dec 2007 07:16:57 GMT (envelope-from zhouzhouyi@FreeBSD.org) Date: Wed, 26 Dec 2007 07:16:57 GMT Message-Id: <200712260716.lBQ7Gv6F078960@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zhouzhouyi@FreeBSD.org using -f From: Zhouyi ZHOU To: Perforce Change Reviews Cc: Subject: PERFORCE change 131652 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 07:16:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=131652 Change 131652 by zhouzhouyi@zhouzhouyi_mactest on 2007/12/26 07:16:53 Add test case for IPv6 fragment and defragment, waiting rwatson to do something :) Affected files ... .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tcpconnect6.c#3 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet6/00.t#2 edit Differences ... ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tcpconnect6.c#3 (text+ko) ==== @@ -137,7 +137,10 @@ err(1, "waiter: semop +1"); while (keepaccept) { + char *buf = malloc(20000); accept_sock = accept(listen_sock, NULL, NULL); + read(accept_sock, buf, 20000); + free(buf); close(accept_sock); count++; if (count == 1) @@ -180,6 +183,7 @@ h_addr_index = 0; while (hp->h_addr_list[h_addr_index] != NULL) { + char *buf; bcopy(hp->h_addr_list[h_addr_index], &server.sin6_addr, hp->h_length); server.sin6_port = htons(port); @@ -191,6 +195,9 @@ } perror("connecting stream socket"); } + buf = malloc(20000); /*force ipv6 to fragment*/ + write(sock, buf, 20000); + free(buf); break; } ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet6/00.t#2 (text+ko) ==== @@ -35,7 +35,7 @@ echo "1" #case 1: check the in_pcb alloc and destroy for IPv6 - + ifconfig lo0 mtu 1000 echo "pid = -2 inpcb_init_label" > ${mactest_conf} echo "pid = -2 inpcb_create:biba/high,mls/low biba/high,mls/low" >> ${mactest_conf} echo "pid = -2 inpcb_destroy_label" >> ${mactest_conf} From owner-p4-projects@FreeBSD.ORG Wed Dec 26 09:48:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9E02F16A41B; Wed, 26 Dec 2007 09:48:37 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4D1F816A419 for ; Wed, 26 Dec 2007 09:48:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4794913C44B for ; Wed, 26 Dec 2007 09:48:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ9mbFc041591 for ; Wed, 26 Dec 2007 09:48:37 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ9mbpi041588 for perforce@freebsd.org; Wed, 26 Dec 2007 09:48:37 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 09:48:37 GMT Message-Id: <200712260948.lBQ9mbpi041588@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 131662 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 09:48:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131662 Change 131662 by hselasky@hselasky_laptop001 on 2007/12/26 09:47:50 Bugfix. Add some more debug prints. And make sure that short received frames terminate the TD. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#5 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#5 (text+ko) ==== @@ -301,7 +301,7 @@ csr = bus_space_read_4(td->io_tag, td->io_hdl, td->status_reg); - DPRINTFN(4, "csr=0x%08x rem=%d\n", csr, td->remainder); + DPRINTFN(4, "csr=0x%08x rem=%u\n", csr, td->remainder); temp = csr; temp &= (AT91_UDP_CSR_RX_DATA_BK0 | @@ -387,8 +387,10 @@ uint32_t temp; uint16_t count; uint8_t to; + uint8_t got_short; to = 2; /* don't loop forever! */ + got_short = 0; /* check if any of the FIFO banks have data */ repeat: @@ -396,7 +398,7 @@ csr = bus_space_read_4(td->io_tag, td->io_hdl, td->status_reg); - DPRINTFN(4, "csr=0x%08x\n", csr); + DPRINTFN(4, "csr=0x%08x rem=%u\n", csr, td->remainder); if (csr & AT91_UDP_CSR_RXSETUP) { if (td->remainder == 0) { @@ -436,6 +438,7 @@ if (count < td->max_packet_size) { /* we have a short packet */ td->short_pkt = 1; + got_short = 1; } else { /* invalid USB packet */ td->error = 1; @@ -490,7 +493,7 @@ */ /* check if we are complete */ - if (td->remainder == 0) { + if ((td->remainder == 0) || got_short) { if (td->short_pkt) { /* we are complete */ return (0); @@ -520,7 +523,7 @@ csr = bus_space_read_4(td->io_tag, td->io_hdl, td->status_reg); - DPRINTFN(4, "csr=0x%08x rem=%d\n", csr, td->remainder); + DPRINTFN(4, "csr=0x%08x rem=%u\n", csr, td->remainder); if (csr & AT91_UDP_CSR_RXSETUP) { /* @@ -1267,7 +1270,7 @@ mtx_assert(&(udev->bus->mtx), MA_OWNED); - DPRINTFN(4, "\n"); + DPRINTFN(4, "pipe=%p\n", pipe); if (xfer) { /* cancel any ongoing transfers */ @@ -1291,7 +1294,7 @@ mtx_assert(&(udev->bus->mtx), MA_OWNED); - DPRINTFN(4, "\n"); + DPRINTFN(4, "pipe=%p\n", pipe); /* reset pipe state */ From owner-p4-projects@FreeBSD.ORG Wed Dec 26 09:51:43 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 279A016A4E6; Wed, 26 Dec 2007 09:51:43 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C3C3516A554 for ; Wed, 26 Dec 2007 09:51:42 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B659713C44B for ; Wed, 26 Dec 2007 09:51:40 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ9peif042331 for ; Wed, 26 Dec 2007 09:51:40 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ9peRv042327 for perforce@freebsd.org; Wed, 26 Dec 2007 09:51:40 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 09:51:40 GMT Message-Id: <200712260951.lBQ9peRv042327@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 131663 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 09:51:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131663 Change 131663 by peter@peter_overcee on 2007/12/26 09:50:58 Vendor branch apr-1.2.12, apr-util-1.2.12, neon-0.26.4 and subversion-1.4.6 Affected files ... .. //depot/projects/hammer/contrib/apr-util/CHANGES#1 branch .. //depot/projects/hammer/contrib/apr-util/LICENSE#1 branch .. //depot/projects/hammer/contrib/apr-util/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr-util/Makefile.win#1 branch .. //depot/projects/hammer/contrib/apr-util/NOTICE#1 branch .. //depot/projects/hammer/contrib/apr-util/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr-util/README.MySQL#1 branch .. //depot/projects/hammer/contrib/apr-util/apr-util.pc.in#1 branch .. //depot/projects/hammer/contrib/apr-util/apr-util.spec#1 branch .. //depot/projects/hammer/contrib/apr-util/aprutil.dsp#1 branch .. //depot/projects/hammer/contrib/apr-util/aprutil.dsw#1 branch .. //depot/projects/hammer/contrib/apr-util/apu-config.in#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_brigade.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_alloc.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_eos.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_file.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_flush.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_heap.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_mmap.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_pipe.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_pool.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_refcount.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_simple.c#1 branch .. //depot/projects/hammer/contrib/apr-util/buckets/apr_buckets_socket.c#1 branch .. //depot/projects/hammer/contrib/apr-util/build-outputs.mk#1 branch .. //depot/projects/hammer/contrib/apr-util/build.conf#1 branch .. //depot/projects/hammer/contrib/apr-util/build/apr_common.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/apu-conf.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/apu-hints.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/apu-iconv.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/config.guess#1 branch .. //depot/projects/hammer/contrib/apr-util/build/config.sub#1 branch .. //depot/projects/hammer/contrib/apr-util/build/dbd.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/dbm.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/find_apr.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/find_apu.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/build/get-version.sh#1 branch .. //depot/projects/hammer/contrib/apr-util/build/install.sh#1 branch .. //depot/projects/hammer/contrib/apr-util/build/mkdir.sh#1 branch .. //depot/projects/hammer/contrib/apr-util/build/pkg/README#1 branch .. //depot/projects/hammer/contrib/apr-util/build/pkg/buildpkg.sh#1 branch .. //depot/projects/hammer/contrib/apr-util/build/pkg/pkginfo.in#1 branch .. //depot/projects/hammer/contrib/apr-util/build/rpm/apr-util.spec.in#1 branch .. //depot/projects/hammer/contrib/apr-util/build/w32locatedb.pl#1 branch .. //depot/projects/hammer/contrib/apr-util/buildconf#1 branch .. //depot/projects/hammer/contrib/apr-util/config.layout#1 branch .. //depot/projects/hammer/contrib/apr-util/configure#1 branch .. //depot/projects/hammer/contrib/apr-util/configure.in#1 branch .. //depot/projects/hammer/contrib/apr-util/crypto/apr_md4.c#1 branch .. //depot/projects/hammer/contrib/apr-util/crypto/apr_md5.c#1 branch .. //depot/projects/hammer/contrib/apr-util/crypto/apr_sha1.c#1 branch .. //depot/projects/hammer/contrib/apr-util/crypto/getuuid.c#1 branch .. //depot/projects/hammer/contrib/apr-util/crypto/uuid.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/NWGNUdbdmysql#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/NWGNUdbdpgsql#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/NWGNUdbdsqli2#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/NWGNUdbdsqli3#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/apr_dbd.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/apr_dbd_mysql.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/apr_dbd_pgsql.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/apr_dbd_sqlite2.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbd/apr_dbd_sqlite3.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/apr_dbm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/apr_dbm_berkeleydb.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/apr_dbm_gdbm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/apr_dbm_ndbm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/apr_dbm_sdbm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm_hash.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm_lock.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm_pair.c#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm_pair.h#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm_private.h#1 branch .. //depot/projects/hammer/contrib/apr-util/dbm/sdbm/sdbm_tune.h#1 branch .. //depot/projects/hammer/contrib/apr-util/docs/doxygen.conf#1 branch .. //depot/projects/hammer/contrib/apr-util/encoding/apr_base64.c#1 branch .. //depot/projects/hammer/contrib/apr-util/export_vars.sh.in#1 branch .. //depot/projects/hammer/contrib/apr-util/hooks/apr_hooks.c#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_anylock.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_base64.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_buckets.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_date.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_dbd.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_dbm.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_hooks.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_ldap.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_ldap.hnw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_ldap.hw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_ldap_init.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_ldap_option.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_ldap_url.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_md4.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_md5.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_optional.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_optional_hooks.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_queue.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_reslist.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_rmm.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_sdbm.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_sha1.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_strmatch.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_uri.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_uuid.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_xlate.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apr_xml.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu.hnw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu.hw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu_version.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu_want.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu_want.hnw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/apu_want.hw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apr_dbd_internal.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apr_dbm_private.h#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apu_config.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apu_config.hnw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apu_config.hw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apu_select_dbm.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apu_select_dbm.hnw#1 branch .. //depot/projects/hammer/contrib/apr-util/include/private/apu_select_dbm.hw#1 branch .. //depot/projects/hammer/contrib/apr-util/ldap/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr-util/ldap/apr_ldap_init.c#1 branch .. //depot/projects/hammer/contrib/apr-util/ldap/apr_ldap_option.c#1 branch .. //depot/projects/hammer/contrib/apr-util/ldap/apr_ldap_url.c#1 branch .. //depot/projects/hammer/contrib/apr-util/libaprutil.dsp#1 branch .. //depot/projects/hammer/contrib/apr-util/libaprutil.rc#1 branch .. //depot/projects/hammer/contrib/apr-util/misc/apr_date.c#1 branch .. //depot/projects/hammer/contrib/apr-util/misc/apr_queue.c#1 branch .. //depot/projects/hammer/contrib/apr-util/misc/apr_reslist.c#1 branch .. //depot/projects/hammer/contrib/apr-util/misc/apr_rmm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/misc/apu_version.c#1 branch .. //depot/projects/hammer/contrib/apr-util/renames_pending#1 branch .. //depot/projects/hammer/contrib/apr-util/strmatch/apr_strmatch.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr-util/test/Makefile.win#1 branch .. //depot/projects/hammer/contrib/apr-util/test/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr-util/test/abts.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/abts.h#1 branch .. //depot/projects/hammer/contrib/apr-util/test/abts_tests.h#1 branch .. //depot/projects/hammer/contrib/apr-util/test/dbd.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/nw_misc.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/nwgnuaputest#1 branch .. //depot/projects/hammer/contrib/apr-util/test/test_apu.h#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testall.dsw#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testbuckets.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testdate.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testdbd.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testdbm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testldap.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testmd4.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testmd5.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testpass.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testqueue.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testreslist.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testrmm.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/teststrmatch.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testuri.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testutil.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testutil.h#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testutildll.dsp#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testutillib.dsp#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testuuid.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testxlate.c#1 branch .. //depot/projects/hammer/contrib/apr-util/test/testxml.c#1 branch .. //depot/projects/hammer/contrib/apr-util/uri/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr-util/uri/apr_uri.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xlate/xlate.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/apr_xml.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/COPYING#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/README#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/acconfig.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/aclocal.m4#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/buildconf.sh#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/config.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/configure#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/configure.in#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/PrintPath#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/config.guess#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/config.sub#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/install-sh#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/ltmain.sh#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/missing#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/conftools/mkinstalldirs#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/ascii.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/asciitab.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/config.hnw#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/expat.dsp#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/expat.h.in#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/iasciitab.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/latin1tab.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/map_osd_ebcdic_df04_1.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/nametab.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/osd_ebcdic_df04_1.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/utf8tab.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/winconfig.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xml.dsp#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmlparse.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmlrole.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmlrole.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmltok.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmltok.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmltok_impl.c#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmltok_impl.h#1 branch .. //depot/projects/hammer/contrib/apr-util/xml/expat/lib/xmltok_ns.c#1 branch .. //depot/projects/hammer/contrib/apr/CHANGES#1 branch .. //depot/projects/hammer/contrib/apr/LICENSE#1 branch .. //depot/projects/hammer/contrib/apr/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr/Makefile.win#1 branch .. //depot/projects/hammer/contrib/apr/NOTICE#1 branch .. //depot/projects/hammer/contrib/apr/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr/README.dev#1 branch .. //depot/projects/hammer/contrib/apr/apr-config.in#1 branch .. //depot/projects/hammer/contrib/apr/apr.dsp#1 branch .. //depot/projects/hammer/contrib/apr/apr.dsw#1 branch .. //depot/projects/hammer/contrib/apr/apr.pc.in#1 branch .. //depot/projects/hammer/contrib/apr/apr.spec#1 branch .. //depot/projects/hammer/contrib/apr/atomic/netware/apr_atomic.c#1 branch .. //depot/projects/hammer/contrib/apr/atomic/os390/atomic.c#1 branch .. //depot/projects/hammer/contrib/apr/atomic/unix/apr_atomic.c#1 branch .. //depot/projects/hammer/contrib/apr/atomic/win32/apr_atomic.c#1 branch .. //depot/projects/hammer/contrib/apr/build-outputs.mk#1 branch .. //depot/projects/hammer/contrib/apr/build.conf#1 branch .. //depot/projects/hammer/contrib/apr/build/MakeEtags#1 branch .. //depot/projects/hammer/contrib/apr/build/NWGNUenvironment.inc#1 branch .. //depot/projects/hammer/contrib/apr/build/NWGNUhead.inc#1 branch .. //depot/projects/hammer/contrib/apr/build/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr/build/NWGNUtail.inc#1 branch .. //depot/projects/hammer/contrib/apr/build/PrintPath#1 branch .. //depot/projects/hammer/contrib/apr/build/aplibtool.c#1 branch .. //depot/projects/hammer/contrib/apr/build/apr_app.dsp#1 branch .. //depot/projects/hammer/contrib/apr/build/apr_common.m4#1 branch .. //depot/projects/hammer/contrib/apr/build/apr_hints.m4#1 branch .. //depot/projects/hammer/contrib/apr/build/apr_network.m4#1 branch .. //depot/projects/hammer/contrib/apr/build/apr_rules.mk.in#1 branch .. //depot/projects/hammer/contrib/apr/build/apr_threads.m4#1 branch .. //depot/projects/hammer/contrib/apr/build/buildcheck.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/config.guess#1 branch .. //depot/projects/hammer/contrib/apr/build/config.sub#1 branch .. //depot/projects/hammer/contrib/apr/build/cvtdsp.pl#1 branch .. //depot/projects/hammer/contrib/apr/build/find_apr.m4#1 branch .. //depot/projects/hammer/contrib/apr/build/fixwin32mak.pl#1 branch .. //depot/projects/hammer/contrib/apr/build/gen-build.py#1 branch .. //depot/projects/hammer/contrib/apr/build/get-version.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/install.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/jlibtool.c#1 branch .. //depot/projects/hammer/contrib/apr/build/libapr_app.dsp#1 branch .. //depot/projects/hammer/contrib/apr/build/libtool.m4#1 branch .. //depot/projects/hammer/contrib/apr/build/lineends.pl#1 branch .. //depot/projects/hammer/contrib/apr/build/ltmain.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/make_exports.awk#1 branch .. //depot/projects/hammer/contrib/apr/build/make_nw_export.awk#1 branch .. //depot/projects/hammer/contrib/apr/build/make_var_export.awk#1 branch .. //depot/projects/hammer/contrib/apr/build/mkdir.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/nw_export.inc#1 branch .. //depot/projects/hammer/contrib/apr/build/nw_ver.awk#1 branch .. //depot/projects/hammer/contrib/apr/build/pkg/README#1 branch .. //depot/projects/hammer/contrib/apr/build/pkg/buildpkg.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/pkg/pkginfo.in#1 branch .. //depot/projects/hammer/contrib/apr/build/prebuildNW.bat#1 branch .. //depot/projects/hammer/contrib/apr/build/rpm/apr.spec.in#1 branch .. //depot/projects/hammer/contrib/apr/build/run-gcov.sh#1 branch .. //depot/projects/hammer/contrib/apr/build/win32ver.awk#1 branch .. //depot/projects/hammer/contrib/apr/buildconf#1 branch .. //depot/projects/hammer/contrib/apr/config.layout#1 branch .. //depot/projects/hammer/contrib/apr/configure#1 branch .. //depot/projects/hammer/contrib/apr/configure.in#1 branch .. //depot/projects/hammer/contrib/apr/docs/APRDesign.html#1 branch .. //depot/projects/hammer/contrib/apr/docs/canonical_filenames.html#1 branch .. //depot/projects/hammer/contrib/apr/docs/doxygen.conf#1 branch .. //depot/projects/hammer/contrib/apr/docs/incomplete_types#1 branch .. //depot/projects/hammer/contrib/apr/docs/non_apr_programs#1 branch .. //depot/projects/hammer/contrib/apr/docs/pool-design.html#1 branch .. //depot/projects/hammer/contrib/apr/docs/win32_builds.html#1 branch .. //depot/projects/hammer/contrib/apr/dso/aix/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/dso/beos/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/dso/netware/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/dso/os2/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/dso/os390/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/dso/unix/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/dso/win32/dso.c#1 branch .. //depot/projects/hammer/contrib/apr/emacs-mode#1 branch .. //depot/projects/hammer/contrib/apr/file_io/netware/filepath.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/netware/filestat.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/netware/filesys.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/netware/flock.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/netware/mktemp.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/netware/pipe.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/copy.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/dir.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/dir_make_recurse.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/fileacc.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/filedup.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/filepath.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/filepath_util.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/filestat.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/filesys.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/flock.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/fullrw.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/maperrorcode.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/mktemp.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/open.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/pipe.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/readwrite.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/seek.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/os2/tempdir.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/copy.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/dir.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/fileacc.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/filedup.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/filepath.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/filepath_util.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/filestat.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/flock.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/fullrw.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/mktemp.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/open.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/pipe.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/readwrite.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/seek.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/unix/tempdir.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/dir.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/filedup.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/filepath.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/filestat.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/filesys.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/flock.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/open.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/pipe.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/readwrite.c#1 branch .. //depot/projects/hammer/contrib/apr/file_io/win32/seek.c#1 branch .. //depot/projects/hammer/contrib/apr/images/ScanDocBig.jpg#1 branch .. //depot/projects/hammer/contrib/apr/images/ScanDocSmall.jpg#1 branch .. //depot/projects/hammer/contrib/apr/images/ball1.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/ball1.png#1 branch .. //depot/projects/hammer/contrib/apr/images/ball2.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/ball2.png#1 branch .. //depot/projects/hammer/contrib/apr/images/bug.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/bug.png#1 branch .. //depot/projects/hammer/contrib/apr/images/caution.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/caution.png#1 branch .. //depot/projects/hammer/contrib/apr/images/master.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/master.png#1 branch .. //depot/projects/hammer/contrib/apr/images/tip.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/tip.png#1 branch .. //depot/projects/hammer/contrib/apr/images/warning.gif#1 branch .. //depot/projects/hammer/contrib/apr/images/warning.png#1 branch .. //depot/projects/hammer/contrib/apr/include/apr.h.in#1 branch .. //depot/projects/hammer/contrib/apr/include/apr.hnw#1 branch .. //depot/projects/hammer/contrib/apr/include/apr.hw#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_allocator.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_atomic.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_env.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_errno.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_file_info.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_file_io.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_fnmatch.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_general.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_getopt.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_global_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_hash.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_inherit.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_lib.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_mmap.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_network_io.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_poll.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_pools.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_portable.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_proc_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_random.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_ring.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_shm.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_signal.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_strings.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_support.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_tables.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_thread_cond.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_thread_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_thread_proc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_thread_rwlock.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_time.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_user.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_version.h#1 branch .. //depot/projects/hammer/contrib/apr/include/apr_want.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/aix/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/apr_private_common.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/beos/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/beos/apr_arch_proc_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/beos/apr_arch_thread_cond.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/beos/apr_arch_thread_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/beos/apr_arch_thread_rwlock.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/beos/apr_arch_threadproc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_file_io.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_global_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_internal_time.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_networkio.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_pre_nw.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_proc_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_thread_cond.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_thread_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_thread_rwlock.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_arch_threadproc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/netware/apr_private.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_file_io.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_networkio.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_os2calls.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_proc_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_thread_cond.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_thread_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_thread_rwlock.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os2/apr_arch_threadproc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/os390/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_file_io.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_global_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_inherit.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_internal_time.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_misc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_networkio.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_poll_private.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_proc_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_shm.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_thread_cond.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_thread_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_thread_rwlock.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_arch_threadproc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/unix/apr_private.h.in#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_atime.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_dso.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_file_io.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_inherit.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_misc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_networkio.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_proc_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_thread_cond.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_thread_mutex.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_thread_rwlock.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_threadproc.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_arch_utf8.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_dbg_win32_handles.h#1 branch .. //depot/projects/hammer/contrib/apr/include/arch/win32/apr_private.h#1 branch .. //depot/projects/hammer/contrib/apr/libapr.dsp#1 branch .. //depot/projects/hammer/contrib/apr/libapr.rc#1 branch .. //depot/projects/hammer/contrib/apr/libaprnw.mcp.zip#1 branch .. //depot/projects/hammer/contrib/apr/locks/beos/proc_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/beos/thread_cond.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/beos/thread_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/beos/thread_rwlock.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/netware/proc_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/netware/thread_cond.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/netware/thread_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/netware/thread_rwlock.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/os2/proc_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/os2/thread_cond.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/os2/thread_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/os2/thread_rwlock.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/unix/global_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/unix/proc_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/unix/thread_cond.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/unix/thread_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/unix/thread_rwlock.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/win32/proc_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/win32/thread_cond.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/win32/thread_mutex.c#1 branch .. //depot/projects/hammer/contrib/apr/locks/win32/thread_rwlock.c#1 branch .. //depot/projects/hammer/contrib/apr/memory/unix/apr_pools.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/netware/apr.xdc#1 branch .. //depot/projects/hammer/contrib/apr/misc/netware/aprlib.def#1 branch .. //depot/projects/hammer/contrib/apr/misc/netware/charset.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/netware/libprews.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/netware/rand.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/netware/start.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/charset.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/env.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/errorcodes.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/getopt.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/otherchild.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/rand.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/randbyte_os2.inc#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/start.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/unix/version.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/apr_app.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/charset.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/env.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/internal.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/misc.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/rand.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/start.c#1 branch .. //depot/projects/hammer/contrib/apr/misc/win32/utf8.c#1 branch .. //depot/projects/hammer/contrib/apr/mmap/unix/common.c#1 branch .. //depot/projects/hammer/contrib/apr/mmap/unix/mmap.c#1 branch .. //depot/projects/hammer/contrib/apr/mmap/win32/mmap.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/beos/sendrecv.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/beos/socketcommon.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/inet_ntop.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/inet_pton.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/os2calls.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/sendrecv.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/sendrecv_udp.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/sockaddr.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/sockets.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/os2/sockopt.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/inet_ntop.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/inet_pton.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/multicast.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/sendrecv.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/sockaddr.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/sockets.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/unix/sockopt.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/win32/sendrecv.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/win32/sockets.c#1 branch .. //depot/projects/hammer/contrib/apr/network_io/win32/sockopt.c#1 branch .. //depot/projects/hammer/contrib/apr/passwd/apr_getpass.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/os2/poll.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/os2/pollset.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/unix/epoll.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/unix/kqueue.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/unix/poll.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/unix/port.c#1 branch .. //depot/projects/hammer/contrib/apr/poll/unix/select.c#1 branch .. //depot/projects/hammer/contrib/apr/random/unix/apr_random.c#1 branch .. //depot/projects/hammer/contrib/apr/random/unix/sha2.c#1 branch .. //depot/projects/hammer/contrib/apr/random/unix/sha2.h#1 branch .. //depot/projects/hammer/contrib/apr/random/unix/sha2_glue.c#1 branch .. //depot/projects/hammer/contrib/apr/shmem/beos/shm.c#1 branch .. //depot/projects/hammer/contrib/apr/shmem/os2/shm.c#1 branch .. //depot/projects/hammer/contrib/apr/shmem/unix/shm.c#1 branch .. //depot/projects/hammer/contrib/apr/shmem/win32/shm.c#1 branch .. //depot/projects/hammer/contrib/apr/strings/apr_cpystrn.c#1 branch .. //depot/projects/hammer/contrib/apr/strings/apr_fnmatch.c#1 branch .. //depot/projects/hammer/contrib/apr/strings/apr_snprintf.c#1 branch .. //depot/projects/hammer/contrib/apr/strings/apr_strings.c#1 branch .. //depot/projects/hammer/contrib/apr/strings/apr_strnatcmp.c#1 branch .. //depot/projects/hammer/contrib/apr/strings/apr_strtok.c#1 branch .. //depot/projects/hammer/contrib/apr/support/unix/waitio.c#1 branch .. //depot/projects/hammer/contrib/apr/tables/apr_hash.c#1 branch .. //depot/projects/hammer/contrib/apr/tables/apr_tables.c#1 branch .. //depot/projects/hammer/contrib/apr/test/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr/test/Makefile.win#1 branch .. //depot/projects/hammer/contrib/apr/test/NWGNUmakefile#1 branch .. //depot/projects/hammer/contrib/apr/test/README#1 branch .. //depot/projects/hammer/contrib/apr/test/abts.c#1 branch .. //depot/projects/hammer/contrib/apr/test/abts.h#1 branch .. //depot/projects/hammer/contrib/apr/test/abts_tests.h#1 branch .. //depot/projects/hammer/contrib/apr/test/data/file_datafile.txt#1 branch .. //depot/projects/hammer/contrib/apr/test/data/mmap_datafile.txt#1 branch .. //depot/projects/hammer/contrib/apr/test/globalmutexchild.c#1 branch .. //depot/projects/hammer/contrib/apr/test/internal/Makefile.in#1 branch .. //depot/projects/hammer/contrib/apr/test/internal/Makefile.win#1 branch .. //depot/projects/hammer/contrib/apr/test/internal/testregex.c#1 branch .. //depot/projects/hammer/contrib/apr/test/internal/testucs.c#1 branch .. //depot/projects/hammer/contrib/apr/test/mod_test.c#1 branch .. //depot/projects/hammer/contrib/apr/test/nw_misc.c#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnuaprtest#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnuglobalmutexchild#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnumod_test#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnuproc_child#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnureadchild#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnusockchild#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnutestatmc#1 branch .. //depot/projects/hammer/contrib/apr/test/nwgnutryread#1 branch .. //depot/projects/hammer/contrib/apr/test/occhild.c#1 branch .. //depot/projects/hammer/contrib/apr/test/proc_child.c#1 branch .. //depot/projects/hammer/contrib/apr/test/readchild.c#1 branch .. //depot/projects/hammer/contrib/apr/test/sendfile.c#1 branch .. //depot/projects/hammer/contrib/apr/test/sockchild.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testall.dsw#1 branch .. //depot/projects/hammer/contrib/apr/test/testapp.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testargs.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testatomic.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testdir.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testdll.dsp#1 branch .. //depot/projects/hammer/contrib/apr/test/testdso.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testdup.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testenv.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testfile.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testfilecopy.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testfileinfo.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testflock.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testflock.h#1 branch .. //depot/projects/hammer/contrib/apr/test/testfmt.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testfnmatch.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testglobalmutex.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testglobalmutex.h#1 branch .. //depot/projects/hammer/contrib/apr/test/testhash.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testipsub.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testlfs.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testlib.dsp#1 branch .. //depot/projects/hammer/contrib/apr/test/testlock.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testlockperf.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testmmap.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testmutexscope.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testnames.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testoc.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testpath.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testpipe.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testpoll.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testpools.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testproc.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testprocmutex.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testrand.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testrand2.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testshm.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testshm.h#1 branch .. //depot/projects/hammer/contrib/apr/test/testshmconsumer.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testshmproducer.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testsleep.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testsock.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testsock.h#1 branch .. //depot/projects/hammer/contrib/apr/test/testsockets.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testsockopt.c#1 branch .. //depot/projects/hammer/contrib/apr/test/teststr.c#1 branch .. //depot/projects/hammer/contrib/apr/test/teststrnatcmp.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testtable.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testtemp.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testthread.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testtime.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testud.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testuser.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testutil.c#1 branch .. //depot/projects/hammer/contrib/apr/test/testutil.h#1 branch .. //depot/projects/hammer/contrib/apr/test/testvsn.c#1 branch .. //depot/projects/hammer/contrib/apr/test/tryread.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/beos/apr_proc_stub.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/beos/proc.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/beos/thread.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/beos/threadpriv.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/beos/threadproc_common.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/netware/proc.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/netware/procsup.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/netware/signals.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/netware/thread.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/netware/threadpriv.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/os2/proc.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/os2/signals.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/os2/thread.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/os2/threadpriv.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/unix/proc.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/unix/procsup.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/unix/signals.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/unix/thread.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/unix/threadpriv.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/win32/proc.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/win32/signals.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/win32/thread.c#1 branch .. //depot/projects/hammer/contrib/apr/threadproc/win32/threadpriv.c#1 branch .. //depot/projects/hammer/contrib/apr/time/unix/time.c#1 branch .. //depot/projects/hammer/contrib/apr/time/unix/timestr.c#1 branch .. //depot/projects/hammer/contrib/apr/time/win32/access.c#1 branch .. //depot/projects/hammer/contrib/apr/time/win32/time.c#1 branch .. //depot/projects/hammer/contrib/apr/time/win32/timestr.c#1 branch .. //depot/projects/hammer/contrib/apr/user/netware/groupinfo.c#1 branch .. //depot/projects/hammer/contrib/apr/user/netware/userinfo.c#1 branch .. //depot/projects/hammer/contrib/apr/user/unix/groupinfo.c#1 branch .. //depot/projects/hammer/contrib/apr/user/unix/userinfo.c#1 branch .. //depot/projects/hammer/contrib/apr/user/win32/groupinfo.c#1 branch .. //depot/projects/hammer/contrib/apr/user/win32/userinfo.c#1 branch .. //depot/projects/hammer/contrib/neon/.package#1 branch .. //depot/projects/hammer/contrib/neon/.release.sh#1 branch .. //depot/projects/hammer/contrib/neon/.version#1 branch .. //depot/projects/hammer/contrib/neon/AUTHORS#1 branch .. //depot/projects/hammer/contrib/neon/BUGS#1 branch .. //depot/projects/hammer/contrib/neon/ChangeLog#1 branch .. //depot/projects/hammer/contrib/neon/ChangeLog.CVS#1 branch .. //depot/projects/hammer/contrib/neon/INSTALL.win32#1 branch .. //depot/projects/hammer/contrib/neon/Makefile.in#1 branch .. //depot/projects/hammer/contrib/neon/NEWS#1 branch .. //depot/projects/hammer/contrib/neon/README#1 branch .. //depot/projects/hammer/contrib/neon/THANKS#1 branch .. //depot/projects/hammer/contrib/neon/TODO#1 branch .. //depot/projects/hammer/contrib/neon/aclocal.m4#1 branch .. //depot/projects/hammer/contrib/neon/autogen.sh#1 branch .. //depot/projects/hammer/contrib/neon/config.guess#1 branch .. //depot/projects/hammer/contrib/neon/config.h.in#1 branch .. //depot/projects/hammer/contrib/neon/config.hw#1 branch .. //depot/projects/hammer/contrib/neon/config.hw.in#1 branch .. //depot/projects/hammer/contrib/neon/config.sub#1 branch .. //depot/projects/hammer/contrib/neon/configure#1 branch .. //depot/projects/hammer/contrib/neon/configure.in#1 branch .. //depot/projects/hammer/contrib/neon/doc/TODO#1 branch .. //depot/projects/hammer/contrib/neon/doc/biblio.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/date.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/feat.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/html.xsl#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/api.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/biblio.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/compliance.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/features.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/index.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/intro.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/ref.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refalloc.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refauth.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refbuf.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refbufapp.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refbufcr.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refbufdest.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refbufutil.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refcert.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refclicert.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refconfig.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/referr.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/reffeat.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refgetst.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refi18n.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refiaddr.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refneon.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refopts.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refreq.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refreqbody.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refreqhdr.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refreqopts.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refresolve.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refresphdr.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refsess.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refshave.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refsockinit.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refsslca.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refsslcert2.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refsslcertio.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refssldname.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refsslvfy.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refstatus.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/reftok.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refvers.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/refxml.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/using.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/html/xml.html#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_add_request_header.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_addr_destroy.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_addr_error.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_addr_first.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_addr_next.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_addr_resolve.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_addr_result.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_altered.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_append.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_clear.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_concat.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_create.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_destroy.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_finish.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_grow.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_ncreate.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_buffer_zappend.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_calloc.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_close_connection.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_forget_auth.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_get_error.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_get_response_header.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_get_scheme.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_get_server_hostport.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_get_status.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_has_support.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_i18n_init.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_iaddr_cmp.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_iaddr_free.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_iaddr_make.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_iaddr_print.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_iaddr_typeof.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_malloc.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_oom_callback.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_print_request_header.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_qtoken.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_realloc.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_request_create.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_request_destroy.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_request_dispatch.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_response_header_iterate.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_session_create.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_session_destroy.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_session_proxy.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_error.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_persist.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_proxy_auth.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_read_timeout.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_request_body_buffer.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_request_body_fd.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_request_body_fd64.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_request_expect100.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_server_auth.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_set_useragent.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_shave.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_sock_exit.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_sock_init.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_cmp.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_export.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_free.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_identity.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_import.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_issuer.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_read.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_signedby.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_subject.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_cert_write.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_clicert_decrypt.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_clicert_encrypted.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_clicert_free.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_clicert_name.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_clicert_owner.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_clicert_read.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_dname_cmp.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_readable_dname.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_set_verify.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_trust_cert.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_ssl_trust_default_ca.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_status.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_strdup.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_strndup.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_token.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_version_match.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_version_string.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_xml_create.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/ne_xml_destroy.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/neon-config.1#1 branch .. //depot/projects/hammer/contrib/neon/doc/man/neon.3#1 branch .. //depot/projects/hammer/contrib/neon/doc/manual.css#1 branch .. //depot/projects/hammer/contrib/neon/doc/manual.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/parsing-xml.txt#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/alloc.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/auth.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/buf.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/bufapp.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/bufcr.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/bufdest.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/bufutil.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/clicert.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/config.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/err.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/feat.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/getst.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/i18n.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/iaddr.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/init.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/neon.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/opts.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/req.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/reqbody.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/reqhdr.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/reqopts.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/resolve.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/resphdr.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/sess.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/shave.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/sslca.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/sslcert.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/sslcert2.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/sslcertio.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/ssldname.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/ssltrust.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/sslvfy.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/status.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/tok.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/vers.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ref/xml.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/refentry.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/ssl.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/using-neon.txt#1 branch .. //depot/projects/hammer/contrib/neon/doc/using.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/version.xml#1 branch .. //depot/projects/hammer/contrib/neon/doc/xml.xml#1 branch .. //depot/projects/hammer/contrib/neon/install-sh#1 branch .. //depot/projects/hammer/contrib/neon/ltmain.sh#1 branch .. //depot/projects/hammer/contrib/neon/macros/ChangeLog#1 branch .. //depot/projects/hammer/contrib/neon/macros/neon-test.m4#1 branch .. //depot/projects/hammer/contrib/neon/macros/neon-xml-parser.m4#1 branch .. //depot/projects/hammer/contrib/neon/macros/neon.m4#1 branch .. //depot/projects/hammer/contrib/neon/macros/socklen-arg-type.m4#1 branch .. //depot/projects/hammer/contrib/neon/neon-config.in#1 branch .. //depot/projects/hammer/contrib/neon/neon.mak#1 branch .. //depot/projects/hammer/contrib/neon/neon.pc.in#1 branch .. //depot/projects/hammer/contrib/neon/po/cs.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/cs.po#1 branch .. //depot/projects/hammer/contrib/neon/po/de.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/de.po#1 branch .. //depot/projects/hammer/contrib/neon/po/fr.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/fr.po#1 branch .. //depot/projects/hammer/contrib/neon/po/ja.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/ja.po#1 branch .. //depot/projects/hammer/contrib/neon/po/neon.pot#1 branch .. //depot/projects/hammer/contrib/neon/po/nn.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/nn.po#1 branch .. //depot/projects/hammer/contrib/neon/po/ru.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/ru.po#1 branch .. //depot/projects/hammer/contrib/neon/po/tr.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/tr.po#1 branch .. //depot/projects/hammer/contrib/neon/po/zh.gmo#1 branch .. //depot/projects/hammer/contrib/neon/po/zh.po#1 branch .. //depot/projects/hammer/contrib/neon/src/COPYING.LIB#1 branch .. //depot/projects/hammer/contrib/neon/src/ChangeLog#1 branch .. //depot/projects/hammer/contrib/neon/src/Makefile.in#1 branch .. //depot/projects/hammer/contrib/neon/src/README#1 branch .. //depot/projects/hammer/contrib/neon/src/memleak.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_207.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_207.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_acl.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_acl.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_alloc.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_alloc.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_auth.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_auth.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_basic.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_basic.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_compress.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_compress.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_dates.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_dates.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_defs.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_gnutls.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_i18n.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_i18n.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_internal.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_locks.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_locks.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_md5.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_md5.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_openssl.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_private.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_privssl.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_props.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_props.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_redirect.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_redirect.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_request.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_request.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_session.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_session.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_socket.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_socket.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_ssl.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_sspi.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_sspi.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_string.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_string.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_stubssl.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_uri.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_uri.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_utils.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_utils.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_xml.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_xml.h#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_xmlreq.c#1 branch .. //depot/projects/hammer/contrib/neon/src/ne_xmlreq.h#1 branch .. //depot/projects/hammer/contrib/neon/test/COPYING#1 branch .. //depot/projects/hammer/contrib/neon/test/ChangeLog#1 branch .. //depot/projects/hammer/contrib/neon/test/Makefile.in#1 branch .. //depot/projects/hammer/contrib/neon/test/README#1 branch .. //depot/projects/hammer/contrib/neon/test/STATUS#1 branch .. //depot/projects/hammer/contrib/neon/test/acl.c#1 branch .. //depot/projects/hammer/contrib/neon/test/auth.c#1 branch .. //depot/projects/hammer/contrib/neon/test/basic.c#1 branch .. //depot/projects/hammer/contrib/neon/test/common/ChangeLog#1 branch .. //depot/projects/hammer/contrib/neon/test/common/README#1 branch .. //depot/projects/hammer/contrib/neon/test/common/child.c#1 branch .. //depot/projects/hammer/contrib/neon/test/common/child.h#1 branch .. //depot/projects/hammer/contrib/neon/test/common/run.sh#1 branch .. //depot/projects/hammer/contrib/neon/test/common/tests.c#1 branch .. //depot/projects/hammer/contrib/neon/test/common/tests.h#1 branch .. //depot/projects/hammer/contrib/neon/test/compress.c#1 branch .. //depot/projects/hammer/contrib/neon/test/expired.pem#1 branch .. //depot/projects/hammer/contrib/neon/test/htdocs/plain#1 branch .. //depot/projects/hammer/contrib/neon/test/largefile.c#1 branch .. //depot/projects/hammer/contrib/neon/test/lock.c#1 branch .. //depot/projects/hammer/contrib/neon/test/makekeys.sh#1 branch .. //depot/projects/hammer/contrib/neon/test/notvalid.pem#1 branch .. //depot/projects/hammer/contrib/neon/test/openssl.conf#1 branch .. //depot/projects/hammer/contrib/neon/test/props.c#1 branch .. //depot/projects/hammer/contrib/neon/test/redirect.c#1 branch .. //depot/projects/hammer/contrib/neon/test/request.c#1 branch .. //depot/projects/hammer/contrib/neon/test/resolve.c#1 branch .. //depot/projects/hammer/contrib/neon/test/run-tests.sh#1 branch .. //depot/projects/hammer/contrib/neon/test/run.sh#1 branch .. //depot/projects/hammer/contrib/neon/test/server.key#1 branch .. //depot/projects/hammer/contrib/neon/test/session.c#1 branch .. //depot/projects/hammer/contrib/neon/test/skeleton.c#1 branch .. //depot/projects/hammer/contrib/neon/test/socket.c#1 branch .. //depot/projects/hammer/contrib/neon/test/ssl.c#1 branch .. //depot/projects/hammer/contrib/neon/test/string-tests.c#1 branch .. //depot/projects/hammer/contrib/neon/test/stubs.c#1 branch .. //depot/projects/hammer/contrib/neon/test/uri-tests.c#1 branch .. //depot/projects/hammer/contrib/neon/test/util-tests.c#1 branch .. //depot/projects/hammer/contrib/neon/test/utils.c#1 branch .. //depot/projects/hammer/contrib/neon/test/utils.h#1 branch .. //depot/projects/hammer/contrib/neon/test/xml.c#1 branch .. //depot/projects/hammer/contrib/neon/test/xmlreq.c#1 branch .. //depot/projects/hammer/contrib/subversion/BUGS#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 26 09:57:50 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 00DE816A46C; Wed, 26 Dec 2007 09:57:50 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BA38F16A419 for ; Wed, 26 Dec 2007 09:57:49 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B534113C4D3 for ; Wed, 26 Dec 2007 09:57:49 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQ9vn6R045332 for ; Wed, 26 Dec 2007 09:57:49 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQ9vnFF045329 for perforce@freebsd.org; Wed, 26 Dec 2007 09:57:49 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 09:57:49 GMT Message-Id: <200712260957.lBQ9vnFF045329@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 131667 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 09:57:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=131667 Change 131667 by peter@peter_overcee on 2007/12/26 09:57:05 bmake glue for apr, apr-util and neon. Note that these are installed under local names to avoid messing with ports, just like expat vs bsdxml. Affected files ... .. //depot/projects/hammer/lib/libapr-util/Makefile#1 add .. //depot/projects/hammer/lib/libapr-util/apr_ldap.h#1 add .. //depot/projects/hammer/lib/libapr-util/apu.h#1 add .. //depot/projects/hammer/lib/libapr-util/apu_config.h#1 add .. //depot/projects/hammer/lib/libapr-util/apu_select_dbm.h#1 add .. //depot/projects/hammer/lib/libapr-util/apu_want.h#1 add .. //depot/projects/hammer/lib/libapr-util/expat.h#1 add .. //depot/projects/hammer/lib/libapr/Makefile#1 add .. //depot/projects/hammer/lib/libapr/apr.h#1 add .. //depot/projects/hammer/lib/libapr/apr_private.h#1 add .. //depot/projects/hammer/lib/libapr/libbsdapr.3#1 add .. //depot/projects/hammer/lib/libneon/Makefile#1 add .. //depot/projects/hammer/lib/libneon/config.h#1 add .. //depot/projects/hammer/lib/libneon/expat.h#1 add .. //depot/projects/hammer/lib/libneon/libbsddav.3#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:00:54 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D050916A469; Wed, 26 Dec 2007 10:00:53 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3873616A417 for ; Wed, 26 Dec 2007 10:00:53 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 325E513C4EB for ; Wed, 26 Dec 2007 10:00:53 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQA0rdZ045703 for ; Wed, 26 Dec 2007 10:00:53 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQA0qNq045700 for perforce@freebsd.org; Wed, 26 Dec 2007 10:00:52 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 10:00:52 GMT Message-Id: <200712261000.lBQA0qNq045700@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 131668 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:00:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=131668 Change 131668 by peter@peter_overcee on 2007/12/26 10:00:44 local bmake glue for svn-1.4.6. There are a few rough edges, I'm tired. I've not decided whether to install the shlibs or not. The other rough bits depend on this decision. Affected files ... .. //depot/projects/hammer/usr.bin/svn/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/Makefile.inc#1 add .. //depot/projects/hammer/usr.bin/svn/expat.h#1 add .. //depot/projects/hammer/usr.bin/svn/lib/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/Makefile.inc#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_client/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_delta/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_diff/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs_fs/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_dav/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_local/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_svn/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_repos/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_subr/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_wc/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svn/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svn_private_config.h#1 add .. //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#1 add .. //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:01:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 39B0A16A421; Wed, 26 Dec 2007 10:01:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F2F2616A41B for ; Wed, 26 Dec 2007 10:01:54 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EDF5713C4EC for ; Wed, 26 Dec 2007 10:01:54 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQA1s5x046042 for ; Wed, 26 Dec 2007 10:01:54 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQA1sga046036 for perforce@freebsd.org; Wed, 26 Dec 2007 10:01:54 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 10:01:54 GMT Message-Id: <200712261001.lBQA1sga046036@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 131669 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:01:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=131669 Change 131669 by peter@peter_overcee on 2007/12/26 10:01:50 add apr, apr-util and neon. At end for now. Affected files ... .. //depot/projects/hammer/lib/Makefile#67 edit Differences ... ==== //depot/projects/hammer/lib/Makefile#67 (text+ko) ==== @@ -37,7 +37,8 @@ libpmc ${_libkse} librt ${_libsdp} ${_libsm} ${_libsmb} \ ${_libsmdb} \ ${_libsmutil} libstand libtelnet ${_libthr} libthread_db libufs \ - libugidfw ${_libusbhid} ${_libvgl} libwrap liby libz ${_bind} + libugidfw ${_libusbhid} ${_libvgl} libwrap liby libz ${_bind} \ + libapr libapr-util libneon .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) _csu=csu/${MACHINE_ARCH}-elf From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:04:59 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D42716A475; Wed, 26 Dec 2007 10:04:59 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D475E16A46B for ; Wed, 26 Dec 2007 10:04:58 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B75FC13C4E7 for ; Wed, 26 Dec 2007 10:04:58 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQA4wIl049118 for ; Wed, 26 Dec 2007 10:04:58 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQA4wXZ049104 for perforce@freebsd.org; Wed, 26 Dec 2007 10:04:58 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 10:04:58 GMT Message-Id: <200712261004.lBQA4wXZ049104@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 131670 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:04:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=131670 Change 131670 by peter@peter_overcee on 2007/12/26 10:04:20 add dav/apr include directories Affected files ... .. //depot/projects/hammer/etc/mtree/BSD.include.dist#50 edit Differences ... ==== //depot/projects/hammer/etc/mtree/BSD.include.dist#50 (text+ko) ==== @@ -9,6 +9,14 @@ .. arpa .. + bsdapr + apr + .. + .. + bsddav + neon + .. + .. bsm .. bsnmp From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:07:01 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5D08416A468; Wed, 26 Dec 2007 10:07:01 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2216416A418 for ; Wed, 26 Dec 2007 10:07:01 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 056F013C4F4 for ; Wed, 26 Dec 2007 10:07:01 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQA70sM050225 for ; Wed, 26 Dec 2007 10:07:00 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQA70Yf050222 for perforce@freebsd.org; Wed, 26 Dec 2007 10:07:00 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 10:07:00 GMT Message-Id: <200712261007.lBQA70Yf050222@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 131671 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:07:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=131671 Change 131671 by peter@peter_overcee on 2007/12/26 10:06:29 Add svn/lib prebuild hook Affected files ... .. //depot/projects/hammer/Makefile.inc1#129 edit Differences ... ==== //depot/projects/hammer/Makefile.inc1#129 (text+ko) ==== @@ -1081,7 +1081,7 @@ _default_thread_lib= lib/libkse .endif -_generic_libs= ${_cddl_lib} gnu/lib ${_kerberos5_lib} lib ${_secure_lib} usr.bin/lex/lib +_generic_libs= ${_cddl_lib} gnu/lib ${_kerberos5_lib} lib ${_secure_lib} usr.bin/lex/lib usr.bin/svn/lib lib/libopie__L lib/libtacplus__L: lib/libmd__L From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:17:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A192816A419; Wed, 26 Dec 2007 10:17:12 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0C6B816A469 for ; Wed, 26 Dec 2007 10:17:12 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 081FD13C46B for ; Wed, 26 Dec 2007 10:17:12 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQAHBN5063086 for ; Wed, 26 Dec 2007 10:17:11 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQAHBWe063083 for perforce@freebsd.org; Wed, 26 Dec 2007 10:17:11 GMT (envelope-from peter@freebsd.org) Date: Wed, 26 Dec 2007 10:17:11 GMT Message-Id: <200712261017.lBQAHBWe063083@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 131672 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:17:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131672 Change 131672 by peter@peter_overcee on 2007/12/26 10:16:55 checkpoint hack for $FreeBSD$. Affected files ... .. //depot/projects/hammer/contrib/subversion/subversion/libsvn_subr/subst.c#2 edit Differences ... ==== //depot/projects/hammer/contrib/subversion/subversion/libsvn_subr/subst.c#2 (text+ko) ==== @@ -374,6 +374,16 @@ for (i = 0; i < keyword_tokens->nelts; ++i) { const char *keyword = APR_ARRAY_IDX(keyword_tokens, i, const char *); + const char *replaced_word = keyword; + + apr_array_header_t *keyword_tokens2; + keyword_tokens2 = svn_cstring_split(keyword, "=", TRUE /* chop */, pool); + + if (keyword_tokens2->nelts==2) + { + keyword = APR_ARRAY_IDX(keyword_tokens2, 1, const char*); + replaced_word = APR_ARRAY_IDX(keyword_tokens2, 0, const char*); + } if ((! strcmp(keyword, SVN_KEYWORD_REVISION_LONG)) || (! strcmp(keyword, SVN_KEYWORD_REVISION_MEDIUM)) @@ -428,7 +438,7 @@ id_val = keyword_printf("%b %r %d %a", rev, url, date, author, pool); - apr_hash_set(*kw, SVN_KEYWORD_ID, + apr_hash_set(*kw, replaced_word, APR_HASH_KEY_STRING, id_val); } } From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:48:47 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2299416A46E; Wed, 26 Dec 2007 10:48:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C833E16A46C for ; Wed, 26 Dec 2007 10:48:46 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C3FF113C4D3 for ; Wed, 26 Dec 2007 10:48:46 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQAmkp8074503 for ; Wed, 26 Dec 2007 10:48:46 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQAmkIc074500 for perforce@freebsd.org; Wed, 26 Dec 2007 10:48:46 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 10:48:46 GMT Message-Id: <200712261048.lBQAmkIc074500@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 131676 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:48:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=131676 Change 131676 by hselasky@hselasky_laptop001 on 2007/12/26 10:47:53 Introduce two new functions: "usbd_transfer_set_stall()" and "usbd_transfer_clear_stall()". Update documentation. See README for more information. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/README#32 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#38 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#87 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#91 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/README#32 (text+ko) ==== @@ -381,8 +381,10 @@ a clear-stall command on the STALL'ed endpoint. This flag can be changed during operation. This flag does only have effect in USB device side mode except for control endpoints. This - flag is cleared before the callback is called in case the USB - transfer state is "USBD_ST_TRANSFERRED". + flag is cleared when the stall command has been executed. This + flag can only be changed outside the callback function by + using the functions "usbd_transfer_set_stall()" and + "usbd_transfer_clear_stall()" ! - The "bufsize" field sets the total buffer size in bytes. If this field is zero, "wMaxPacketSize" will be used, multiplied by the ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#38 (text+ko) ==== @@ -727,12 +727,9 @@ CDCE_FLAG_LL_READY | CDCE_FLAG_HL_READY); - if (sc->sc_xfer[0]) { - sc->sc_xfer[0]->flags.stall_pipe = 1; - } - if (sc->sc_xfer[1]) { - sc->sc_xfer[1]->flags.stall_pipe = 1; - } + usbd_transfer_set_stall(sc->sc_xfer[0]); + usbd_transfer_set_stall(sc->sc_xfer[1]); + cdce_start_transfers(sc); mtx_unlock(&(sc->sc_mtx)); ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#87 (text+ko) ==== @@ -934,6 +934,8 @@ void usbd_set_frame_data(struct usbd_xfer *xfer, void *ptr, uint32_t frindex); void usbd_set_frame_offset(struct usbd_xfer *xfer, uint32_t offset, uint32_t frindex); void usbd_callback_wrapper(struct usbd_xfer *xfer, void *ctd, uint8_t context); +void usbd_transfer_clear_stall(struct usbd_xfer *xfer); +void usbd_transfer_set_stall(struct usbd_xfer *xfer); void usbd_transfer_intr_enqueue(struct usbd_xfer *xfer); void usbd_transfer_enqueue(struct usbd_xfer *xfer); void usbd_transfer_dequeue(struct usbd_xfer *xfer, usbd_status_t error); ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#91 (text+ko) ==== @@ -2388,8 +2388,6 @@ (!xfer->flags_int.bdma_no_post_sync)) { usbd_bdma_post_sync(xfer); } - /* clear any previous stall command */ - xfer->flags.stall_pipe = 0; callback: /* call processing routine */ (xfer->callback) (xfer); @@ -2482,6 +2480,58 @@ } /*------------------------------------------------------------------------* + * usbd_transfer_set_stall + * + * This function is used to set the stall flag outside the + * callback. This function is NULL safe. + *------------------------------------------------------------------------*/ +void +usbd_transfer_set_stall(struct usbd_xfer *xfer) +{ + if (xfer == NULL) { + /* tearing down */ + return; + } + + mtx_assert(xfer->priv_mtx, MA_OWNED); + + /* avoid any races by locking the USB mutex */ + mtx_lock(xfer->usb_mtx); + + xfer->flags.stall_pipe = 1; + + mtx_unlock(xfer->usb_mtx); + + return; +} + +/*------------------------------------------------------------------------* + * usbd_transfer_clear_stall + * + * This function is used to clear the stall flag outside the + * callback. This function is NULL safe. + *------------------------------------------------------------------------*/ +void +usbd_transfer_clear_stall(struct usbd_xfer *xfer) +{ + if (xfer == NULL) { + /* tearing down */ + return; + } + + mtx_assert(xfer->priv_mtx, MA_OWNED); + + /* avoid any races by locking the USB mutex */ + mtx_lock(xfer->usb_mtx); + + xfer->flags.stall_pipe = 0; + + mtx_unlock(xfer->usb_mtx); + + return; +} + +/*------------------------------------------------------------------------* * usbd_transfer_intr_enqueue * * This function is used to add an USB transfer to the interrupt @@ -2526,8 +2576,11 @@ /* * Check if we are supposed to stall the pipe: */ - if (xfer->flags.stall_pipe && - (xfer->flags_int.usb_mode == USB_MODE_DEVICE)) { + if (xfer->flags.stall_pipe) { + /* clear stall command */ + xfer->flags.stall_pipe = 0; + + if (xfer->flags_int.usb_mode == USB_MODE_DEVICE) { /* * Only stall BULK and INTERRUPT endpoints. */ @@ -2539,6 +2592,7 @@ xfer->udev, NULL, xfer->pipe); goto done; } + } } /* * Handled cases: @@ -2835,7 +2889,8 @@ * send STALL tokens. *------------------------------------------------------------------------*/ static usbd_status_t -usbd_handle_set_stall_sub(struct usbd_device *udev, uint8_t ea_val, uint8_t do_stall) +usbd_handle_set_stall_sub(struct usbd_device *udev, uint8_t ea_val, +uint8_t do_stall) { struct usbd_pipe *pipe; struct usbd_xfer *xfer; @@ -2844,6 +2899,7 @@ pipe = usbd_get_pipe_by_addr(udev, ea_val); if (pipe == NULL) { /* nothing to do */ + PRINTFN(0, ("Cannot find endpoint\n")); return (USBD_INVAL); } et = (pipe->edesc->bmAttributes & UE_XFERTYPE); @@ -2854,6 +2910,7 @@ * Should not stall control * nor isochronous endpoints. */ + PRINTFN(0, ("Invalid endpoint\n")); return (0); } mtx_lock(&(udev->bus->mtx)); @@ -2861,6 +2918,7 @@ if (pipe->is_stalled == do_stall) { /* if the pipe is already stalled do nothing */ mtx_unlock(&(udev->bus->mtx)); + PRINTFN(0, ("No change\n")); return (0); } /* update stalled state */ @@ -3765,7 +3823,7 @@ break; } - xfer2->flags.stall_pipe = 0; /* stop stalling the pipe */ + usbd_transfer_clear_stall(xfer2); return (1); /* Clear Stall Finished */ } From owner-p4-projects@FreeBSD.ORG Wed Dec 26 10:49:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 74D1516A498; Wed, 26 Dec 2007 10:49:48 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 251C416A480 for ; Wed, 26 Dec 2007 10:49:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2033B13C4EF for ; Wed, 26 Dec 2007 10:49:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQAnlFI074534 for ; Wed, 26 Dec 2007 10:49:47 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQAnlg9074531 for perforce@freebsd.org; Wed, 26 Dec 2007 10:49:47 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 10:49:47 GMT Message-Id: <200712261049.lBQAnlg9074531@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 131677 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 10:49:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=131677 Change 131677 by hselasky@hselasky_laptop001 on 2007/12/26 10:49:01 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#92 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#92 (text+ko) ==== @@ -2492,7 +2492,6 @@ /* tearing down */ return; } - mtx_assert(xfer->priv_mtx, MA_OWNED); /* avoid any races by locking the USB mutex */ @@ -2518,7 +2517,6 @@ /* tearing down */ return; } - mtx_assert(xfer->priv_mtx, MA_OWNED); /* avoid any races by locking the USB mutex */ @@ -2577,22 +2575,22 @@ * Check if we are supposed to stall the pipe: */ if (xfer->flags.stall_pipe) { - /* clear stall command */ - xfer->flags.stall_pipe = 0; + /* clear stall command */ + xfer->flags.stall_pipe = 0; - if (xfer->flags_int.usb_mode == USB_MODE_DEVICE) { - /* - * Only stall BULK and INTERRUPT endpoints. - */ - type = (xfer->pipe->edesc->bmAttributes & UE_XFERTYPE); - if ((type == UE_BULK) || - (type == UE_INTERRUPT)) { - xfer->pipe->is_stalled = 1; - (xfer->udev->bus->methods->set_stall) ( - xfer->udev, NULL, xfer->pipe); - goto done; + if (xfer->flags_int.usb_mode == USB_MODE_DEVICE) { + /* + * Only stall BULK and INTERRUPT endpoints. + */ + type = (xfer->pipe->edesc->bmAttributes & UE_XFERTYPE); + if ((type == UE_BULK) || + (type == UE_INTERRUPT)) { + xfer->pipe->is_stalled = 1; + (xfer->udev->bus->methods->set_stall) ( + xfer->udev, NULL, xfer->pipe); + goto done; + } } - } } /* * Handled cases: @@ -2889,8 +2887,8 @@ * send STALL tokens. *------------------------------------------------------------------------*/ static usbd_status_t -usbd_handle_set_stall_sub(struct usbd_device *udev, uint8_t ea_val, -uint8_t do_stall) +usbd_handle_set_stall_sub(struct usbd_device *udev, uint8_t ea_val, + uint8_t do_stall) { struct usbd_pipe *pipe; struct usbd_xfer *xfer; From owner-p4-projects@FreeBSD.ORG Wed Dec 26 11:01:02 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 02AD616A41A; Wed, 26 Dec 2007 11:01:02 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6F31A16A417 for ; Wed, 26 Dec 2007 11:01:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 52E3813C474 for ; Wed, 26 Dec 2007 11:01:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQB111m079160 for ; Wed, 26 Dec 2007 11:01:01 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQB11E0079157 for perforce@freebsd.org; Wed, 26 Dec 2007 11:01:01 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 11:01:01 GMT Message-Id: <200712261101.lBQB11E0079157@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 131681 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 11:01:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=131681 Change 131681 by hselasky@hselasky_laptop001 on 2007/12/26 11:00:33 Add extra debug print. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#39 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#39 (text+ko) ==== @@ -760,6 +760,8 @@ switch (USBD_GET_STATE(xfer)) { case USBD_ST_TRANSFERRED: + DPRINTF(sc, 0, "received %u bytes\n", xfer->actlen); + if (sc->sc_flags & CDCE_FLAG_ZAURUS) { /* Strip off CRC added by Zaurus */ From owner-p4-projects@FreeBSD.ORG Wed Dec 26 11:17:19 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 797B516A41B; Wed, 26 Dec 2007 11:17:19 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1F02A16A474 for ; Wed, 26 Dec 2007 11:17:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 17BCF13C519 for ; Wed, 26 Dec 2007 11:17:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQBHI5w087636 for ; Wed, 26 Dec 2007 11:17:18 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQBHIJv087633 for perforce@freebsd.org; Wed, 26 Dec 2007 11:17:18 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 11:17:18 GMT Message-Id: <200712261117.lBQBHIJv087633@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 131685 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 11:17:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=131685 Change 131685 by hselasky@hselasky_laptop001 on 2007/12/26 11:17:04 Add proper shutdown method to the AT91 UDP. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91_udp.c#3 edit .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#6 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91_udp.c#3 (text+ko) ==== @@ -60,6 +60,7 @@ static device_probe_t at91_udp_probe; static device_attach_t at91_udp_attach; static device_detach_t at91_udp_detach; +static device_shutdown_t at91_udp_shutdown; struct at91_udp_softc { struct at9100_dci_softc sc_dci; /* must be first */ @@ -236,7 +237,6 @@ sc->sc_vbus_intr_hdl = NULL; goto error; } - err = at9100_dci_init(&(sc->sc_dci)); if (!err) { err = device_probe_and_attach(sc->sc_dci.sc_bus.bdev); @@ -321,12 +321,27 @@ return (0); } +static int +at91_udp_shutdown(device_t dev) +{ + struct at91_udp_softc *sc = device_get_softc(dev); + int err; + + err = bus_generic_shutdown(dev); + if (err) + return (err); + + at9100_dci_uninit(&(sc->sc_dci)); + + return (0); +} + static device_method_t at91_udp_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_udp_probe), DEVMETHOD(device_attach, at91_udp_attach), DEVMETHOD(device_detach, at91_udp_detach), - DEVMETHOD(device_shutdown, bus_generic_shutdown), + DEVMETHOD(device_shutdown, at91_udp_shutdown), /* Bus interface */ DEVMETHOD(bus_print_child, bus_generic_print_child), ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#6 (text+ko) ==== @@ -1418,9 +1418,6 @@ /* wait a little for things to stabilise */ DELAY(1000); - /* enable Transceiver */ - AT91_UDP_WRITE_4(sc, AT91_UDP_TXVC, 0); - /* disable and clear all interrupts */ AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, 0xFFFFFFFF); AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, 0xFFFFFFFF); @@ -1460,6 +1457,23 @@ void at9100_dci_uninit(struct at9100_dci_softc *sc) { + mtx_lock(&(sc->sc_bus.mtx)); + + /* disable and clear all interrupts */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, 0xFFFFFFFF); + AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, 0xFFFFFFFF); + + sc->sc_flags.port_powered = 0; + sc->sc_flags.status_vbus = 0; + sc->sc_flags.status_bus_reset = 0; + sc->sc_flags.status_suspend = 0; + sc->sc_flags.change_suspend = 0; + sc->sc_flags.change_connect = 1; + + at9100_dci_pull_down(sc); + at9100_dci_clocks_off(sc); + mtx_unlock(&(sc->sc_bus.mtx)); + return; } From owner-p4-projects@FreeBSD.ORG Wed Dec 26 11:24:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B6D616A41A; Wed, 26 Dec 2007 11:24:28 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0472E16A417 for ; Wed, 26 Dec 2007 11:24:28 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 00B5B13C4E7 for ; Wed, 26 Dec 2007 11:24:28 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQBORGG089725 for ; Wed, 26 Dec 2007 11:24:27 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQBORwj089718 for perforce@freebsd.org; Wed, 26 Dec 2007 11:24:27 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 11:24:27 GMT Message-Id: <200712261124.lBQBORwj089718@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 131687 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 11:24:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131687 Change 131687 by hselasky@hselasky_laptop001 on 2007/12/26 11:24:09 Add new device "at9100_dci" to the configuration files. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/files.at91#4 edit .. //depot/projects/usb/src/sys/conf/files#22 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/files.at91#4 (text) ==== @@ -12,7 +12,7 @@ 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 +arm/at91/at91_udp.c optional at9100_dci arm/at91/if_ate.c optional ate arm/at91/ohci_atmelarm.c optional ohci arm/at91/uart_bus_at91usart.c optional uart ==== //depot/projects/usb/src/sys/conf/files#22 (text+ko) ==== @@ -1097,6 +1097,7 @@ dev/ubsec/ubsec.c optional ubsec # # USB support +dev/usb/at9100_dci.c optional at9100_dci dev/usb/ehci.c optional ehci dev/usb/ehci_pci.c optional ehci pci dev/usb/if_aue.c optional aue From owner-p4-projects@FreeBSD.ORG Wed Dec 26 11:26:30 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A989F16A41B; Wed, 26 Dec 2007 11:26:30 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5C30916A417 for ; Wed, 26 Dec 2007 11:26:30 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5927113C469 for ; Wed, 26 Dec 2007 11:26:30 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQBQU9r091490 for ; Wed, 26 Dec 2007 11:26:30 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQBQU2f091484 for perforce@freebsd.org; Wed, 26 Dec 2007 11:26:30 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 11:26:30 GMT Message-Id: <200712261126.lBQBQU2f091484@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 131688 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 11:26:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=131688 Change 131688 by hselasky@hselasky_laptop001 on 2007/12/26 11:26:05 Update example configuration file. Affected files ... .. //depot/projects/usb/src/sys/arm/conf/KB920X#6 edit Differences ... ==== //depot/projects/usb/src/sys/arm/conf/KB920X#6 (text) ==== @@ -93,7 +93,8 @@ device bpf # USB support -device ohci # OHCI localbus->USB interface +device ohci # OHCI localbus->USB interface (Host Mode) +device at9100_dci # ADCI localbus->USB interface (Device Mode) device usb # USB Bus (required) #device udbp # USB Double Bulk Pipe devices device ugen # Generic From owner-p4-projects@FreeBSD.ORG Wed Dec 26 12:27:38 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0263F16A419; Wed, 26 Dec 2007 12:27:38 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 78DA416A417 for ; Wed, 26 Dec 2007 12:27:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 75C6A13C442 for ; Wed, 26 Dec 2007 12:27:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQCRbV2015687 for ; Wed, 26 Dec 2007 12:27:37 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQCRbV4015684 for perforce@freebsd.org; Wed, 26 Dec 2007 12:27:37 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 26 Dec 2007 12:27:37 GMT Message-Id: <200712261227.lBQCRbV4015684@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 131694 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 12:27:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=131694 Change 131694 by hselasky@hselasky_laptop001 on 2007/12/26 12:27:28 o Improve suspend and resume handling by disabling interrupts we are not waiting for. o It appears that we need to keep the clocks on for as long as there is VBUS. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#7 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#7 (text+ko) ==== @@ -818,6 +818,13 @@ sc->sc_flags.status_suspend = 0; sc->sc_flags.change_suspend = 0; sc->sc_flags.change_connect = 1; + + /* disable resume interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, + AT91_UDP_INT_RXRSM); + /* enable suspend interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IER, + AT91_UDP_INT_RXSUSP); } /* * If RXRSM and RXSUSP is set at the same time we interpret @@ -828,11 +835,26 @@ if (sc->sc_flags.status_suspend) { sc->sc_flags.status_suspend = 0; sc->sc_flags.change_suspend = 1; + + /* disable resume interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, + AT91_UDP_INT_RXRSM); + /* enable suspend interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IER, + AT91_UDP_INT_RXSUSP); } } else if (status & AT91_UDP_INT_RXSUSP) { if (!sc->sc_flags.status_suspend) { sc->sc_flags.status_suspend = 1; sc->sc_flags.change_suspend = 1; + + /* disable suspend interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, + AT91_UDP_INT_RXSUSP); + + /* enable resume interrupt */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IER, + AT91_UDP_INT_RXRSM); } } /* complete root HUB interrupt endpoint */ @@ -2191,11 +2213,7 @@ goto tr_stalled; } if (sc->sc_flags.status_vbus) { - if (sc->sc_flags.status_suspend) { - at9100_dci_clocks_off(sc); - } else { - at9100_dci_clocks_on(sc); - } + at9100_dci_clocks_on(sc); at9100_dci_pull_up(sc); } else { at9100_dci_pull_down(sc); From owner-p4-projects@FreeBSD.ORG Wed Dec 26 15:14:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F59216A468; Wed, 26 Dec 2007 15:14:48 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 144FC16A41A for ; Wed, 26 Dec 2007 15:14:48 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0F83313C4CC for ; Wed, 26 Dec 2007 15:14:48 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQFEliM094031 for ; Wed, 26 Dec 2007 15:14:47 GMT (envelope-from rpaulo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQFEbP1093912 for perforce@freebsd.org; Wed, 26 Dec 2007 15:14:37 GMT (envelope-from rpaulo@FreeBSD.org) Date: Wed, 26 Dec 2007 15:14:37 GMT Message-Id: <200712261514.lBQFEbP1093912@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rpaulo@FreeBSD.org using -f From: Rui Paulo To: Perforce Change Reviews Cc: Subject: PERFORCE change 131704 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 15:14:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=131704 Change 131704 by rpaulo@rpaulo_zoo on 2007/12/26 15:14:13 IFC Affected files ... .. //depot/projects/tcpecn/amd64/amd64/db_trace.c#2 integrate .. //depot/projects/tcpecn/amd64/amd64/exception.S#2 integrate .. //depot/projects/tcpecn/amd64/amd64/identcpu.c#2 integrate .. //depot/projects/tcpecn/amd64/amd64/machdep.c#2 integrate .. //depot/projects/tcpecn/amd64/amd64/mp_watchdog.c#2 integrate .. //depot/projects/tcpecn/amd64/amd64/pmap.c#3 integrate .. //depot/projects/tcpecn/amd64/amd64/stack_machdep.c#1 branch .. //depot/projects/tcpecn/amd64/amd64/trap.c#2 integrate .. //depot/projects/tcpecn/amd64/conf/GENERIC#3 integrate .. //depot/projects/tcpecn/amd64/conf/NOTES#2 integrate .. //depot/projects/tcpecn/amd64/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/amd64/include/specialreg.h#2 integrate .. //depot/projects/tcpecn/amd64/include/stack.h#1 branch .. //depot/projects/tcpecn/arm/arm/db_trace.c#2 integrate .. //depot/projects/tcpecn/arm/arm/nexus_io.c#2 delete .. //depot/projects/tcpecn/arm/arm/nexus_io_asm.S#2 delete .. //depot/projects/tcpecn/arm/arm/pmap.c#2 integrate .. //depot/projects/tcpecn/arm/arm/stack_machdep.c#1 branch .. //depot/projects/tcpecn/arm/at91/at91.c#2 integrate .. //depot/projects/tcpecn/arm/at91/if_ate.c#2 integrate .. //depot/projects/tcpecn/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/tcpecn/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/tcpecn/arm/conf/AVILA#2 integrate .. //depot/projects/tcpecn/arm/conf/BWCT#2 integrate .. //depot/projects/tcpecn/arm/conf/CRB#2 integrate .. //depot/projects/tcpecn/arm/conf/EP80219#2 integrate .. //depot/projects/tcpecn/arm/conf/HL200#2 integrate .. //depot/projects/tcpecn/arm/conf/IQ31244#2 integrate .. //depot/projects/tcpecn/arm/conf/KB920X#2 integrate .. //depot/projects/tcpecn/arm/conf/SIMICS#2 integrate .. //depot/projects/tcpecn/arm/conf/SKYEYE#2 integrate .. //depot/projects/tcpecn/arm/include/asmacros.h#2 integrate .. //depot/projects/tcpecn/arm/include/atomic.h#3 integrate .. //depot/projects/tcpecn/arm/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/arm/include/stack.h#1 branch .. //depot/projects/tcpecn/arm/sa11x0/files.sa11x0#2 integrate .. //depot/projects/tcpecn/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/tcpecn/boot/arm/at91/libat91/spi_flash.c#2 integrate .. //depot/projects/tcpecn/boot/forth/support.4th#2 integrate .. //depot/projects/tcpecn/boot/powerpc/Makefile#2 integrate .. //depot/projects/tcpecn/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/tcpecn/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/tcpecn/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/tcpecn/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/tcpecn/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/tcpecn/boot/powerpc/loader/start.c#2 delete .. //depot/projects/tcpecn/boot/powerpc/loader/version#2 delete .. //depot/projects/tcpecn/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/tcpecn/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/tcpecn/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/tcpecn/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/tcpecn/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/tcpecn/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/tcpecn/boot/powerpc/ofw/version#1 branch .. //depot/projects/tcpecn/cam/cam_xpt.c#2 integrate .. //depot/projects/tcpecn/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/tcpecn/cam/scsi/scsi_low.h#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/tcpecn/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/tcpecn/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/tcpecn/compat/ndis/ndis_var.h#2 integrate .. //depot/projects/tcpecn/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/tcpecn/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/tcpecn/compat/ndis/subr_ntoskrnl.c#2 integrate .. //depot/projects/tcpecn/conf/Makefile.amd64#2 integrate .. //depot/projects/tcpecn/conf/NOTES#3 integrate .. //depot/projects/tcpecn/conf/files#2 integrate .. //depot/projects/tcpecn/conf/files.amd64#2 integrate .. //depot/projects/tcpecn/conf/files.arm#2 integrate .. //depot/projects/tcpecn/conf/files.i386#2 integrate .. //depot/projects/tcpecn/conf/files.ia64#2 integrate .. //depot/projects/tcpecn/conf/files.pc98#2 integrate .. //depot/projects/tcpecn/conf/files.powerpc#2 integrate .. //depot/projects/tcpecn/conf/files.sparc64#2 integrate .. //depot/projects/tcpecn/conf/files.sun4v#2 integrate .. //depot/projects/tcpecn/conf/options#3 integrate .. //depot/projects/tcpecn/conf/options.powerpc#2 integrate .. //depot/projects/tcpecn/ddb/db_capture.c#1 branch .. //depot/projects/tcpecn/ddb/db_command.c#2 integrate .. //depot/projects/tcpecn/ddb/db_command.h#2 integrate .. //depot/projects/tcpecn/ddb/db_input.c#2 integrate .. //depot/projects/tcpecn/ddb/db_lex.c#2 integrate .. //depot/projects/tcpecn/ddb/db_lex.h#2 integrate .. //depot/projects/tcpecn/ddb/db_main.c#2 integrate .. //depot/projects/tcpecn/ddb/db_output.c#2 integrate .. //depot/projects/tcpecn/ddb/db_script.c#1 branch .. //depot/projects/tcpecn/ddb/db_textdump.c#1 branch .. //depot/projects/tcpecn/ddb/ddb.h#2 integrate .. //depot/projects/tcpecn/dev/aac/aac.c#2 integrate .. //depot/projects/tcpecn/dev/aac/aac_cam.c#2 integrate .. //depot/projects/tcpecn/dev/aac/aac_pci.c#2 integrate .. //depot/projects/tcpecn/dev/aac/aacreg.h#2 integrate .. //depot/projects/tcpecn/dev/aac/aacvar.h#2 integrate .. //depot/projects/tcpecn/dev/acpica/Osd/OsdDebug.c#2 integrate .. //depot/projects/tcpecn/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/tcpecn/dev/amr/amr.c#3 integrate .. //depot/projects/tcpecn/dev/amr/amr_cam.c#3 integrate .. //depot/projects/tcpecn/dev/amr/amr_pci.c#2 integrate .. //depot/projects/tcpecn/dev/amr/amrvar.h#2 integrate .. //depot/projects/tcpecn/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/tcpecn/dev/arcmsr/arcmsr.h#2 integrate .. //depot/projects/tcpecn/dev/ata/ata-all.h#2 integrate .. //depot/projects/tcpecn/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/tcpecn/dev/ata/ata-dma.c#2 integrate .. //depot/projects/tcpecn/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/tcpecn/dev/bge/if_bge.c#2 integrate .. //depot/projects/tcpecn/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_adapter.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_config.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_include.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_l2t.c#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_l2t.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_main.c#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_offload.c#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_offload.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_osdep.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/cxgb_sge.c#2 integrate .. //depot/projects/tcpecn/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/sys/mvec.h#2 integrate .. //depot/projects/tcpecn/dev/cxgb/sys/uipc_mvec.c#2 integrate .. //depot/projects/tcpecn/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/tcpecn/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/tcpecn/dev/dcons/dcons_os.c#2 integrate .. //depot/projects/tcpecn/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/tcpecn/dev/hptrr/array.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/him.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/hptintf.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/tcpecn/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/tcpecn/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/tcpecn/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/tcpecn/dev/hptrr/ldm.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/list.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/tcpecn/dev/hptrr/osm.h#1 branch .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_logging.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_mod.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_piv.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/tcpecn/dev/hwpmc/hwpmc_x86.c#3 integrate .. //depot/projects/tcpecn/dev/if_ndis/if_ndis.c#2 integrate .. //depot/projects/tcpecn/dev/if_ndis/if_ndis_pci.c#2 integrate .. //depot/projects/tcpecn/dev/if_ndis/if_ndisvar.h#2 integrate .. //depot/projects/tcpecn/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/tcpecn/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/tcpecn/dev/mfi/mfi.c#2 integrate .. //depot/projects/tcpecn/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/tcpecn/dev/msk/if_msk.c#2 integrate .. //depot/projects/tcpecn/dev/msk/if_mskreg.h#2 integrate .. //depot/projects/tcpecn/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/tcpecn/dev/ofw/openpromio.c#2 integrate .. //depot/projects/tcpecn/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/tcpecn/dev/re/if_re.c#2 integrate .. //depot/projects/tcpecn/dev/si/si_pci.c#2 integrate .. //depot/projects/tcpecn/dev/sio/sio.c#2 integrate .. //depot/projects/tcpecn/dev/snp/snp.c#2 integrate .. //depot/projects/tcpecn/dev/sound/pci/hda/hdac.c#3 integrate .. //depot/projects/tcpecn/dev/sound/pci/ich.c#2 integrate .. //depot/projects/tcpecn/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/tcpecn/dev/sound/pcm/channel.c#2 integrate .. //depot/projects/tcpecn/dev/syscons/syscons.c#2 integrate .. //depot/projects/tcpecn/dev/uart/uart_core.c#2 integrate .. //depot/projects/tcpecn/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/tcpecn/dev/usb/umass.c#2 integrate .. //depot/projects/tcpecn/dev/usb/ums.c#2 integrate .. //depot/projects/tcpecn/dev/usb/uplcom.c#2 integrate .. //depot/projects/tcpecn/dev/usb/usbdevs#3 integrate .. //depot/projects/tcpecn/dev/utopia/utopia.c#2 integrate .. //depot/projects/tcpecn/fs/tmpfs/tmpfs_subr.c#2 integrate .. //depot/projects/tcpecn/fs/tmpfs/tmpfs_vfsops.c#2 integrate .. //depot/projects/tcpecn/fs/tmpfs/tmpfs_vnops.c#2 integrate .. //depot/projects/tcpecn/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/tcpecn/fs/unionfs/union_subr.c#2 integrate .. //depot/projects/tcpecn/geom/geom_bsd.c#2 integrate .. //depot/projects/tcpecn/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/tcpecn/geom/geom_dev.c#2 integrate .. //depot/projects/tcpecn/geom/geom_io.c#2 integrate .. //depot/projects/tcpecn/geom/part/g_part.c#2 integrate .. //depot/projects/tcpecn/geom/part/g_part.h#2 integrate .. //depot/projects/tcpecn/geom/part/g_part_bsd.c#1 branch .. //depot/projects/tcpecn/i386/bios/apm.c#2 integrate .. //depot/projects/tcpecn/i386/conf/GENERIC#3 integrate .. //depot/projects/tcpecn/i386/conf/GENERIC.hints#2 integrate .. //depot/projects/tcpecn/i386/conf/NOTES#2 integrate .. //depot/projects/tcpecn/i386/conf/PAE#2 integrate .. //depot/projects/tcpecn/i386/i386/db_trace.c#2 integrate .. //depot/projects/tcpecn/i386/i386/exception.s#2 integrate .. //depot/projects/tcpecn/i386/i386/machdep.c#2 integrate .. //depot/projects/tcpecn/i386/i386/mp_watchdog.c#2 integrate .. //depot/projects/tcpecn/i386/i386/pmap.c#3 integrate .. //depot/projects/tcpecn/i386/i386/stack_machdep.c#1 branch .. //depot/projects/tcpecn/i386/i386/trap.c#2 integrate .. //depot/projects/tcpecn/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/i386/include/stack.h#1 branch .. //depot/projects/tcpecn/i386/pci/pci_pir.c#2 integrate .. //depot/projects/tcpecn/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/tcpecn/ia64/conf/GENERIC#2 integrate .. //depot/projects/tcpecn/ia64/ia64/db_machdep.c#2 integrate .. //depot/projects/tcpecn/ia64/ia64/machdep.c#2 integrate .. //depot/projects/tcpecn/ia64/ia64/stack_machdep.c#1 branch .. //depot/projects/tcpecn/ia64/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/kern/Makefile#2 integrate .. //depot/projects/tcpecn/kern/imgact_elf.c#2 integrate .. //depot/projects/tcpecn/kern/init_main.c#2 integrate .. //depot/projects/tcpecn/kern/kern_clock.c#3 integrate .. //depot/projects/tcpecn/kern/kern_conf.c#2 integrate .. //depot/projects/tcpecn/kern/kern_descrip.c#2 integrate .. //depot/projects/tcpecn/kern/kern_event.c#2 integrate .. //depot/projects/tcpecn/kern/kern_exec.c#2 integrate .. //depot/projects/tcpecn/kern/kern_linker.c#2 integrate .. //depot/projects/tcpecn/kern/kern_lock.c#2 integrate .. //depot/projects/tcpecn/kern/kern_mbuf.c#2 integrate .. //depot/projects/tcpecn/kern/kern_mib.c#2 integrate .. //depot/projects/tcpecn/kern/kern_module.c#2 integrate .. //depot/projects/tcpecn/kern/kern_mutex.c#3 integrate .. //depot/projects/tcpecn/kern/kern_pmc.c#2 integrate .. //depot/projects/tcpecn/kern/kern_proc.c#2 integrate .. //depot/projects/tcpecn/kern/kern_resource.c#2 integrate .. //depot/projects/tcpecn/kern/kern_rwlock.c#3 integrate .. //depot/projects/tcpecn/kern/kern_shutdown.c#2 integrate .. //depot/projects/tcpecn/kern/kern_sig.c#2 integrate .. //depot/projects/tcpecn/kern/kern_sx.c#2 integrate .. //depot/projects/tcpecn/kern/kern_thread.c#2 integrate .. //depot/projects/tcpecn/kern/kern_umtx.c#2 integrate .. //depot/projects/tcpecn/kern/sched_4bsd.c#2 integrate .. //depot/projects/tcpecn/kern/sched_ule.c#2 integrate .. //depot/projects/tcpecn/kern/subr_bus.c#3 integrate .. //depot/projects/tcpecn/kern/subr_kdb.c#2 integrate .. //depot/projects/tcpecn/kern/subr_lock.c#2 integrate .. //depot/projects/tcpecn/kern/subr_stack.c#2 integrate .. //depot/projects/tcpecn/kern/subr_trap.c#2 integrate .. //depot/projects/tcpecn/kern/subr_witness.c#2 integrate .. //depot/projects/tcpecn/kern/sys_generic.c#2 integrate .. //depot/projects/tcpecn/kern/sys_pipe.c#2 integrate .. //depot/projects/tcpecn/kern/tty_cons.c#2 integrate .. //depot/projects/tcpecn/kern/uipc_sockbuf.c#2 integrate .. //depot/projects/tcpecn/kern/vfs_bio.c#2 integrate .. //depot/projects/tcpecn/kern/vfs_mount.c#2 integrate .. //depot/projects/tcpecn/kern/vfs_subr.c#2 integrate .. //depot/projects/tcpecn/modules/Makefile#2 integrate .. //depot/projects/tcpecn/modules/amr/Makefile#2 integrate .. //depot/projects/tcpecn/modules/cxgb/Makefile#2 integrate .. //depot/projects/tcpecn/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/tcpecn/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/tcpecn/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/tcpecn/modules/hptrr/Makefile#1 branch .. //depot/projects/tcpecn/net/bpf.c#2 integrate .. //depot/projects/tcpecn/net/bpf.h#2 integrate .. //depot/projects/tcpecn/net/bpf_filter.c#2 integrate .. //depot/projects/tcpecn/net/bridgestp.c#2 integrate .. //depot/projects/tcpecn/net/bridgestp.h#2 integrate .. //depot/projects/tcpecn/net/if.h#2 integrate .. //depot/projects/tcpecn/net/if_bridge.c#2 integrate .. //depot/projects/tcpecn/net/if_enc.c#3 integrate .. //depot/projects/tcpecn/net/if_lagg.c#3 integrate .. //depot/projects/tcpecn/net/if_var.h#2 integrate .. //depot/projects/tcpecn/net/route.c#2 integrate .. //depot/projects/tcpecn/net/route.h#2 integrate .. //depot/projects/tcpecn/net80211/ieee80211.c#2 integrate .. //depot/projects/tcpecn/net80211/ieee80211_output.c#2 integrate .. //depot/projects/tcpecn/net80211/ieee80211_radiotap.h#2 integrate .. //depot/projects/tcpecn/netgraph/ng_base.c#2 integrate .. //depot/projects/tcpecn/netgraph/ng_car.c#2 integrate .. //depot/projects/tcpecn/netgraph/ng_car.h#2 integrate .. //depot/projects/tcpecn/netgraph/ng_l2tp.c#2 integrate .. //depot/projects/tcpecn/netinet/if_ether.c#2 integrate .. //depot/projects/tcpecn/netinet/if_ether.h#2 integrate .. //depot/projects/tcpecn/netinet/in_pcb.c#2 integrate .. //depot/projects/tcpecn/netinet/in_pcb.h#2 integrate .. //depot/projects/tcpecn/netinet/ip_dummynet.c#2 integrate .. //depot/projects/tcpecn/netinet/ip_fw2.c#2 integrate .. //depot/projects/tcpecn/netinet/ip_input.c#2 integrate .. //depot/projects/tcpecn/netinet/libalias/alias_util.c#2 integrate .. //depot/projects/tcpecn/netinet/sctp.h#2 integrate .. //depot/projects/tcpecn/netinet/sctp_bsd_addr.c#2 integrate .. //depot/projects/tcpecn/netinet/sctp_output.c#2 integrate .. //depot/projects/tcpecn/netinet/sctp_structs.h#2 integrate .. //depot/projects/tcpecn/netinet/sctp_usrreq.c#2 integrate .. //depot/projects/tcpecn/netinet/sctputil.c#2 integrate .. //depot/projects/tcpecn/netinet/tcp.h#2 integrate .. //depot/projects/tcpecn/netinet/tcp_offload.c#1 branch .. //depot/projects/tcpecn/netinet/tcp_offload.h#1 branch .. //depot/projects/tcpecn/netinet/tcp_subr.c#3 integrate .. //depot/projects/tcpecn/netinet/tcp_syncache.c#4 integrate .. //depot/projects/tcpecn/netinet/tcp_syncache.h#2 integrate .. //depot/projects/tcpecn/netinet/tcp_usrreq.c#3 integrate .. //depot/projects/tcpecn/netinet/tcp_var.h#5 integrate .. //depot/projects/tcpecn/netinet/toedev.h#1 branch .. //depot/projects/tcpecn/netinet6/dest6.c#2 integrate .. //depot/projects/tcpecn/netinet6/frag6.c#2 integrate .. //depot/projects/tcpecn/netinet6/icmp6.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6.h#2 integrate .. //depot/projects/tcpecn/netinet6/in6_cksum.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_gif.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_gif.h#2 integrate .. //depot/projects/tcpecn/netinet6/in6_ifattach.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_ifattach.h#2 integrate .. //depot/projects/tcpecn/netinet6/in6_pcb.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_pcb.h#2 integrate .. //depot/projects/tcpecn/netinet6/in6_proto.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_rmx.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_src.c#2 integrate .. //depot/projects/tcpecn/netinet6/in6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_ecn.h#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_forward.c#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_id.c#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_input.c#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_ipsec.c#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_ipsec.h#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_mroute.c#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_mroute.h#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_output.c#2 integrate .. //depot/projects/tcpecn/netinet6/ip6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/ip6protosw.h#2 integrate .. //depot/projects/tcpecn/netinet6/mld6.c#2 integrate .. //depot/projects/tcpecn/netinet6/mld6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/nd6.c#2 integrate .. //depot/projects/tcpecn/netinet6/nd6.h#2 integrate .. //depot/projects/tcpecn/netinet6/nd6_nbr.c#2 integrate .. //depot/projects/tcpecn/netinet6/nd6_rtr.c#2 integrate .. //depot/projects/tcpecn/netinet6/pim6.h#2 integrate .. //depot/projects/tcpecn/netinet6/pim6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/raw_ip6.c#2 integrate .. //depot/projects/tcpecn/netinet6/raw_ip6.h#2 integrate .. //depot/projects/tcpecn/netinet6/route6.c#2 integrate .. //depot/projects/tcpecn/netinet6/scope6.c#2 integrate .. //depot/projects/tcpecn/netinet6/scope6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/sctp6_usrreq.c#2 integrate .. //depot/projects/tcpecn/netinet6/sctp6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/tcp6_var.h#2 integrate .. //depot/projects/tcpecn/netinet6/udp6_usrreq.c#2 integrate .. //depot/projects/tcpecn/netinet6/udp6_var.h#2 integrate .. //depot/projects/tcpecn/netncp/ncp_rq.c#2 integrate .. //depot/projects/tcpecn/netncp/ncp_sock.c#2 integrate .. //depot/projects/tcpecn/netncp/ncp_sock.h#2 integrate .. //depot/projects/tcpecn/netsmb/smb_trantcp.c#2 integrate .. //depot/projects/tcpecn/pc98/cbus/sio.c#2 integrate .. //depot/projects/tcpecn/pc98/conf/GENERIC#2 integrate .. //depot/projects/tcpecn/pc98/include/stack.h#1 branch .. //depot/projects/tcpecn/pc98/pc98/machdep.c#2 integrate .. //depot/projects/tcpecn/pci/if_rlreg.h#3 integrate .. //depot/projects/tcpecn/pci/xrpu.c#2 delete .. //depot/projects/tcpecn/powerpc/aim/clock.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/copyinout.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/interrupt.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/locore.S#1 branch .. //depot/projects/tcpecn/powerpc/aim/machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/nexus.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/tcpecn/powerpc/aim/swtch.S#1 branch .. //depot/projects/tcpecn/powerpc/aim/trap.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/tcpecn/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/conf/GENERIC#2 integrate .. //depot/projects/tcpecn/powerpc/conf/NOTES#2 integrate .. //depot/projects/tcpecn/powerpc/include/_bus.h#2 integrate .. //depot/projects/tcpecn/powerpc/include/bus.h#2 integrate .. //depot/projects/tcpecn/powerpc/include/fpu.h#2 integrate .. //depot/projects/tcpecn/powerpc/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/powerpc/include/stack.h#1 branch .. //depot/projects/tcpecn/powerpc/powermac/grackle.c#2 integrate .. //depot/projects/tcpecn/powerpc/powermac/macio.c#2 integrate .. //depot/projects/tcpecn/powerpc/powermac/pswitch.c#2 integrate .. //depot/projects/tcpecn/powerpc/powermac/uninorth.c#2 integrate .. //depot/projects/tcpecn/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/powerpc/clock.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/db_trace.c#2 integrate .. //depot/projects/tcpecn/powerpc/powerpc/interrupt.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/locore.S#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/machdep.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/mmu_oea.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/nexus.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/stack_machdep.c#1 branch .. //depot/projects/tcpecn/powerpc/powerpc/swtch.S#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/trap.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/uio_machdep.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/uma_machdep.c#2 delete .. //depot/projects/tcpecn/powerpc/powerpc/vm_machdep.c#2 delete .. //depot/projects/tcpecn/powerpc/psim/iobus.c#2 integrate .. //depot/projects/tcpecn/security/audit/audit.c#2 integrate .. //depot/projects/tcpecn/security/audit/audit_pipe.c#2 integrate .. //depot/projects/tcpecn/security/mac/mac_posix_sem.c#2 integrate .. //depot/projects/tcpecn/security/mac_test/mac_test.c#2 integrate .. //depot/projects/tcpecn/sparc64/conf/GENERIC#3 integrate .. //depot/projects/tcpecn/sparc64/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/sparc64/include/stack.h#1 branch .. //depot/projects/tcpecn/sparc64/pci/psycho.c#3 integrate .. //depot/projects/tcpecn/sparc64/sparc64/db_trace.c#2 integrate .. //depot/projects/tcpecn/sparc64/sparc64/machdep.c#2 integrate .. //depot/projects/tcpecn/sparc64/sparc64/stack_machdep.c#1 branch .. //depot/projects/tcpecn/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/tcpecn/sun4v/conf/GENERIC#3 integrate .. //depot/projects/tcpecn/sun4v/include/pmc_mdep.h#2 integrate .. //depot/projects/tcpecn/sun4v/include/stack.h#1 branch .. //depot/projects/tcpecn/sun4v/sun4v/db_trace.c#2 integrate .. //depot/projects/tcpecn/sun4v/sun4v/hvcons.c#2 integrate .. //depot/projects/tcpecn/sun4v/sun4v/machdep.c#2 integrate .. //depot/projects/tcpecn/sun4v/sun4v/stack_machdep.c#1 branch .. //depot/projects/tcpecn/sun4v/sun4v/trap.c#2 integrate .. //depot/projects/tcpecn/sys/_lock.h#2 integrate .. //depot/projects/tcpecn/sys/ata.h#2 integrate .. //depot/projects/tcpecn/sys/cdefs.h#2 integrate .. //depot/projects/tcpecn/sys/disklabel.h#2 integrate .. //depot/projects/tcpecn/sys/elf_common.h#2 integrate .. //depot/projects/tcpecn/sys/kdb.h#2 integrate .. //depot/projects/tcpecn/sys/kernel.h#3 integrate .. //depot/projects/tcpecn/sys/kerneldump.h#2 integrate .. //depot/projects/tcpecn/sys/linker.h#2 integrate .. //depot/projects/tcpecn/sys/lock_profile.h#2 integrate .. //depot/projects/tcpecn/sys/mbuf.h#2 integrate .. //depot/projects/tcpecn/sys/param.h#3 integrate .. //depot/projects/tcpecn/sys/pcpu.h#3 integrate .. //depot/projects/tcpecn/sys/pmc.h#2 integrate .. //depot/projects/tcpecn/sys/pmckern.h#2 integrate .. //depot/projects/tcpecn/sys/pmclog.h#2 integrate .. //depot/projects/tcpecn/sys/priv.h#2 integrate .. //depot/projects/tcpecn/sys/proc.h#2 integrate .. //depot/projects/tcpecn/sys/selinfo.h#2 integrate .. //depot/projects/tcpecn/sys/socket.h#2 integrate .. //depot/projects/tcpecn/sys/socketvar.h#2 integrate .. //depot/projects/tcpecn/sys/stack.h#2 integrate .. //depot/projects/tcpecn/sys/sx.h#2 integrate .. //depot/projects/tcpecn/sys/sysctl.h#3 integrate .. //depot/projects/tcpecn/sys/systm.h#2 integrate .. //depot/projects/tcpecn/sys/tty.h#2 integrate .. //depot/projects/tcpecn/sys/ucred.h#2 integrate .. //depot/projects/tcpecn/sys/user.h#2 integrate .. //depot/projects/tcpecn/sys/xrpuio.h#2 delete .. //depot/projects/tcpecn/vm/redzone.c#2 integrate .. //depot/projects/tcpecn/vm/vm_page.c#2 integrate .. //depot/projects/tcpecn/vm/vm_phys.c#2 integrate .. //depot/projects/tcpecn/vm/vm_phys.h#2 integrate Differences ... ==== //depot/projects/tcpecn/amd64/amd64/db_trace.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.81 2007/11/15 22:00:56 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.82 2007/12/02 20:40:30 rwatson Exp $"); #include #include @@ -38,6 +38,7 @@ #include #include #include +#include #include #include @@ -177,18 +178,6 @@ return (1); } -/* - * Stack trace. - */ -#define INKERNEL(va) (((va) >= DMAP_MIN_ADDRESS && (va) < DMAP_MAX_ADDRESS) \ - || ((va) >= KERNBASE && (va) < VM_MAX_KERNEL_ADDRESS)) - -struct amd64_frame { - struct amd64_frame *f_frame; - long f_retaddr; - long f_arg0; -}; - #define NORMAL 0 #define TRAP 1 #define INTERRUPT 2 @@ -505,32 +494,6 @@ ctx->pcb_rip, count)); } -void -stack_save(struct stack *st) -{ - struct amd64_frame *frame; - vm_offset_t callpc; - register_t rbp; - - stack_zero(st); - __asm __volatile("movq %%rbp,%0" : "=r" (rbp)); - frame = (struct amd64_frame *)rbp; - while (1) { - if (!INKERNEL((long)frame)) - break; - callpc = frame->f_retaddr; - if (!INKERNEL(callpc)) - break; - if (stack_put(st, callpc) == -1) - break; - if (frame->f_frame <= frame || - (vm_offset_t)frame->f_frame >= - (vm_offset_t)rbp + KSTACK_PAGES * PAGE_SIZE) - break; - frame = frame->f_frame; - } -} - int amd64_set_watch(watchnum, watchaddr, size, access, d) int watchnum; ==== //depot/projects/tcpecn/amd64/amd64/exception.S#2 (text+ko) ==== @@ -1,8 +1,12 @@ /*- * Copyright (c) 1989, 1990 William F. Jolitz. * Copyright (c) 1990 The Regents of the University of California. + * Copyright (c) 2007 The FreeBSD Foundation * All rights reserved. * + * Portions of this software were developed by A. Joseph Koshy under + * sponsorship from the FreeBSD Foundation and Google, Inc. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -27,11 +31,12 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.130 2007/11/15 22:00:56 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.131 2007/12/07 08:20:15 jkoshy Exp $ */ #include "opt_atpic.h" #include "opt_compat.h" +#include "opt_hwpmc_hooks.h" #include #include @@ -40,6 +45,9 @@ #include "assym.s" .text +#ifdef HWPMC_HOOKS + ENTRY(start_exceptions) +#endif /*****************************************************************************/ /* Trap handling */ @@ -348,6 +356,9 @@ * execute the NMI handler with interrupts disabled to prevent a * nested interrupt from executing an 'iretq' instruction and * inadvertently taking the processor out of NMI mode. + * + * Third, the NMI handler runs on its own stack (tss_ist1), shared + * with the double fault handler. */ IDTVEC(nmi) @@ -386,6 +397,61 @@ movq %rsp, %rdi call trap MEXITCOUNT +#ifdef HWPMC_HOOKS + /* + * Check if the current trap was from user mode and if so + * whether the current thread needs a user call chain to be + * captured. We are still in NMI mode at this point. + */ + testb $SEL_RPL_MASK,TF_CS(%rsp) + jz nocallchain + movq PCPU(CURTHREAD),%rax /* curthread present? */ + orq %rax,%rax + jz nocallchain + testl $TDP_CALLCHAIN,TD_PFLAGS(%rax) /* flagged for capture? */ + jz nocallchain + /* + * A user callchain is to be captured, so: + * - Move execution to the regular kernel stack, to allow for + * nested NMI interrupts. + * - Take the processor out of "NMI" mode by faking an "iret". + * - Enable interrupts, so that copyin() can work. + */ + movq %rsp,%rsi /* source stack pointer */ + movq $TF_SIZE,%rcx + movq PCPU(RSP0),%rbx + subq %rcx,%rbx + movq %rbx,%rdi /* destination stack pointer */ + + shrq $3,%rcx /* trap frame size in long words */ + cld + rep + movsq /* copy trapframe */ + + movl %ss,%eax + pushq %rax /* tf_ss */ + pushq %rbx /* tf_rsp (on kernel stack) */ + pushfq /* tf_rflags */ + movl %cs,%eax + pushq %rax /* tf_cs */ + pushq $outofnmi /* tf_rip */ + iretq +outofnmi: + /* + * At this point the processor has exited NMI mode and is running + * with interrupts turned off on the normal kernel stack. + * We turn interrupts back on, and take the usual 'doreti' exit + * path. + * + * If a pending NMI gets recognized at or after this point, it + * will cause a kernel callchain to be traced. Since this path + * is only taken for NMI interrupts from user space, our `swapgs' + * state is correct for taking the doreti path. + */ + sti + jmp doreti +nocallchain: +#endif testl %ebx,%ebx jz nmi_restoreregs swapgs @@ -556,3 +622,6 @@ movq $0,TF_ADDR(%rsp) FAKE_MCOUNT(TF_RIP(%rsp)) jmp calltrap +#ifdef HWPMC_HOOKS + ENTRY(end_exceptions) +#endif ==== //depot/projects/tcpecn/amd64/amd64/identcpu.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.154 2007/05/30 14:23:26 des Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.155 2007/12/08 21:13:01 alc Exp $"); #include "opt_cpu.h" @@ -294,7 +294,7 @@ "\030" /* Same */ "\031" /* Same */ "\032FFXSR" /* Fast FXSAVE/FXRSTOR */ - "\033" /* Undefined */ + "\033Page1GB" /* 1-GB large page support */ "\034RDTSCP" /* RDTSCP */ "\035" /* Undefined */ "\036LM" /* 64 bit long mode */ ==== //depot/projects/tcpecn/amd64/amd64/machdep.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.678 2007/11/15 22:00:57 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.680 2007/12/25 17:51:55 rwatson Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -155,6 +155,10 @@ extern vm_offset_t ksym_start, ksym_end; #endif +/* Intel ICH registers */ +#define ICH_PMBASE 0x400 +#define ICH_SMI_EN ICH_PMBASE + 0x30 + int _udatasel, _ucodesel, _ucode32sel; int cold = 1; @@ -192,6 +196,27 @@ cpu_startup(dummy) void *dummy; { + char *sysenv; + + /* + * On MacBooks, we need to disallow the legacy USB circuit to + * generate an SMI# because this can cause several problems, + * namely: incorrect CPU frequency detection and failure to + * start the APs. + * We do this by disabling a bit in the SMI_EN (SMI Control and + * Enable register) of the Intel ICH LPC Interface Bridge. + */ + sysenv = getenv("smbios.system.product"); + if (sysenv != NULL) { + if (strncmp(sysenv, "MacBook", 7) == 0) { + if (bootverbose) + printf("Disabling LEGACY_USB_EN bit on " + "Intel ICH.\n"); + outl(ICH_SMI_EN, inl(ICH_SMI_EN) & ~0x8); + } + freeenv(sysenv); + } + /* * Good {morning,afternoon,evening,night}. */ @@ -1252,7 +1277,8 @@ #ifdef KDB if (boothowto & RB_KDB) - kdb_enter("Boot flags requested debugger"); + kdb_enter(KDB_WHY_BOOTFLAGS, + "Boot flags requested debugger"); #endif identify_cpu(); /* Final stage of CPU initialization */ ==== //depot/projects/tcpecn/amd64/amd64/mp_watchdog.c#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/amd64/amd64/mp_watchdog.c,v 1.5 2007/06/04 23:56:33 jeff Exp $ + * $FreeBSD: src/sys/amd64/amd64/mp_watchdog.c,v 1.6 2007/12/25 17:51:55 rwatson Exp $ */ #include "opt_mp_watchdog.h" @@ -203,7 +203,7 @@ if (watchdog_nmi) watchdog_ipi_nmi(); else - kdb_enter("mp_watchdog"); + kdb_enter(KDB_WHY_WATCHDOG, "mp_watchdog"); } } bcopy(old_pcomm, p->p_comm, MAXCOMLEN + 1); ==== //depot/projects/tcpecn/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.596 2007/11/30 07:14:42 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.599 2007/12/09 21:00:35 alc Exp $"); /* * Manages physical address maps. @@ -154,7 +154,7 @@ #endif #if !defined(PMAP_DIAGNOSTIC) -#define PMAP_INLINE __inline +#define PMAP_INLINE __gnu89_inline #else #define PMAP_INLINE #endif @@ -422,7 +422,8 @@ if (ndmpdp < 4) /* Minimum 4GB of dirmap */ ndmpdp = 4; DMPDPphys = allocpages(firstaddr, NDMPML4E); - DMPDphys = allocpages(firstaddr, ndmpdp); + if ((amd_feature & AMDID_PAGE1GB) == 0) + DMPDphys = allocpages(firstaddr, ndmpdp); dmaplimit = (vm_paddr_t)ndmpdp << PDPSHIFT; /* Fill in the underlying page table pages */ @@ -448,23 +449,33 @@ /* And connect up the PD to the PDP */ for (i = 0; i < NKPDPE; i++) { - ((pdp_entry_t *)KPDPphys)[i + KPDPI] = KPDphys + (i << PAGE_SHIFT); + ((pdp_entry_t *)KPDPphys)[i + KPDPI] = KPDphys + + (i << PAGE_SHIFT); ((pdp_entry_t *)KPDPphys)[i + KPDPI] |= PG_RW | PG_V | PG_U; } - - /* Now set up the direct map space using 2MB pages */ - for (i = 0; i < NPDEPG * ndmpdp; i++) { - ((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT; - ((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS | PG_G; + /* Now set up the direct map space using either 2MB or 1GB pages */ + if ((amd_feature & AMDID_PAGE1GB) == 0) { + for (i = 0; i < NPDEPG * ndmpdp; i++) { + ((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT; + ((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS | + PG_G; + } + /* And the direct map space's PDP */ + for (i = 0; i < ndmpdp; i++) { + ((pdp_entry_t *)DMPDPphys)[i] = DMPDphys + + (i << PAGE_SHIFT); + ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_U; + } + } else { + for (i = 0; i < ndmpdp; i++) { + ((pdp_entry_t *)DMPDPphys)[i] = + (vm_paddr_t)i << PDPSHIFT; + ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_PS | + PG_G; + } } - /* And the direct map space's PDP */ - for (i = 0; i < ndmpdp; i++) { - ((pdp_entry_t *)DMPDPphys)[i] = DMPDphys + (i << PAGE_SHIFT); - ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_U; - } - /* And recursively map PML4 to itself in order to get PTmap */ ((pdp_entry_t *)KPML4phys)[PML4PML4I] = KPML4phys; ((pdp_entry_t *)KPML4phys)[PML4PML4I] |= PG_RW | PG_V | PG_U; @@ -1083,7 +1094,7 @@ /*************************************************** * Page table page management routines..... ***************************************************/ -static PMAP_INLINE void +static __inline void pmap_free_zero_pages(vm_page_t free) { vm_page_t m; @@ -1099,7 +1110,7 @@ * This routine unholds page table pages, and if the hold count * drops to zero, then it decrements the wire count. */ -static PMAP_INLINE int +static __inline int pmap_unwire_pte_hold(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_page_t *free) { @@ -1430,9 +1441,9 @@ * This supports switching from a 2MB page to a * normal 4K page. */ - if (pd != 0 && (*pd & (PG_PS | PG_V)) == (PG_PS | PG_V)) { + if (pd != NULL && (*pd & (PG_PS | PG_V)) == (PG_PS | PG_V)) { *pd = 0; - pd = 0; + pd = NULL; pmap->pm_stats.resident_count -= NBPDR / PAGE_SIZE; free = NULL; pmap_unuse_pt(pmap, va, *pmap_pdpe(pmap, va), &free); @@ -1444,7 +1455,7 @@ * If the page table page is mapped, we just increment the * hold count, and activate it. */ - if (pd != 0 && (*pd & PG_V) != 0) { + if (pd != NULL && (*pd & PG_V) != 0) { m = PHYS_TO_VM_PAGE(*pd & PG_FRAME); m->wire_count++; } else { ==== //depot/projects/tcpecn/amd64/amd64/trap.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.322 2007/11/15 22:00:57 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.324 2007/12/07 08:20:15 jkoshy Exp $"); /* * AMD64 Trap and System call handling @@ -144,6 +144,9 @@ static int panic_on_nmi = 1; SYSCTL_INT(_machdep, OID_AUTO, panic_on_nmi, CTLFLAG_RW, &panic_on_nmi, 0, "Panic on NMI"); +static int prot_fault_translation = 0; +SYSCTL_INT(_machdep, OID_AUTO, prot_fault_translation, CTLFLAG_RW, + &prot_fault_translation, 0, "Select signal to deliver on protection fault"); extern char *syscallnames[]; @@ -192,8 +195,7 @@ * the NMI was handled by it and we can return immediately. */ if (type == T_NMI && pmc_intr && - (*pmc_intr)(PCPU_GET(cpuid), (uintptr_t) frame->tf_rip, - TRAPF_USERMODE(frame))) + (*pmc_intr)(PCPU_GET(cpuid), frame)) goto out; #endif @@ -312,8 +314,32 @@ if (i == SIGSEGV) ucode = SEGV_MAPERR; else { - i = SIGSEGV; /* XXX hack */ - ucode = SEGV_ACCERR; + if (prot_fault_translation == 0) { + /* + * Autodetect. + * This check also covers the images + * without the ABI-tag ELF note. + */ + if (p->p_osrel >= 700004) { + i = SIGSEGV; + ucode = SEGV_ACCERR; + } else { + i = SIGBUS; + ucode = BUS_PAGE_FAULT; + } + } else if (prot_fault_translation == 1) { + /* + * Always compat mode. + */ + i = SIGBUS; + ucode = BUS_PAGE_FAULT; + } else { + /* + * Always SIGSEGV mode. + */ + i = SIGSEGV; + ucode = SEGV_ACCERR; + } } break; ==== //depot/projects/tcpecn/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.488 2007/11/28 05:50:44 attilio Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.490 2007/12/15 00:56:16 scottl Exp $ cpu HAMMER ident GENERIC @@ -54,6 +54,7 @@ options COMPAT_FREEBSD6 # Compatible with FreeBSD6 options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI options KTRACE # ktrace(1) support +options STACK # stack(9) support options SYSVSHM # SYSV-style shared memory options SYSVMSG # SYSV-style message queues options SYSVSEM # SYSV-style semaphores @@ -130,6 +131,7 @@ device ciss # Compaq Smart RAID 5* device dpt # DPT Smartcache III, IV - See NOTES for options device hptmv # Highpoint RocketRAID 182x +device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx device rr232x # Highpoint RocketRAID 232x device iir # Intel Integrated RAID device ips # IBM (Adaptec) ServeRAID ==== //depot/projects/tcpecn/amd64/conf/NOTES#2 (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.71 2007/11/08 22:09:37 benjsc Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.73 2007/12/15 00:56:16 scottl Exp $ # # @@ -372,11 +372,15 @@ device aacp # SCSI Passthrough interface (optional, CAM required) # -# Highpoint RocketRAID 182x. This is really just software RAID on a >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 26 15:18:06 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A2E716A420; Wed, 26 Dec 2007 15:18:06 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 32BA416A41B for ; Wed, 26 Dec 2007 15:18:06 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2EB8413C461 for ; Wed, 26 Dec 2007 15:18:06 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQFI5FB095342 for ; Wed, 26 Dec 2007 15:18:06 GMT (envelope-from rpaulo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQFHpLF095335 for perforce@freebsd.org; Wed, 26 Dec 2007 15:17:51 GMT (envelope-from rpaulo@FreeBSD.org) Date: Wed, 26 Dec 2007 15:17:51 GMT Message-Id: <200712261517.lBQFHpLF095335@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rpaulo@FreeBSD.org using -f From: Rui Paulo To: Perforce Change Reviews Cc: Subject: PERFORCE change 131705 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 15:18:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=131705 Change 131705 by rpaulo@rpaulo_epsilon on 2007/12/26 15:17:46 IFC Affected files ... .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/db_trace.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/exception.S#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/identcpu.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/machdep.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/mp_watchdog.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/pmap.c#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/trap.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/conf/GENERIC#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/conf/NOTES#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/include/specialreg.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/db_trace.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/nexus_io.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/nexus_io_asm.S#2 delete .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/pmap.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/arm/at91/at91.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/at91/if_ate.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/at91/kb920x_machdep.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/AVILA#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/BWCT#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/CRB#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/EP80219#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/HL200#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/IQ31244#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/KB920X#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/SIMICS#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/conf/SKYEYE#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/include/asmacros.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/include/atomic.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/arm/sa11x0/files.sa11x0#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/boot/arm/at91/libat91/spi_flash.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/boot/forth/support.4th#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/Makefile#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/start.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/loader/version#2 delete .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/boot/powerpc/ofw/version#1 branch .. //depot/projects/soc2007/rpaulo-macbook/cam/cam_xpt.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/cam/scsi/scsi_da.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/cam/scsi/scsi_low.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32_misc.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32_proto.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32_syscall.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32_syscalls.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/freebsd32_sysent.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/freebsd32/syscalls.master#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/ndis/ndis_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/ndis/subr_ndis.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/ndis/subr_ntoskrnl.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/Makefile.amd64#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/NOTES#20 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files#25 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.amd64#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.arm#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.i386#12 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.ia64#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.pc98#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.powerpc#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.sparc64#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files.sun4v#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/options#17 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/options.powerpc#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_capture.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_command.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_command.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_input.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_lex.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_lex.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_main.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_output.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_script.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/ddb/db_textdump.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/ddb/ddb.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/aac/aac.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/aac/aac_cam.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/aac/aac_pci.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/aac/aacreg.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/aac/aacvar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpica/Osd/OsdDebug.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpica/acpi_thermal.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/amr/amr.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/amr/amr_cam.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/amr/amr_pci.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/amr/amrvar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/arcmsr/arcmsr.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/arcmsr/arcmsr.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ata/ata-all.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ata/ata-chipset.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ata/ata-dma.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/bge/if_bge.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/bge/if_bgereg.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_adapter.h#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_config.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_main.c#10 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_offload.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_offload.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_osdep.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_sge.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/sys/mvec.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/sys/uipc_mvec.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/dcons/dcons_os.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/array.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/him.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/hptintf.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/ldm.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/list.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hptrr/osm.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_logging.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_mod.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_piv.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_x86.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/if_ndis/if_ndis.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/if_ndis/if_ndis_pci.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/if_ndis/if_ndisvar.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ipw/if_ipw.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/iwi/if_iwi.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mfi/mfi.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mfi/mfi_pci.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/msk/if_msk.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/msk/if_mskreg.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ofw/openpromio.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/re/if_re.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/si/si_pci.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sio/sio.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/snp/snp.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/hda/hdac.c#12 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/ich.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/maestro.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/channel.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/syscons/syscons.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/uart/uart_core.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/umass.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ums.c#15 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/uplcom.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usbdevs#24 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/utopia/utopia.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/tmpfs/tmpfs_subr.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/tmpfs/tmpfs_vfsops.c#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/tmpfs/tmpfs_vnops.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/udf/udf_vfsops.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/unionfs/union_subr.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/geom_bsd.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/geom_dev.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/geom_io.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/part/g_part.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/part/g_part.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/part/g_part_bsd.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/i386/bios/apm.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/conf/GENERIC#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/conf/GENERIC.hints#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/conf/NOTES#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/conf/PAE#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/db_trace.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/exception.s#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/machdep.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/mp_watchdog.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/pmap.c#10 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/trap.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/i386/pci/pci_pir.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/conf/GENERIC#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/db_machdep.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/machdep.c#10 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/ia64/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/Makefile#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/imgact_elf.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/init_main.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_clock.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_conf.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_descrip.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_event.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_exec.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_linker.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_lock.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_mbuf.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_mib.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_module.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_mutex.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_pmc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_proc.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_resource.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_rwlock.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_shutdown.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_sig.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_sx.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_thread.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_umtx.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sched_4bsd.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sched_ule.c#12 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_bus.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_kdb.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_lock.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_stack.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_trap.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_witness.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sys_generic.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sys_pipe.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/tty_cons.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/uipc_sockbuf.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_bio.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_mount.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_subr.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/modules/Makefile#17 integrate .. //depot/projects/soc2007/rpaulo-macbook/modules/amr/Makefile#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/modules/cxgb/Makefile#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/soc2007/rpaulo-macbook/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/soc2007/rpaulo-macbook/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/soc2007/rpaulo-macbook/modules/hptrr/Makefile#1 branch .. //depot/projects/soc2007/rpaulo-macbook/net/bpf.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/bpf.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/bpf_filter.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/bridgestp.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/bridgestp.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if_bridge.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if_enc.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if_lagg.c#13 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if_var.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/route.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/route.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_output.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_radiotap.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/ng_base.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/ng_car.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/ng_car.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/ng_l2tp.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/if_ether.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/if_ether.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/in_pcb.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/in_pcb.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/ip_dummynet.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/ip_fw2.c#10 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/ip_input.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/libalias/alias_util.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp.h#13 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_bsd_addr.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_output.c#19 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_structs.h#12 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_usrreq.c#18 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctputil.c#19 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_offload.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_offload.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_subr.c#17 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_syncache.c#13 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_syncache.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_usrreq.c#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_var.h#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/toedev.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/netinet6/dest6.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/frag6.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/icmp6.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_cksum.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_gif.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_gif.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_ifattach.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_ifattach.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_pcb.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_pcb.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_proto.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_rmx.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_src.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_var.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_ecn.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_forward.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_id.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_input.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_ipsec.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_ipsec.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_mroute.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_mroute.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_output.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_var.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6protosw.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/mld6.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/mld6_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/nd6.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/nd6.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/nd6_nbr.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/nd6_rtr.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/pim6.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/pim6_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/raw_ip6.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/raw_ip6.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/route6.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/scope6.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/scope6_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/sctp6_usrreq.c#17 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/sctp6_var.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/tcp6_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/udp6_usrreq.c#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/udp6_var.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netncp/ncp_rq.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netncp/ncp_sock.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netncp/ncp_sock.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netsmb/smb_trantcp.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/pc98/cbus/sio.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/pc98/conf/GENERIC#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/pc98/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/pc98/pc98/machdep.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/pci/if_rlreg.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/pci/xrpu.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/clock.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/copyinout.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/interrupt.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/locore.S#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/mmu_oea.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/nexus.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/ofw_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/ofwmagic.S#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/swtch.S#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/trap.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/trap_subr.S#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/uio_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/uma_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/aim/vm_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/conf/GENERIC#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/conf/NOTES#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/include/_bus.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/include/bus.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/include/fpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powermac/grackle.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powermac/macio.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powermac/pswitch.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powermac/uninorth.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/bus_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/clock.c#4 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/copyinout.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/db_memrw.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/db_trace.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/interrupt.c#3 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/locore.S#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/machdep.c#7 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/mmu_oea.c#3 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/nexus.c#4 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/ofw_machdep.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/ofwmagic.S#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/swtch.S#3 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/trap.c#6 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/trap_subr.S#2 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/uio_machdep.c#3 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/uma_machdep.c#3 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/vm_machdep.c#5 delete .. //depot/projects/soc2007/rpaulo-macbook/powerpc/psim/iobus.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_pipe.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/mac/mac_posix_sem.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/mac_test/mac_test.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/conf/GENERIC#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/sparc64/pci/psycho.c#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/db_trace.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/machdep.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/trap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/conf/GENERIC#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/include/stack.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/db_trace.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/hvcons.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/machdep.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/stack_machdep.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/trap.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/_lock.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/ata.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/cdefs.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/disklabel.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/elf_common.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/kdb.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/kernel.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/kerneldump.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/linker.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/lock_profile.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/mbuf.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/param.h#13 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/pcpu.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/pmc.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/pmckern.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/pmclog.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/priv.h#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/proc.h#9 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/selinfo.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/socket.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/socketvar.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/stack.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/sx.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/sysctl.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/systm.h#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/tty.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/ucred.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/user.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/xrpuio.h#2 delete .. //depot/projects/soc2007/rpaulo-macbook/vm/redzone.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_page.c#12 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_phys.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_phys.h#4 integrate Differences ... ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/db_trace.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.81 2007/11/15 22:00:56 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.82 2007/12/02 20:40:30 rwatson Exp $"); #include #include @@ -38,6 +38,7 @@ #include #include #include +#include #include #include @@ -177,18 +178,6 @@ return (1); } -/* - * Stack trace. - */ -#define INKERNEL(va) (((va) >= DMAP_MIN_ADDRESS && (va) < DMAP_MAX_ADDRESS) \ - || ((va) >= KERNBASE && (va) < VM_MAX_KERNEL_ADDRESS)) - -struct amd64_frame { - struct amd64_frame *f_frame; - long f_retaddr; - long f_arg0; -}; - #define NORMAL 0 #define TRAP 1 #define INTERRUPT 2 @@ -505,32 +494,6 @@ ctx->pcb_rip, count)); } -void -stack_save(struct stack *st) -{ - struct amd64_frame *frame; - vm_offset_t callpc; - register_t rbp; - - stack_zero(st); - __asm __volatile("movq %%rbp,%0" : "=r" (rbp)); - frame = (struct amd64_frame *)rbp; - while (1) { - if (!INKERNEL((long)frame)) - break; - callpc = frame->f_retaddr; - if (!INKERNEL(callpc)) - break; - if (stack_put(st, callpc) == -1) - break; - if (frame->f_frame <= frame || - (vm_offset_t)frame->f_frame >= - (vm_offset_t)rbp + KSTACK_PAGES * PAGE_SIZE) - break; - frame = frame->f_frame; - } -} - int amd64_set_watch(watchnum, watchaddr, size, access, d) int watchnum; ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/exception.S#3 (text+ko) ==== @@ -1,8 +1,12 @@ /*- * Copyright (c) 1989, 1990 William F. Jolitz. * Copyright (c) 1990 The Regents of the University of California. + * Copyright (c) 2007 The FreeBSD Foundation * All rights reserved. * + * Portions of this software were developed by A. Joseph Koshy under + * sponsorship from the FreeBSD Foundation and Google, Inc. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -27,11 +31,12 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.130 2007/11/15 22:00:56 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.131 2007/12/07 08:20:15 jkoshy Exp $ */ #include "opt_atpic.h" #include "opt_compat.h" +#include "opt_hwpmc_hooks.h" #include #include @@ -40,6 +45,9 @@ #include "assym.s" .text +#ifdef HWPMC_HOOKS + ENTRY(start_exceptions) +#endif /*****************************************************************************/ /* Trap handling */ @@ -348,6 +356,9 @@ * execute the NMI handler with interrupts disabled to prevent a * nested interrupt from executing an 'iretq' instruction and * inadvertently taking the processor out of NMI mode. + * + * Third, the NMI handler runs on its own stack (tss_ist1), shared + * with the double fault handler. */ IDTVEC(nmi) @@ -386,6 +397,61 @@ movq %rsp, %rdi call trap MEXITCOUNT +#ifdef HWPMC_HOOKS + /* + * Check if the current trap was from user mode and if so + * whether the current thread needs a user call chain to be + * captured. We are still in NMI mode at this point. + */ + testb $SEL_RPL_MASK,TF_CS(%rsp) + jz nocallchain + movq PCPU(CURTHREAD),%rax /* curthread present? */ + orq %rax,%rax + jz nocallchain + testl $TDP_CALLCHAIN,TD_PFLAGS(%rax) /* flagged for capture? */ + jz nocallchain + /* + * A user callchain is to be captured, so: + * - Move execution to the regular kernel stack, to allow for + * nested NMI interrupts. + * - Take the processor out of "NMI" mode by faking an "iret". + * - Enable interrupts, so that copyin() can work. + */ + movq %rsp,%rsi /* source stack pointer */ + movq $TF_SIZE,%rcx + movq PCPU(RSP0),%rbx + subq %rcx,%rbx + movq %rbx,%rdi /* destination stack pointer */ + + shrq $3,%rcx /* trap frame size in long words */ + cld + rep + movsq /* copy trapframe */ + + movl %ss,%eax + pushq %rax /* tf_ss */ + pushq %rbx /* tf_rsp (on kernel stack) */ + pushfq /* tf_rflags */ + movl %cs,%eax + pushq %rax /* tf_cs */ + pushq $outofnmi /* tf_rip */ + iretq +outofnmi: + /* + * At this point the processor has exited NMI mode and is running + * with interrupts turned off on the normal kernel stack. + * We turn interrupts back on, and take the usual 'doreti' exit + * path. + * + * If a pending NMI gets recognized at or after this point, it + * will cause a kernel callchain to be traced. Since this path + * is only taken for NMI interrupts from user space, our `swapgs' + * state is correct for taking the doreti path. + */ + sti + jmp doreti +nocallchain: +#endif testl %ebx,%ebx jz nmi_restoreregs swapgs @@ -556,3 +622,6 @@ movq $0,TF_ADDR(%rsp) FAKE_MCOUNT(TF_RIP(%rsp)) jmp calltrap +#ifdef HWPMC_HOOKS + ENTRY(end_exceptions) +#endif ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/identcpu.c#3 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.154 2007/05/30 14:23:26 des Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.155 2007/12/08 21:13:01 alc Exp $"); #include "opt_cpu.h" @@ -294,7 +294,7 @@ "\030" /* Same */ "\031" /* Same */ "\032FFXSR" /* Fast FXSAVE/FXRSTOR */ - "\033" /* Undefined */ + "\033Page1GB" /* 1-GB large page support */ "\034RDTSCP" /* RDTSCP */ "\035" /* Undefined */ "\036LM" /* 64 bit long mode */ ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/machdep.c#6 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.678 2007/11/15 22:00:57 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.680 2007/12/25 17:51:55 rwatson Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -155,6 +155,10 @@ extern vm_offset_t ksym_start, ksym_end; #endif +/* Intel ICH registers */ +#define ICH_PMBASE 0x400 +#define ICH_SMI_EN ICH_PMBASE + 0x30 + int _udatasel, _ucodesel, _ucode32sel; int cold = 1; @@ -192,6 +196,27 @@ cpu_startup(dummy) void *dummy; { + char *sysenv; + + /* + * On MacBooks, we need to disallow the legacy USB circuit to + * generate an SMI# because this can cause several problems, + * namely: incorrect CPU frequency detection and failure to + * start the APs. + * We do this by disabling a bit in the SMI_EN (SMI Control and + * Enable register) of the Intel ICH LPC Interface Bridge. + */ + sysenv = getenv("smbios.system.product"); + if (sysenv != NULL) { + if (strncmp(sysenv, "MacBook", 7) == 0) { + if (bootverbose) + printf("Disabling LEGACY_USB_EN bit on " + "Intel ICH.\n"); + outl(ICH_SMI_EN, inl(ICH_SMI_EN) & ~0x8); + } + freeenv(sysenv); + } + /* * Good {morning,afternoon,evening,night}. */ @@ -1252,7 +1277,8 @@ #ifdef KDB if (boothowto & RB_KDB) - kdb_enter("Boot flags requested debugger"); + kdb_enter(KDB_WHY_BOOTFLAGS, + "Boot flags requested debugger"); #endif identify_cpu(); /* Final stage of CPU initialization */ ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/mp_watchdog.c#3 (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/amd64/amd64/mp_watchdog.c,v 1.5 2007/06/04 23:56:33 jeff Exp $ + * $FreeBSD: src/sys/amd64/amd64/mp_watchdog.c,v 1.6 2007/12/25 17:51:55 rwatson Exp $ */ #include "opt_mp_watchdog.h" @@ -203,7 +203,7 @@ if (watchdog_nmi) watchdog_ipi_nmi(); else - kdb_enter("mp_watchdog"); + kdb_enter(KDB_WHY_WATCHDOG, "mp_watchdog"); } } bcopy(old_pcomm, p->p_comm, MAXCOMLEN + 1); ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/pmap.c#11 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.596 2007/11/30 07:14:42 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.599 2007/12/09 21:00:35 alc Exp $"); /* * Manages physical address maps. @@ -154,7 +154,7 @@ #endif #if !defined(PMAP_DIAGNOSTIC) -#define PMAP_INLINE __inline +#define PMAP_INLINE __gnu89_inline #else #define PMAP_INLINE #endif @@ -422,7 +422,8 @@ if (ndmpdp < 4) /* Minimum 4GB of dirmap */ ndmpdp = 4; DMPDPphys = allocpages(firstaddr, NDMPML4E); - DMPDphys = allocpages(firstaddr, ndmpdp); + if ((amd_feature & AMDID_PAGE1GB) == 0) + DMPDphys = allocpages(firstaddr, ndmpdp); dmaplimit = (vm_paddr_t)ndmpdp << PDPSHIFT; /* Fill in the underlying page table pages */ @@ -448,23 +449,33 @@ /* And connect up the PD to the PDP */ for (i = 0; i < NKPDPE; i++) { - ((pdp_entry_t *)KPDPphys)[i + KPDPI] = KPDphys + (i << PAGE_SHIFT); + ((pdp_entry_t *)KPDPphys)[i + KPDPI] = KPDphys + + (i << PAGE_SHIFT); ((pdp_entry_t *)KPDPphys)[i + KPDPI] |= PG_RW | PG_V | PG_U; } - - /* Now set up the direct map space using 2MB pages */ - for (i = 0; i < NPDEPG * ndmpdp; i++) { - ((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT; - ((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS | PG_G; + /* Now set up the direct map space using either 2MB or 1GB pages */ + if ((amd_feature & AMDID_PAGE1GB) == 0) { + for (i = 0; i < NPDEPG * ndmpdp; i++) { + ((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT; + ((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS | + PG_G; + } + /* And the direct map space's PDP */ + for (i = 0; i < ndmpdp; i++) { + ((pdp_entry_t *)DMPDPphys)[i] = DMPDphys + + (i << PAGE_SHIFT); + ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_U; + } + } else { + for (i = 0; i < ndmpdp; i++) { + ((pdp_entry_t *)DMPDPphys)[i] = + (vm_paddr_t)i << PDPSHIFT; + ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_PS | + PG_G; + } } - /* And the direct map space's PDP */ - for (i = 0; i < ndmpdp; i++) { - ((pdp_entry_t *)DMPDPphys)[i] = DMPDphys + (i << PAGE_SHIFT); - ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_U; - } - /* And recursively map PML4 to itself in order to get PTmap */ ((pdp_entry_t *)KPML4phys)[PML4PML4I] = KPML4phys; ((pdp_entry_t *)KPML4phys)[PML4PML4I] |= PG_RW | PG_V | PG_U; @@ -1083,7 +1094,7 @@ /*************************************************** * Page table page management routines..... ***************************************************/ -static PMAP_INLINE void +static __inline void pmap_free_zero_pages(vm_page_t free) { vm_page_t m; @@ -1099,7 +1110,7 @@ * This routine unholds page table pages, and if the hold count * drops to zero, then it decrements the wire count. */ -static PMAP_INLINE int +static __inline int pmap_unwire_pte_hold(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_page_t *free) { @@ -1430,9 +1441,9 @@ * This supports switching from a 2MB page to a * normal 4K page. */ - if (pd != 0 && (*pd & (PG_PS | PG_V)) == (PG_PS | PG_V)) { + if (pd != NULL && (*pd & (PG_PS | PG_V)) == (PG_PS | PG_V)) { *pd = 0; - pd = 0; + pd = NULL; pmap->pm_stats.resident_count -= NBPDR / PAGE_SIZE; free = NULL; pmap_unuse_pt(pmap, va, *pmap_pdpe(pmap, va), &free); @@ -1444,7 +1455,7 @@ * If the page table page is mapped, we just increment the * hold count, and activate it. */ - if (pd != 0 && (*pd & PG_V) != 0) { + if (pd != NULL && (*pd & PG_V) != 0) { m = PHYS_TO_VM_PAGE(*pd & PG_FRAME); m->wire_count++; } else { ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/trap.c#7 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.322 2007/11/15 22:00:57 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.324 2007/12/07 08:20:15 jkoshy Exp $"); /* * AMD64 Trap and System call handling @@ -144,6 +144,9 @@ static int panic_on_nmi = 1; SYSCTL_INT(_machdep, OID_AUTO, panic_on_nmi, CTLFLAG_RW, &panic_on_nmi, 0, "Panic on NMI"); +static int prot_fault_translation = 0; +SYSCTL_INT(_machdep, OID_AUTO, prot_fault_translation, CTLFLAG_RW, + &prot_fault_translation, 0, "Select signal to deliver on protection fault"); extern char *syscallnames[]; @@ -192,8 +195,7 @@ * the NMI was handled by it and we can return immediately. */ if (type == T_NMI && pmc_intr && - (*pmc_intr)(PCPU_GET(cpuid), (uintptr_t) frame->tf_rip, - TRAPF_USERMODE(frame))) + (*pmc_intr)(PCPU_GET(cpuid), frame)) goto out; #endif @@ -312,8 +314,32 @@ if (i == SIGSEGV) ucode = SEGV_MAPERR; else { - i = SIGSEGV; /* XXX hack */ - ucode = SEGV_ACCERR; + if (prot_fault_translation == 0) { + /* + * Autodetect. + * This check also covers the images + * without the ABI-tag ELF note. + */ + if (p->p_osrel >= 700004) { + i = SIGSEGV; + ucode = SEGV_ACCERR; + } else { + i = SIGBUS; + ucode = BUS_PAGE_FAULT; + } + } else if (prot_fault_translation == 1) { + /* + * Always compat mode. + */ + i = SIGBUS; + ucode = BUS_PAGE_FAULT; + } else { + /* + * Always SIGSEGV mode. + */ + i = SIGSEGV; + ucode = SEGV_ACCERR; + } } break; ==== //depot/projects/soc2007/rpaulo-macbook/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.488 2007/11/28 05:50:44 attilio Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.490 2007/12/15 00:56:16 scottl Exp $ cpu HAMMER ident GENERIC @@ -54,6 +54,7 @@ options COMPAT_FREEBSD6 # Compatible with FreeBSD6 options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI options KTRACE # ktrace(1) support +options STACK # stack(9) support options SYSVSHM # SYSV-style shared memory options SYSVMSG # SYSV-style message queues options SYSVSEM # SYSV-style semaphores @@ -130,6 +131,7 @@ device ciss # Compaq Smart RAID 5* device dpt # DPT Smartcache III, IV - See NOTES for options device hptmv # Highpoint RocketRAID 182x +device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx device rr232x # Highpoint RocketRAID 232x device iir # Intel Integrated RAID device ips # IBM (Adaptec) ServeRAID ==== //depot/projects/soc2007/rpaulo-macbook/amd64/conf/NOTES#6 (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.71 2007/11/08 22:09:37 benjsc Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.73 2007/12/15 00:56:16 scottl Exp $ # # @@ -372,11 +372,15 @@ device aacp # SCSI Passthrough interface (optional, CAM required) # -# Highpoint RocketRAID 182x. This is really just software RAID on a >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 26 16:16:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1437916A420; Wed, 26 Dec 2007 16:16:08 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B1EB116A41A for ; Wed, 26 Dec 2007 16:16:07 +0000 (UTC) (envelope-from thioretic@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AE0DD13C4D9 for ; Wed, 26 Dec 2007 16:16:07 +0000 (UTC) (envelope-from thioretic@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQGG7QU018669 for ; Wed, 26 Dec 2007 16:16:07 GMT (envelope-from thioretic@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQGG7FV018666 for perforce@freebsd.org; Wed, 26 Dec 2007 16:16:07 GMT (envelope-from thioretic@FreeBSD.org) Date: Wed, 26 Dec 2007 16:16:07 GMT Message-Id: <200712261616.lBQGG7FV018666@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to thioretic@FreeBSD.org using -f From: Maxim Zhuravlev To: Perforce Change Reviews Cc: Subject: PERFORCE change 131706 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 16:16:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131706 Change 131706 by thioretic@thioretic on 2007/12/26 16:16:02 The event framework is now well outlined. It's not extensible yet. Still, the extensibility is implied by design. Affected files ... .. //depot/projects/soc2007/thioretic_gidl2/kern/device_if.m#3 edit .. //depot/projects/soc2007/thioretic_gidl2/kern/subr_bus.c#11 edit .. //depot/projects/soc2007/thioretic_gidl2/sys/bus.h#7 edit Differences ... ==== //depot/projects/soc2007/thioretic_gidl2/kern/device_if.m#3 (text+ko) ==== @@ -67,7 +67,7 @@ return NULL; } static void null_receive_event (device_t dev, device_t provider, - enum relationship rel, enum dev_event ev) + int rel, uint32_t ev) { return; } @@ -375,6 +375,6 @@ METHOD void receive_event { device_t dev; device_t provider; - enum relationship rel; - enum dev_event ev_type; + int rel; + uint32_t ev_type; } DEFAULT null_receive_event; ==== //depot/projects/soc2007/thioretic_gidl2/kern/subr_bus.c#11 (text+ko) ==== @@ -130,7 +130,7 @@ }; struct dev_event_entry { - enum dev_event ev_type; + uint32_t ev_type; TAILQ_ENTRY(dev_event_entry) link; }; typedef struct dev_event_entry* dev_event_entry_t; @@ -2069,24 +2069,42 @@ } } -static void device_issue_event (device_t dev, enum dev_event ev_type){ +static void device_issue_event (device_t dev, uint32_t ev_type){ dev_event_entry_t dee; devicelink_t pd; + int dequeuedevents = 0; + + if (ev_type > EV_MAX) + return; /*deliver to all children*/ - if (!TAILQ_EMPTY(&dev->children)){ + if ((event_pref[ev_type] & REL_CHILD) && + !TAILQ_EMPTY(&dev->children)){ TAILQ_FOREACH (pd, &dev->children, link){ - DEVICE_RECEIVE_EVENT (pd, dev, REL_CHILD, ev_type); + DEVICE_RECEIVE_EVENT (pd, dev, REL_PARENT, ev_type); } } /*deliver to all parents*/ - if (!TAILQ_EMPTY(&dev->parents)){ + if ((event_pref[ev_type] & REL_PARENT) && + !TAILQ_EMPTY(&dev->parents)){ TAILQ_FOREACH (pd, &dev->parents, link){ - DEVICE_RECEIVE_EVENT (pd, dev, REL_PARENT, ev_type); + DEVICE_RECEIVE_EVENT (pd, dev, REL_CHILD, ev_type); } } + while (!TAILQ_EMPTY(&dev->evs)){ + dee = TAILQ_LAST(&dev->evs, dev_event_list); + if (!(event_pref[ev_type] & (1<<(dee->ev_type)))) + break; + TAILQ_REMOVE(&dev->evs, dee, link); + free (dee); + dequeuedevents++; + } + + if (dequeuedevents > 0 && !(event_pref[ev_type] & EVP_ENQALWAYS)) + return; + /*enqueue*/ dee = malloc (sizeof(struct dev_event_entry), M_BUS, M_NOWAIT|M_ZERO); if (dee == NULL) @@ -2096,7 +2114,7 @@ TAILQ_INSERT_TAIL (&dev->evs, dee, link); } -static void device_deliver_events (device_t dev, device_t recipient, enum relationship rel){ +static void device_deliver_events (device_t dev, device_t recipient, int rel){ dev_event_entry_t dee; if (TAILQ_EMPTY(&dev->evs)) @@ -3299,6 +3317,11 @@ if(driver == NULL || level == DRL_LOWEST){ if(!device_destroy_configuration(dev)) return (EBUSY); + while (!TAILQ_EMPTY(&dev->evs)){ + dee = TAILQ_FIRST(&dev->evs); + TAILQ_REMOVE (&dev->evs, dee, link); + free (dee); + } } if (!dil){ @@ -3444,6 +3467,7 @@ dev->driver_level=DRL_LOWEST; return (error); } + device_issue_event(dev, EV_ATTACH); dil = dev->driver; if (dev->driver_level == DRL_LOWEST){ @@ -3481,6 +3505,7 @@ { int error; devicelink_t pd; + dev_event_entry_t dee; GIANT_REQUIRED; @@ -3492,6 +3517,7 @@ if ((error = DEVICE_DETACH(dev)) != 0) return (error); + if (dev->driver_level != DRL_LOWEST){ TAILQ_REMOVE(&dev->drivers[dev->driver_level], dev->driver, link); free(dev->driver); @@ -3503,6 +3529,8 @@ dev->state = DS_ATTACHED; return (0); } + device_issue_event(dev, EV_DETACH); + devremoved(dev); device_printf(dev, "detached\n"); if (!TAILQ_EMPTY(&dev->parents)){ @@ -3538,6 +3566,7 @@ int device_quiesce(device_t dev) { + int result; PDEBUG(("%s", DEVICENAME(dev))); if (dev->state == DS_BUSY) @@ -3545,7 +3574,10 @@ if (dev->state != DS_ATTACHED) return (0); - return (DEVICE_QUIESCE(dev)); + if (result = DEVICE_QUIESCE(dev)) + device_issue_event(dev, EV_QUIESCE); + + return (result); } /** @@ -3559,9 +3591,14 @@ int device_shutdown(device_t dev) { + int result; + if (dev->state < DS_ATTACHED) return (0); - return (DEVICE_SHUTDOWN(dev)); + result = DEVICE_SHUTDOWN(dev); + device_issue_event(dev, EV_SHUTDOWN); + + return (result); } /** @@ -4033,10 +4070,13 @@ if (error) { for (child2 = TAILQ_FIRST(&dev->children); child2 && child2 != child; - child2 = TAILQ_NEXT(child2, link)) + child2 = TAILQ_NEXT(child2, link)){ DEVICE_RESUME(child2); +// device_issue_event(child2, EV_RESUME); + } return (error); } + device_issue_event(child, EV_SUSPEND); } return (0); } @@ -4053,7 +4093,8 @@ device_t child; TAILQ_FOREACH(child, &dev->children, link) { - DEVICE_RESUME(child); + if (DEVICE_RESUME(child)) + device_issue_event(child, EV_RESUME); /* if resume fails, there's nothing we can usefully do... */ } return (0); ==== //depot/projects/soc2007/thioretic_gidl2/sys/bus.h#7 (text+ko) ==== @@ -713,21 +713,35 @@ bus_space_write_region_stream_8(rman_get_bustag(r), rman_get_bushandle(r), (o), (d), (c)) /** - * Triggers support functions + * event support functions + */ +#define EV_ATTACH 0 +#define EV_DETACH 1 +#define EV_RESUME 2 +#define EV_SUSPEND 3 +#define EV_QUIESCE 4 +#define EV_SHUTDOWN 5 + +#define EV_MAX 28 + +#define REL_CHILD (1<<29) +#define REL_PARENT (1<<30) +#define EVP_ENQALWAYS (1<<31) +/** + * event_pref array is an array of event settings. + * includes: + * what devices should receive the event (children and/or parents) + * what enqueued events should be dequeued */ -enum dev_event{ - EV_ATTACH, - EV_DETACH, - EV_RESUME, - EV_SUSPEND, - EV_QUIESCE, - EV_SHUTDOWN -}; -enum relationship { - REL_CHILD, - REL_PARENT -}; +uint32_t event_pref[32] = + { REL_CHILD | REL_PARENT, /* EV_ATTACH */ + REL_CHILD | REL_PARENT | (REL_CHILD - 1), /* EV_DETACH */ + REL_CHILD | REL_PARENT | (1< Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9B88216A421; Wed, 26 Dec 2007 19:18:20 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5A43216A420 for ; Wed, 26 Dec 2007 19:18:20 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 399A413C4E1 for ; Wed, 26 Dec 2007 19:18:20 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQJIKWv000327 for ; Wed, 26 Dec 2007 19:18:20 GMT (envelope-from rpaulo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQJIKIt000323 for perforce@freebsd.org; Wed, 26 Dec 2007 19:18:20 GMT (envelope-from rpaulo@FreeBSD.org) Date: Wed, 26 Dec 2007 19:18:20 GMT Message-Id: <200712261918.lBQJIKIt000323@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rpaulo@FreeBSD.org using -f From: Rui Paulo To: Perforce Change Reviews Cc: Subject: PERFORCE change 131713 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 19:18:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=131713 Change 131713 by rpaulo@rpaulo_zoo on 2007/12/26 19:17:37 flags is now u_long. Affected files ... .. //depot/projects/tcpecn/netinet/tcp_usrreq.c#4 edit Differences ... ==== //depot/projects/tcpecn/netinet/tcp_usrreq.c#4 (text+ko) ==== @@ -1765,7 +1765,7 @@ db_printf(")\n"); db_print_indent(indent); - db_printf("t_flags: 0x%x (", tp->t_flags); + db_printf("t_flags: 0x%lx (", tp->t_flags); db_print_tflags(tp->t_flags); db_printf(")\n"); From owner-p4-projects@FreeBSD.ORG Wed Dec 26 20:02:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37D3316A41B; Wed, 26 Dec 2007 20:02:08 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AEED416A418 for ; Wed, 26 Dec 2007 20:02:07 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A5D2013C43E for ; Wed, 26 Dec 2007 20:02:07 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQK27Uj015895 for ; Wed, 26 Dec 2007 20:02:07 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQK278u015889 for perforce@freebsd.org; Wed, 26 Dec 2007 20:02:07 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 20:02:07 GMT Message-Id: <200712262002.lBQK278u015889@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 131721 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 20:02:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131721 Change 131721 by jb@jb_freebsd1 on 2007/12/26 20:01:35 mp_maxid is the maximum ID, not a bound. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#10 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#10 (text) ==== @@ -3382,7 +3382,7 @@ do { #else - for (i = 0; i < mp_maxid; i++) { + for (i = 0; i <= mp_maxid; i++) { if (pcpu_find(i) == NULL) continue; @@ -3450,7 +3450,7 @@ do { #else - for (i = 0; i < mp_maxid; i++) { + for (i = 0; i <= mp_maxid; i++) { if (pcpu_find(i) == NULL) continue; From owner-p4-projects@FreeBSD.ORG Wed Dec 26 21:18:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 038EE16A469; Wed, 26 Dec 2007 21:18:29 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9724416A421 for ; Wed, 26 Dec 2007 21:18:28 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8B54B13C46E for ; Wed, 26 Dec 2007 21:18:28 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQLISGk056433 for ; Wed, 26 Dec 2007 21:18:28 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQLIRUR056430 for perforce@freebsd.org; Wed, 26 Dec 2007 21:18:27 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 21:18:27 GMT Message-Id: <200712262118.lBQLIRUR056430@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 131724 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 21:18:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=131724 Change 131724 by jb@jb_freebsd1 on 2007/12/26 21:17:58 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#34 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug/chapter.sgml#9 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#26 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-dev-model.xml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-linux-license.xml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-more-information.xml#1 branch .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-organization.xml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-recent-releases.xml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-release-process.xml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/what-is-freebsd.xml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/freebsd-general/slides.xml#3 integrate .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/Makefile#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-5.3.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-dev-model.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-linux-license.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-organization.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-recent-releases.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-release-process.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/freebsd-users.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/common/what-is-freebsd.xml#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/freebsd-general/Makefile#1 branch .. //depot/projects/dtrace/doc/hu_HU.ISO8859-2/slides/freebsd-general/slides.xml#1 branch .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml#5 integrate .. //depot/projects/dtrace/src/bin/cp/cp.c#9 integrate .. //depot/projects/dtrace/src/sbin/Makefile#10 integrate .. //depot/projects/dtrace/src/sbin/ddb/Makefile#1 branch .. //depot/projects/dtrace/src/sbin/ddb/ddb.8#1 branch .. //depot/projects/dtrace/src/sbin/ddb/ddb.c#1 branch .. //depot/projects/dtrace/src/sbin/ddb/ddb.h#1 branch .. //depot/projects/dtrace/src/sbin/ddb/ddb_script.c#1 branch .. //depot/projects/dtrace/src/sbin/savecore/savecore.8#4 integrate .. //depot/projects/dtrace/src/sbin/savecore/savecore.c#5 integrate .. //depot/projects/dtrace/src/share/man/man4/Makefile#25 integrate .. //depot/projects/dtrace/src/share/man/man4/ddb.4#13 integrate .. //depot/projects/dtrace/src/share/man/man4/textdump.4#1 branch .. //depot/projects/dtrace/src/sys/boot/powerpc/ofw/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/conf/files#60 integrate .. //depot/projects/dtrace/src/sys/ddb/db_capture.c#2 integrate .. //depot/projects/dtrace/src/sys/ddb/db_command.c#12 integrate .. //depot/projects/dtrace/src/sys/ddb/db_command.h#4 integrate .. //depot/projects/dtrace/src/sys/ddb/db_lex.c#4 integrate .. //depot/projects/dtrace/src/sys/ddb/db_lex.h#4 integrate .. //depot/projects/dtrace/src/sys/ddb/db_main.c#6 integrate .. //depot/projects/dtrace/src/sys/ddb/db_script.c#1 branch .. //depot/projects/dtrace/src/sys/ddb/db_textdump.c#1 branch .. //depot/projects/dtrace/src/sys/ddb/ddb.h#7 integrate .. //depot/projects/dtrace/src/sys/dev/usb/ums.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/kern_shutdown.c#12 integrate .. //depot/projects/dtrace/src/sys/net/if_enc.c#10 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_pppoe.c#8 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_pppoe.h#5 integrate .. //depot/projects/dtrace/src/sys/sys/copyright.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/kerneldump.h#5 integrate .. //depot/projects/dtrace/www/en/developers.sgml#24 integrate .. //depot/projects/dtrace/www/share/sgml/news.xml#29 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#34 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -53,14 +53,16 @@ swap device is synonymous with a swap partition. - To be able to extract a usable core, it is required that at - least one swap partition be large enough to hold all of the bits - in physical memory. When a kernel panics, before the system - reboots, the kernel is smart enough to check to see if a swap - device has been configured as a dump device. If there is a - valid dump device, the kernel dumps the contents of what is in - physical memory to the swap device. - + Several types of kernel crash dumps are available: full memory + dumps, which hold the complete contents of physical memory, + minidumps, which hold only memory pages in use by the kernel + (&os;  6.2 and higher), and textdumps, which hold captured + scripted or interactive debugger output (&os; 8.0 and higher). + Minidumps are the default dump type as of &os; 7.0, and in most + cases will capture all necessary information present in a full + memory dump, as most problems can be isolated only using kernel + state. + Configuring the Dump Device @@ -72,7 +74,10 @@ has been configured with &man.swapon.8;. This is normally handled by setting the dumpdev variable in &man.rc.conf.5; to the path of the swap device (the - recommended way to extract a kernel dump). + recommended way to extract a kernel dump) or + AUTO to use the first configured swap + device. AUTO is the default as of + &os; 6.0.Alternatively, the dump device can be hard-coded via the dump clause in the &man.config.5; line of @@ -140,10 +145,6 @@ space for the dump. Also, do not forget to specify the correct path to your swap device as it is likely different than /dev/ad0s1b! - - The recommended, and certainly the easiest way to automate - obtaining crash dumps is to use the dumpdev - variable in &man.rc.conf.5;. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#26 (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.433 2007/11/01 17:24:39 brix Exp $ + $FreeBSD: doc/en_US.ISO8859-1/share/sgml/authors.ent,v 1.434 2007/12/26 18:46:52 raj Exp $ --> aaron@FreeBSD.org"> @@ -824,6 +824,8 @@ rafan@FreeBSD.org"> +raj@FreeBSD.org"> + rees@FreeBSD.org"> reg@FreeBSD.org"> ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-dev-model.xml#4 (text+ko) ==== @@ -1,12 +1,10 @@ - + - - FreeBSD Development Model + FreeBSD Development Model - Overview - FreeBSD development continues along two parallel branches; FreeBSD-CURRENT and FreeBSD-STABLE. @@ -21,16 +19,17 @@ + - - FreeBSD Development Model + FreeBSD Development Model - The Team Thousands of developers around the world contribute @@ -39,29 +38,27 @@ Only the committers have write access to the CVS repository. - 324 total committers in FreeBSD (includes source, + 488 total committers in FreeBSD (includes source, documentation, and ports committers). - 212 active committers to src/ in the last 12 + 203 active committers to src/ (exlucind sys) in the last 12 months. - 165 active committers to src/sys in the last 12 + 144 active committers to src/sys in the last 12 months. - - FreeBSD Development Model + FreeBSD Development Model - Handling Bugs - Users and external developers should submit bug fixes, - enhancements, or problem reports with GNATS. + Users and external developers do not have CVS access, they + can submit bug fixes, enhancements, or problem reports using the + GNATS database. - Online submission forms, send-pr command installed by - default on FreeBSD systems, etc. + Online submission forms, send-pr command + installed by default on FreeBSD systems, etc. - - ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-linux-license.xml#3 (text+ko) ==== @@ -1,9 +1,10 @@ - + Differences from Linux - FreeBSD Licensing Model + + FreeBSD Licensing Model FreeBSD distributed under "2 clause" BSD license @@ -23,19 +24,20 @@ with the distribution. - FreeBSD Licensing Model + + FreeBSD Licensing Model Don't claim that you wrote the code Don't blame us if the code doesn't work Apart from that, do anything you want with the code + - + + The GPL and BSD Licenses - The GPL and BSD Licenses - The GPL mandates that source code be disclosed The BSD License allows source code changes to be kept @@ -50,7 +52,6 @@ Donating changes back is purely at the discretion of the party making the changes. - ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-organization.xml#3 (text+ko) ==== @@ -1,4 +1,4 @@ - + FreeBSD Organization @@ -13,8 +13,25 @@ of 9 developers elected by the committers for 2 year terms. + The FreeBSD Ports Management Team + is responsible for ensuring that the FreeBSD Ports Collection + is stable, up-to-date and full-deatured. Its secondary responsibility + is to coordinate among the committers and developers working on + it. + + The FreeBSD Documentation Engineering Team + is responsible for defining and following up documentation goals for + the committers in the Documentation Project. + The FreeBSD Release Engineering Team is a small group of developers responsible for managing the release process. + + The FreeBSD Security Team is responsible + for keeping the community aware of bugs, exploits and security risks + affecting the FreeBSD src and ports trees, and to promote and + distribute information needed to safely run FreeBSD systems. + Furthermore, it is responsible for resolving software bugs affecting + the security of FreeBSD and issuing security advisories. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-recent-releases.xml#3 (text+ko) ==== @@ -1,24 +1,24 @@ - + + + + Recent Releases -Recent Releases - - FreeBSD 4.X-STABLE continues incremental feature, + FreeBSD 6.X-STABLE continues incremental feature, performance, stability development. - FreeBSD 4.9 (October, 2003) - FreeBSD 4.10 (May, 2004) + FreeBSD 6.1 (May, 2006) + FreeBSD 6.2 (January, 2007) - FreeBSD 5.X-CURRENT continues higher risk development, - approaches -STABLE. + FreeBSD 7.X-STABLE is the newest stable branch with lots of + interesting experimental features. - FreeBSD 5.0 (January, 2003) - FreeBSD 5.1 (June, 2003) - FreeBSD 5.2 (January, 2004) - FreeBSD 5.2.1 (February, 2004) + FreeBSD 7.0 (January, 2008) + + FreeBSD 8.X-CURRENT continues high risk development. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-release-process.xml#3 (text+ko) ==== @@ -1,30 +1,18 @@ - + FreeBSD Release Process - Stable releases are made from the - -STABLE development branch at approximately 4 month - intervals. + -STABLE development branch every 4 months. - Major new versions (3.0, 4.0, 5.0, etc..) are released - at much longer intervals when the main goals for that release - have been realized. - - - 3.0 - October 1998 - 4.0 - March 2000 - 5.0 - January 2003 - + Major new versions (6.0, 7.0, etc.) are released + every 18 months. - - In periods of transition, point releases from the previous branch are still released while the next major release branch stabilizes. (e.g., 4.8, 4.9, and 4.10 were released after 5.0) - ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/what-is-freebsd.xml#3 (text+ko) ==== @@ -1,4 +1,4 @@ - + What is FreeBSD? @@ -16,7 +16,7 @@ Berkeley permits broad commercial re-use in open and closed source products. - i386, ia64, amd64, sparc64, alpha + amd64, i386, ia64, pc98, powerpc, sparc64 ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/freebsd-general/slides.xml#3 (text+ko) ==== @@ -1,6 +1,6 @@ - + - + - + ]> @@ -31,19 +32,27 @@ - MurrayStokelymurray@FreeBSD.org - Thursday, 9 Sep 2004 - 2004 FreeBSD Mall, Inc. + + Murray + Stokely + murray@FreeBSD.org + + Thursday, 3 Jan 2008 + + 2004-2008 + FreeBSD Mall, Inc. + -Outline + + Outline + What is FreeBSD? Who uses FreeBSD? FreeBSD Development Model FreeBSD Release / Branch Terminology Recent FreeBSD Releases - FreeBSD 5.3 @@ -51,7 +60,7 @@ - + &slides.what-is-freebsd; @@ -59,26 +68,12 @@ &slides.freebsd-dev-model; +&slides.freebsd-organization; + &slides.freebsd-release-process; - - &slides.freebsd-recent-releases; - - -&slides.freebsd-organization; - - - -&slides.freebsd-5.3; - -More Information - - - FreeBSD Handbook - FreeBSD Mall, Inc. - - +&slides.freebsd-more-information; ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml#5 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -4494,6 +4494,8 @@ Brüffer Geschreven door + + Remko Lodder ==== //depot/projects/dtrace/src/bin/cp/cp.c#9 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.58 2007/12/25 00:40:32 edwin Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.59 2007/12/26 08:32:20 edwin Exp $"); /* * Cp copies source files to target files. @@ -210,10 +210,9 @@ /* * Case (1). Target is not a directory. */ - if (argc > 1) { - warnx("Target is not a directory"); - exit(1); - } + if (argc > 1) + errx(1, "%s is not a directory", to.p_path); + /* * Need to detect the case: * cp -R dir foo ==== //depot/projects/dtrace/src/sbin/Makefile#10 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.5 (Berkeley) 3/31/94 -# $FreeBSD: src/sbin/Makefile,v 1.168 2007/07/24 15:35:00 scottl Exp $ +# $FreeBSD: src/sbin/Makefile,v 1.169 2007/12/26 09:38:21 rwatson Exp $ .include @@ -15,6 +15,7 @@ clri \ comcontrol \ conscontrol \ + ddb \ ${_devd} \ devfs \ dhclient \ ==== //depot/projects/dtrace/src/sbin/savecore/savecore.8#4 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" From: @(#)savecore.8 8.1 (Berkeley) 6/5/93 -.\" $FreeBSD: src/sbin/savecore/savecore.8,v 1.25 2005/06/14 11:24:56 ru Exp $ +.\" $FreeBSD: src/sbin/savecore/savecore.8,v 1.26 2007/12/26 11:42:10 rwatson Exp $ .\" .Dd February 24, 2005 .Dt SAVECORE 8 @@ -102,6 +102,12 @@ .Ar directory Ns Pa /vmcore.# and information about the core in .Ar directory Ns Pa /info.# +For kernel textdumps generated with the +.Xr textdump 4 +facility, output will be stored in the +.Xr tar 5 +format and named +.Ar director Ns Pa /textdump.tar.# The ``#'' is the number from the first line of the file .Ar directory Ns Pa /bounds , and it is incremented and stored back into the file each time @@ -137,6 +143,8 @@ .Sh SEE ALSO .Xr gzip 1 , .Xr getbootfile 3 , +.Xr textdump 4 , +.Xr tar 4 , .Xr dumpon 8 , .Xr syslogd 8 .Sh HISTORY @@ -144,5 +152,8 @@ .Nm utility appeared in .Bx 4.1 . +.Pp +Support for kernel textdumps appeared in +.Fx 8.0 . .Sh BUGS The minfree code does not consider the effect of compression or sparse files. ==== //depot/projects/dtrace/src/sbin/savecore/savecore.c#5 (text+ko) ==== @@ -65,7 +65,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/savecore/savecore.c,v 1.78 2007/05/28 09:48:25 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sbin/savecore/savecore.c,v 1.79 2007/12/26 11:42:10 rwatson Exp $"); #include #include @@ -226,21 +226,155 @@ #define BLOCKSIZE (1<<12) #define BLOCKMASK (~(BLOCKSIZE-1)) +static int +DoRegularFile(int fd, off_t dumpsize, char *buf, const char *device, + const char *filename, FILE *fp) +{ + int he, hs, nr, nw, wl; + off_t dmpcnt; + + dmpcnt = 0; + he = 0; + while (dumpsize > 0) { + wl = BUFFERSIZE; + if (wl > dumpsize) + wl = dumpsize; + nr = read(fd, buf, wl); + if (nr != wl) { + if (nr == 0) + syslog(LOG_WARNING, + "WARNING: EOF on dump device"); + else + syslog(LOG_ERR, "read error on %s: %m", device); + nerr++; + return (-1); + } + if (compress) { + nw = fwrite(buf, 1, wl, fp); + } else { + for (nw = 0; nw < nr; nw = he) { + /* find a contiguous block of zeroes */ + for (hs = nw; hs < nr; hs += BLOCKSIZE) { + for (he = hs; he < nr && buf[he] == 0; + ++he) + /* nothing */ ; + /* is the hole long enough to matter? */ + if (he >= hs + BLOCKSIZE) + break; + } + + /* back down to a block boundary */ + he &= BLOCKMASK; + + /* + * 1) Don't go beyond the end of the buffer. + * 2) If the end of the buffer is less than + * BLOCKSIZE bytes away, we're at the end + * of the file, so just grab what's left. + */ + if (hs + BLOCKSIZE > nr) + hs = he = nr; + + /* + * At this point, we have a partial ordering: + * nw <= hs <= he <= nr + * If hs > nw, buf[nw..hs] contains non-zero data. + * If he > hs, buf[hs..he] is all zeroes. + */ + if (hs > nw) + if (fwrite(buf + nw, hs - nw, 1, fp) + != 1) + break; + if (he > hs) + if (fseeko(fp, he - hs, SEEK_CUR) == -1) + break; + } + } + if (nw != wl) { + syslog(LOG_ERR, + "write error on %s file: %m", filename); + syslog(LOG_WARNING, + "WARNING: vmcore may be incomplete"); + nerr++; + return (-1); + } + if (verbose) { + dmpcnt += wl; + printf("%llu\r", (unsigned long long)dmpcnt); + fflush(stdout); + } + dumpsize -= wl; + } + return (0); +} + +/* + * Specialized version of dump-reading logic for use with textdumps, which + * are written backwards from the end of the partition, and must be reversed + * before being written to the file. Textdumps are small, so do a bit less + * work to optimize/sparsify. + */ +static int +DoTextdumpFile(int fd, off_t dumpsize, off_t lasthd, char *buf, + const char *device, const char *filename, FILE *fp) +{ + int nr, nw, wl; + off_t dmpcnt, totsize; + + totsize = dumpsize; + dmpcnt = 0; + wl = 512; + if ((dumpsize % wl) != 0) { + syslog(LOG_ERR, "textdump uneven multiple of 512 on %s", + device); + nerr++; + return (-1); + } + while (dumpsize > 0) { + nr = pread(fd, buf, wl, lasthd - (totsize - dumpsize) - wl); + if (nr != wl) { + if (nr == 0) + syslog(LOG_WARNING, + "WARNING: EOF on dump device"); + else + syslog(LOG_ERR, "read error on %s: %m", device); + nerr++; + return (-1); + } + nw = fwrite(buf, 1, wl, fp); + if (nw != wl) { + syslog(LOG_ERR, + "write error on %s file: %m", filename); + syslog(LOG_WARNING, + "WARNING: textdump may be incomplete"); + nerr++; + return (-1); + } + if (verbose) { + dmpcnt += wl; + printf("%llu\r", (unsigned long long)dmpcnt); + fflush(stdout); + } + dumpsize -= wl; + } + return (0); +} + static void DoFile(const char *savedir, const char *device) { + static char filename[PATH_MAX]; static char *buf = NULL; struct kerneldumpheader kdhf, kdhl; - off_t mediasize, dumpsize, firsthd, lasthd, dmpcnt; + off_t mediasize, dumpsize, firsthd, lasthd; FILE *info, *fp; mode_t oumask; - int fd, fdinfo, error, wl; - int nr, nw, hs, he = 0; + int fd, fdinfo, error; int bounds, status; u_int sectorsize; + int istextdump; bounds = getbounds(); - dmpcnt = 0; mediasize = 0; status = STATUS_UNKNOWN; @@ -284,7 +418,13 @@ (long long)lasthd, device); goto closefd; } - if (memcmp(kdhl.magic, KERNELDUMPMAGIC, sizeof kdhl.magic)) { + istextdump = 0; + if (memcmp(kdhl.magic, TEXTDUMPMAGIC, sizeof kdhl.magic)) { + if (verbose) + printf("textdump magic on last dump header on %s\n", + device); + istextdump = 1; + } else if (memcmp(kdhl.magic, KERNELDUMPMAGIC, sizeof kdhl.magic)) { if (verbose) printf("magic mismatch on last dump header on %s\n", device); @@ -391,14 +531,16 @@ } oumask = umask(S_IRWXG|S_IRWXO); /* Restrict access to the core file.*/ if (compress) { - sprintf(buf, "vmcore.%d.gz", bounds); - fp = zopen(buf, "w"); + sprintf(filename, "%s.%d.gz", istextdump ? "textdump.tar" : + "vmcore", bounds); + fp = zopen(filename, "w"); } else { - sprintf(buf, "vmcore.%d", bounds); - fp = fopen(buf, "w"); + sprintf(filename, "%s.%d", istextdump ? "textdump.tar" : + "vmcore", bounds); + fp = fopen(filename, "w"); } if (fp == NULL) { - syslog(LOG_ERR, "%s: %m", buf); + syslog(LOG_ERR, "%s: %m", filename); close(fdinfo); nerr++; goto closefd; @@ -420,83 +562,22 @@ fclose(info); syslog(LOG_NOTICE, "writing %score to %s", - compress ? "compressed " : "", buf); + compress ? "compressed " : "", filename); - while (dumpsize > 0) { - wl = BUFFERSIZE; - if (wl > dumpsize) - wl = dumpsize; - nr = read(fd, buf, wl); - if (nr != wl) { - if (nr == 0) - syslog(LOG_WARNING, - "WARNING: EOF on dump device"); - else - syslog(LOG_ERR, "read error on %s: %m", device); - nerr++; + if (istextdump) { + if (DoTextdumpFile(fd, dumpsize, lasthd, buf, device, + filename, fp) < 0) goto closeall; - } - if (compress) { - nw = fwrite(buf, 1, wl, fp); - } else { - for (nw = 0; nw < nr; nw = he) { - /* find a contiguous block of zeroes */ - for (hs = nw; hs < nr; hs += BLOCKSIZE) { - for (he = hs; he < nr && buf[he] == 0; - ++he) - /* nothing */ ; - /* is the hole long enough to matter? */ - if (he >= hs + BLOCKSIZE) - break; - } - - /* back down to a block boundary */ - he &= BLOCKMASK; - - /* - * 1) Don't go beyond the end of the buffer. - * 2) If the end of the buffer is less than - * BLOCKSIZE bytes away, we're at the end - * of the file, so just grab what's left. - */ - if (hs + BLOCKSIZE > nr) - hs = he = nr; - - /* - * At this point, we have a partial ordering: - * nw <= hs <= he <= nr - * If hs > nw, buf[nw..hs] contains non-zero data. - * If he > hs, buf[hs..he] is all zeroes. - */ - if (hs > nw) - if (fwrite(buf + nw, hs - nw, 1, fp) - != 1) - break; - if (he > hs) - if (fseeko(fp, he - hs, SEEK_CUR) == -1) - break; - } - } - if (nw != wl) { - syslog(LOG_ERR, - "write error on vmcore.%d file: %m", bounds); - syslog(LOG_WARNING, - "WARNING: vmcore may be incomplete"); - nerr++; + } else { + if (DoRegularFile(fd, dumpsize, buf, device, filename, fp) + < 0) goto closeall; - } - if (verbose) { - dmpcnt += wl; - printf("%llu\r", (unsigned long long)dmpcnt); - fflush(stdout); - } - dumpsize -= wl; } if (verbose) printf("\n"); if (fclose(fp) < 0) { - syslog(LOG_ERR, "error on vmcore.%d: %m", bounds); + syslog(LOG_ERR, "error on %s: %m", filename); nerr++; goto closeall; } ==== //depot/projects/dtrace/src/share/man/man4/Makefile#25 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/18/93 -# $FreeBSD: src/share/man/man4/Makefile,v 1.400 2007/12/15 00:56:15 scottl Exp $ +# $FreeBSD: src/share/man/man4/Makefile,v 1.401 2007/12/26 11:35:06 rwatson Exp $ MAN= aac.4 \ acpi.4 \ @@ -355,6 +355,7 @@ tcp.4 \ tdfx.4 \ termios.4 \ + textdump.4 \ ti.4 \ tl.4 \ trm.4 \ ==== //depot/projects/dtrace/src/share/man/man4/ddb.4#13 (text+ko) ==== @@ -1,6 +1,7 @@ .\" .\" Mach Operating System .\" Copyright (c) 1991,1990 Carnegie Mellon University +.\" Copyright (c) 2007 Robert N. M. Watson .\" All Rights Reserved. .\" .\" Permission to use, copy, modify and distribute this software and its @@ -57,9 +58,9 @@ .\" Created. .\" [90/08/30 dbg] .\" -.\" $FreeBSD: src/share/man/man4/ddb.4,v 1.43 2007/12/25 23:25:04 rwatson Exp $ +.\" $FreeBSD: src/share/man/man4/ddb.4,v 1.47 2007/12/26 12:18:21 rwatson Exp $ .\" -.Dd December 25, 2007 +.Dd December 26, 2007 .Dt DDB 4 .Os .Sh NAME @@ -626,6 +627,41 @@ .Dv debug.ddb.capture.bytes may be used to query the number of bytes of output currently in the capture buffer. +.Pp +.Dv debug.ddb.capture.data +returns the contents of the buffer as a string to an appropriately privileged +process. +.Pp +This facility is particularly useful in concert with the scripting and +.Xr textdump 4 +facilities, allowing scripted debugging output to be captured and +committed to disk as part of a textdump for later analysis. +The contents of the capture buffer may also be inspected in a kernel core dump +using +.Xr kgdb 1 . +.Pp +.It Ic run +.It Ic script +.It Ic scripts +.It Ic unscript +Run, define, list, and delete scripts. +See the +.Sx SCRIPTING +section for more information on the scripting facility. +.Pp +.It Ic textdump set +.It Ic textdump status +.It Ic textdump unset +The +.Ic textdump set +command may be used to force the next kernel core dump to be a textdump +rather than a traditional memory dump or minidump. +.Ic textdump status +reports whether a textdump has been scheduled. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Dec 26 21:32:44 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 399E716A41A; Wed, 26 Dec 2007 21:32:44 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E08CC16A418 for ; Wed, 26 Dec 2007 21:32:43 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D626D13C44B for ; Wed, 26 Dec 2007 21:32:43 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQLWh8B062489 for ; Wed, 26 Dec 2007 21:32:43 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQLWhkR062485 for perforce@freebsd.org; Wed, 26 Dec 2007 21:32:43 GMT (envelope-from marcel@freebsd.org) Date: Wed, 26 Dec 2007 21:32:43 GMT Message-Id: <200712262132.lBQLWhkR062485@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 131726 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 21:32:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=131726 Change 131726 by marcel@marcel_cluster on 2007/12/26 21:32:20 Move the vm_pmap field to the end of struct vmspace. This allows for a single version of userspace (and in particular libkvm) even though different variants of the CPU within a platform/architecture require variations in struct pmap. The MI fields of struct vmspace do not end up at different offsets when struct pmap varies in size. Affected files ... .. //depot/projects/e500/sys/vm/vm_map.h#4 edit Differences ... ==== //depot/projects/e500/sys/vm/vm_map.h#4 (text+ko) ==== @@ -233,7 +233,6 @@ */ struct vmspace { struct vm_map vm_map; /* VM address map */ - struct pmap vm_pmap; /* private physical map */ struct shmmap_state *vm_shm; /* SYS5 shared memory private data XXX */ segsz_t vm_swrss; /* resident set size before last swap */ segsz_t vm_tsize; /* text size (pages) XXX */ @@ -243,6 +242,12 @@ caddr_t vm_daddr; /* (c) user virtual address of data */ caddr_t vm_maxsaddr; /* user VA at max stack growth */ int vm_refcnt; /* number of references */ + /* + * Keep the PMAP last, so that per-CPU variations within a + * single architecture can be handled by the same toolchain + * without having to worry about the MI fields. + */ + struct pmap vm_pmap; /* private physical map */ }; #ifdef _KERNEL From owner-p4-projects@FreeBSD.ORG Wed Dec 26 22:06:20 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2160A16A41A; Wed, 26 Dec 2007 22:06:20 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C221116A417 for ; Wed, 26 Dec 2007 22:06:19 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B799313C448 for ; Wed, 26 Dec 2007 22:06:19 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQM6JZ3078121 for ; Wed, 26 Dec 2007 22:06:19 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQM6JgR078117 for perforce@freebsd.org; Wed, 26 Dec 2007 22:06:19 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 22:06:19 GMT Message-Id: <200712262206.lBQM6JgR078117@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 131730 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 22:06:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=131730 Change 131730 by jb@jb_freebsd1 on 2007/12/26 22:05:36 Use mp_maxid instead of MAXCPU. Enable firing the cyclics now with a check that the cyclic has actually initialised (cpu_cyclic != NULL). Affected files ... .. //depot/projects/dtrace/src/sys/cddl/kern/kern_cyclic.c#7 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/kern/kern_cyclic.c#7 (text+ko) ==== @@ -43,8 +43,10 @@ * that the asserts work. On FreeBSD, if a CPU exists, it is * enabled. */ - for (i = 0; i < MAXCPU; i++) + for (i = 0; i <= mp_maxid; i++) { + cyclic_cpu[i].cpuid = i; cyclic_cpu[i].cpu_flags &= CPU_ENABLE; + } /* Initialise the machine-dependent backend. */ cyclic_machdep_init(); @@ -78,14 +80,14 @@ { cpu_t *c = &cyclic_cpu[curcpu]; - c->cpu_intr_actv |= (1 << CY_HIGH_LEVEL); + if (c->cpu_cyclic != NULL) { + c->cpu_intr_actv |= (1 << CY_HIGH_LEVEL); -#ifdef DOODAD - /* Fire any timers that are due. */ - cyclic_fire(c); -#endif + /* Fire any timers that are due. */ + cyclic_fire(c); - c->cpu_intr_actv &= ~(1 << CY_HIGH_LEVEL); + c->cpu_intr_actv &= ~(1 << CY_HIGH_LEVEL); + } } /* ARGSUSED */ From owner-p4-projects@FreeBSD.ORG Wed Dec 26 22:10:24 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C8BCB16A468; Wed, 26 Dec 2007 22:10:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8D75D16A41B for ; Wed, 26 Dec 2007 22:10:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 82C3C13C455 for ; Wed, 26 Dec 2007 22:10:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQMAOSD078684 for ; Wed, 26 Dec 2007 22:10:24 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQMAOvv078681 for perforce@freebsd.org; Wed, 26 Dec 2007 22:10:24 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 22:10:24 GMT Message-Id: <200712262210.lBQMAOvv078681@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 131732 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 22:10:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131732 Change 131732 by jb@jb_freebsd1 on 2007/12/26 22:09:42 Use SMP_MAXCPU here rather than mp_maxid because this code can execute before the APs are enabled. We really just need the global array initialised and this can be done regardless of whether or not all the possible CPUs are eventually put online. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/kern/kern_cyclic.c#8 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/kern/kern_cyclic.c#8 (text+ko) ==== @@ -43,7 +43,7 @@ * that the asserts work. On FreeBSD, if a CPU exists, it is * enabled. */ - for (i = 0; i <= mp_maxid; i++) { + for (i = 0; i < SMP_MAXCPU; i++) { cyclic_cpu[i].cpuid = i; cyclic_cpu[i].cpu_flags &= CPU_ENABLE; } From owner-p4-projects@FreeBSD.ORG Wed Dec 26 22:11:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0FA4216A41A; Wed, 26 Dec 2007 22:11:26 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C9CC216A418 for ; Wed, 26 Dec 2007 22:11:25 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BF22513C448 for ; Wed, 26 Dec 2007 22:11:25 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQMBPpf079059 for ; Wed, 26 Dec 2007 22:11:25 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQMBPBw079056 for perforce@freebsd.org; Wed, 26 Dec 2007 22:11:25 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 22:11:25 GMT Message-Id: <200712262211.lBQMBPBw079056@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 131733 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 22:11:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131733 Change 131733 by jb@jb_freebsd1 on 2007/12/26 22:11:04 Add a cpuid field (which is the index into the array) just for convenience given that the cyclic device code passes around a cpu_t * which is a pointer to an entry in the array. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/cyclic.h#7 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/cyclic.h#7 (text) ==== @@ -44,6 +44,7 @@ #undef cpu_t #define cpu_t cyclic_cpu_t typedef struct { + int cpuid; struct cyc_cpu *cpu_cyclic; uint32_t cpu_flags; uint_t cpu_intr_actv; From owner-p4-projects@FreeBSD.ORG Wed Dec 26 23:07:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 81FF116A419; Wed, 26 Dec 2007 23:07:26 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 23EDA16A41A for ; Wed, 26 Dec 2007 23:07:26 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 140C213C45D for ; Wed, 26 Dec 2007 23:07:26 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQN7PbG003882 for ; Wed, 26 Dec 2007 23:07:25 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQN7Phb003879 for perforce@freebsd.org; Wed, 26 Dec 2007 23:07:25 GMT (envelope-from gcooper@FreeBSD.org) Date: Wed, 26 Dec 2007 23:07:25 GMT Message-Id: <200712262307.lBQN7Phb003879@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131738 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 23:07:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131738 Change 131738 by gcooper@shiina-ibook on 2007/12/26 23:06:50 Adding more files for improving partitioning and organization of the project. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_check.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_clean.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_delete.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_info.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_show.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_sign.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_update.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_version.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkgman.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Dec 26 23:08:27 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9CB8316A41B; Wed, 26 Dec 2007 23:08:27 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 61AE416A419 for ; Wed, 26 Dec 2007 23:08:27 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5473413C4E8 for ; Wed, 26 Dec 2007 23:08:27 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQN8R2s003956 for ; Wed, 26 Dec 2007 23:08:27 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQN8Rxb003945 for perforce@freebsd.org; Wed, 26 Dec 2007 23:08:27 GMT (envelope-from gcooper@FreeBSD.org) Date: Wed, 26 Dec 2007 23:08:27 GMT Message-Id: <200712262308.lBQN8Rxb003945@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131739 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 23:08:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131739 Change 131739 by gcooper@shiina-ibook on 2007/12/26 23:08:20 - Major efforts shown are part of code re-org. - Add stubs for clean command. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#2 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#2 (text+ko) ==== @@ -1,108 +1,202 @@ -#include -#include -#include -#include +#include "pkgman.h" +#include "pkgman_action.h" +#include "pkgman_arg_parser.h" + +pkg_action init_action(int, freebsd_pkg_q_item); -enum commands { - add, - check, - create, - delete, - info, - null, - search, - sign, - update, - version -}; +int +main(int argc, char **argv) +{ -#define ADD "add" -#define CHECK "check" -#define CREATE "create" -#define DELETE "delete" -#define INFO "info" -#define SEARCH "search" -#define SIGN "sign" -#define UPDATE "update" -#define VERSION "version" + char *cmd_str; + char **optional_opt_str_p; -typedef struct pkg_action; + uint64 global_flags = 0; -pkg_action init_action(int); + pkg_action_arg_parser parsers[COMMAND_LENGTH-1]; -int -main(int argc, char **argv) -{ + STAILQ_HEAD(fpkg_actions_stailq, freebsd_pkg_action) fpkg_actions_queue_head = + SLIST_HEAD_INITIALIZER(fpkg_actions_queue_head); - char *action_str; + struct fpkg_actions_stailq *fpkg_actions_queue_headp; - pkg_action action = init_action(null); + cmd_str = strdup(*(argv+1)); - command = strdup(*(argv+1)); + optional_opt_str_p = (char**) malloc(sizeof(char*)+1); if (0 == strcmp(cmd_str, ADD)) { - action = init_action(add); + action_type = add; + } else if (0 == strcmp(cmd_str, CLEAN)) { + action_type = clean; } else if (0 == strcmp(cmd_str, CHECK)) { - action = init_action(check); + action_type = check; } else if (0 == strcmp(cmd_str, CREATE)) { - action = init_action(create); + action_type = create; } else if (0 == strcmp(cmd_str, DELETE)) { - action = init_action(delete); + action_type = delete; } else if (0 == strcmp(cmd_str, INFO)) { - action = init_action(info); + action_type = info; } else if (0 == strcmp(cmd_str, SEARCH)) { - action = init_action(search); + action_type = search; } else if (0 == strcmp(cmd_str, SIGN)) { - action = init_action(sign); + action_type = sign; } else if (0 == strcmp(cmd_str, UPDATE)) { - action = init_action(update); + action_type = update; } else if (0 == strcmp(cmd_str, VERSION)) { - action = init_action(version); + action_type = version; + } else { + action_type = NULL; } /** Skip over command string.. **/ - optind++; + optind = OPTION_OFFSET; + + char opt_char; + + int old_optidx; + int optional_opts_idx; + int i; + + /** Preset the initial counter variables to 0. **/ + old_optidx = optional_opts_idx = 0; + + /** Don't error out on unknown / non-globally applied flags, yet.. **/ + opterr = 0; /** Parse in global arguments **/ + while ( (opt_char = getopt(argc, argv, GLOBAL_OPT_STRING)) != -1 ) { + + switch (opt_char) { + /** Force **/ + case 'f': + global_settings->opts |= FORCE_FLAG; + break; + /** Interactive **/ + case 'i': + global_settings->opts |= INTERACTIVE_FLAG; + break; + /** No-exec command **/ + case 'o': + if (optarg != NULL && strlen(optarg)) { + char *tmp_pkg_origin; + strdup(tmp_pkg_origin, optarg); + /* + * @todo: Add tmp_pkg_origin to STAILQ here + * with origin names.. + * + * Does this get freed with pkg_freebsd_pkg_new + * (or whatever the constructor was..)? + */ + } + break; + /** Prefix **/ + case 'p': + if (optarg != NULL && strlen(optarg)) { + strdup(global_settings->prefix_path_str, optarg); + } + break; + /** Quiet **/ + case 'q': + if (global_settings->opts & VERBOSE_FLAG) { + errx(QV_ERR_MSG); + } + global_settings->opts |= QUIET_FLAG; + break; + /** Recursive **/ + case 'r': + global_settings->opts |= RECURSIVE_FLAG; + break; + /** Verbose **/ + case 'v': + if (global_settings->opts & QUIET_FLAG) { + errx(QV_ERR_MSG); + } + global_settings->opts |= VERBOSE_FLAG; + break; + } + + /* + * Copy down all char* pointers to optional_opt_str_p to parse + * later on [in pkg_action_arg_parser->parse_args(..)].. + */ + for (i = old_optidx; i < optidx; i++) { + (optional_opt_str_p+optional_opts_idx) = (argv+i); + optional_opts_idx++; + } + old_optidx = optidx; + + } /** End global args parse **/ - /** Parse command specific args **/ - if (action->parse_args() != 0) { - action->print_use(); - exit(1); + /* + * Parse command specific args, once and once only.. + * See pkg_action_parsers for more details. + */ + for (i = 1; i <= version; i++) { + + /* + * If arguments usage was invalid, print usage message for specific command + * and exit.. + */ + if (0 < parsers[action_type]->parse_args(optional_opts_idx+1, optional_opt_str_p)) { + action->print_use(); + exit(1); + } + } - if (action->perform() != 0) - warnx("Error encountered when processing command: %s\n", cmd_str); + /* + * Result for the given action(s) to be performed. + */ + int action_result; + + /** Foreach action / pkg, repeat necessary set of steps to reach required conclusion... **/ + + /** Perform the action **/ + if ( (action_result = action->perform()) != 0 ) { + warnx("Error encountered when processing command: %s\n", cmd_str); +// break; + } + + /** End foreach **/ - return 0; + return action_result; } +/** + * @brief Initialize the appropriate action as per the action_type provided. + * @return Object for respective constructor. + * @return NULL on bad action_type. + */ pkg_action -init_action(int action_type) +init_action(int action_type, freebsd_pkg *fpkg) { switch (action_type) { case add: - return pkg_action_add_new(); + return pkg_action_add_new(fpkg); + case clean: + return pkg_action_clean_new(fpkg); case check: - return pkg_action_check_new(); + return pkg_action_check_new(fpkg); + case create: + return pkg_action_create_new(fpkg); case delete: - return pkg_action_delete_new(); + return pkg_action_delete_new(fpkg); case info: - return pkg_action_info_new(); + return pkg_action_info_new(fpkg); case null: - return pkg_action_null_new(); + return pkg_action_new(fpkg); case search: - return pkg_action_search_new(); + return pkg_action_search_new(fpkg); case sign: - return pkg_action_sign_new(); + return pkg_action_sign_new(fpkg); case update: - return pkg_action_update_new(); + return pkg_action_update_new(fpkg); case version: - return pkg_action_version_new(); + return pkg_action_version_new(fpkg); } From owner-p4-projects@FreeBSD.ORG Wed Dec 26 23:43:05 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C36C16A468; Wed, 26 Dec 2007 23:43:05 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ABB6D16A420 for ; Wed, 26 Dec 2007 23:43:04 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A066613C468 for ; Wed, 26 Dec 2007 23:43:04 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBQNh4t8016286 for ; Wed, 26 Dec 2007 23:43:04 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBQNh41b016283 for perforce@freebsd.org; Wed, 26 Dec 2007 23:43:04 GMT (envelope-from jb@freebsd.org) Date: Wed, 26 Dec 2007 23:43:04 GMT Message-Id: <200712262343.lBQNh41b016283@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 131741 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Dec 2007 23:43:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=131741 Change 131741 by jb@jb_freebsd1 on 2007/12/26 23:42:52 Add support to rendezvous calls to specific CPUs. Sun uses an xcall facility in OpenSolaris. This is our equivalent. Affected files ... .. //depot/projects/dtrace/src/sys/kern/subr_smp.c#7 edit .. //depot/projects/dtrace/src/sys/sys/smp.h#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/subr_smp.c#7 (text+ko) ==== @@ -104,6 +104,7 @@ "Forwarding of roundrobin to all other CPUs"); /* Variables needed for SMP rendezvous. */ +static volatile cpumask_t smp_rv_cpumask; static void (*volatile smp_rv_setup_func)(void *arg); static void (*volatile smp_rv_action_func)(void *arg); static void (* volatile smp_rv_teardown_func)(void *arg); @@ -305,14 +306,20 @@ void smp_rendezvous_action(void) { + cpumask_t map = smp_rv_cpumask; + int i, ncpus = 0; void* local_func_arg = smp_rv_func_arg; void (*local_setup_func)(void*) = smp_rv_setup_func; void (*local_action_func)(void*) = smp_rv_action_func; void (*local_teardown_func)(void*) = smp_rv_teardown_func; + + for (i = 0; i < MAXCPU; i++) + if (((1 << i) & map) != 0 && pcpu_find(i) != NULL) + ncpus++; /* Ensure we have up-to-date values. */ atomic_add_acq_int(&smp_rv_waiters[0], 1); - while (smp_rv_waiters[0] < mp_ncpus) + while (smp_rv_waiters[0] < ncpus) cpu_spinwait(); /* setup function */ @@ -321,7 +328,7 @@ smp_rv_setup_func(smp_rv_func_arg); /* spin on entry rendezvous */ atomic_add_int(&smp_rv_waiters[1], 1); - while (smp_rv_waiters[1] < mp_ncpus) + while (smp_rv_waiters[1] < ncpus) cpu_spinwait(); } @@ -335,7 +342,7 @@ atomic_add_int(&smp_rv_waiters[2], 1); if (local_teardown_func == smp_no_rendevous_barrier) return; - while (smp_rv_waiters[2] < mp_ncpus) + while (smp_rv_waiters[2] < ncpus) cpu_spinwait(); /* teardown function */ if (local_teardown_func != NULL) @@ -343,11 +350,13 @@ } void -smp_rendezvous(void (* setup_func)(void *), - void (* action_func)(void *), - void (* teardown_func)(void *), - void *arg) +smp_rendezvous_cpus(cpumask_t map, + void (* setup_func)(void *), + void (* action_func)(void *), + void (* teardown_func)(void *), + void *arg) { + int i, ncpus = 0; if (!smp_started) { if (setup_func != NULL) @@ -358,11 +367,16 @@ teardown_func(arg); return; } + + for (i = 0; i < MAXCPU; i++) + if (((1 << i) & map) != 0 && pcpu_find(i) != NULL) + ncpus++; /* obtain rendezvous lock */ mtx_lock_spin(&smp_ipi_mtx); /* set static function pointers */ + smp_rv_cpumask = map & ~(1 << curcpu); smp_rv_setup_func = setup_func; smp_rv_action_func = action_func; smp_rv_teardown_func = teardown_func; @@ -371,21 +385,30 @@ smp_rv_waiters[2] = 0; atomic_store_rel_int(&smp_rv_waiters[0], 0); - - /* signal other processors, which will enter the IPI with interrupts off */ - ipi_all_but_self(IPI_RENDEZVOUS); + ipi_selected(map, IPI_RENDEZVOUS); - /* call executor function */ - smp_rendezvous_action(); + /* Check if the current CPU is in the map */ + if ((map & (1 << curcpu)) != 0) + /* call executor function for the current CPU */ + smp_rendezvous_action(); if (teardown_func == smp_no_rendevous_barrier) { - while (atomic_load_acq_int(&smp_rv_waiters[2]) < mp_ncpus) + while (atomic_load_acq_int(&smp_rv_waiters[2]) < ncpus) cpu_spinwait(); } /* release lock */ mtx_unlock_spin(&smp_ipi_mtx); } + +void +smp_rendezvous(void (* setup_func)(void *), + void (* action_func)(void *), + void (* teardown_func)(void *), + void *arg) +{ + smp_rendezvous_cpus(all_cpus, setup_func, action_func, teardown_func, arg); +} #else /* !SMP */ /* @@ -404,6 +427,21 @@ mp_setvariables_for_up, NULL) void +smp_rendezvous_cpus(cpumask_t map, + void (* setup_func)(void *), + void (* action_func)(void *), + void (* teardown_func)(void *), + void *arg) +{ + if (setup_func != NULL) + setup_func(arg); + if (action_func != NULL) + action_func(arg); + if (teardown_func != NULL) + teardown_func(arg); +} + +void smp_rendezvous(void (* setup_func)(void *), void (* action_func)(void *), void (* teardown_func)(void *), ==== //depot/projects/dtrace/src/sys/sys/smp.h#5 (text+ko) ==== @@ -108,6 +108,11 @@ void (*)(void *), void (*)(void *), void *arg); +void smp_rendezvous_cpus(cpumask_t, + void (*)(void *), + void (*)(void *), + void (*)(void *), + void *arg); #endif /* !LOCORE */ #endif /* _KERNEL */ #endif /* _SYS_SMP_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Dec 27 00:09:32 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C7BB16A41B; Thu, 27 Dec 2007 00:09:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1288116A41A for ; Thu, 27 Dec 2007 00:09:32 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0606013C4DB for ; Thu, 27 Dec 2007 00:09:32 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR09VE4027517 for ; Thu, 27 Dec 2007 00:09:31 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR09Veb027514 for perforce@freebsd.org; Thu, 27 Dec 2007 00:09:31 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 00:09:31 GMT Message-Id: <200712270009.lBR09Veb027514@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 131742 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 00:09:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=131742 Change 131742 by peter@peter_overcee on 2007/12/27 00:09:30 Tidy up some loose ends with libnames. Avoid conflicting with the libraries of the ports version of svn. Affected files ... .. //depot/projects/hammer/share/mk/bsd.libnames.mk#37 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_client/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_delta/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_diff/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs_fs/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_dav/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_local/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_svn/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_repos/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_subr/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_wc/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svn/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#2 edit .. //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#2 edit Differences ... ==== //depot/projects/hammer/share/mk/bsd.libnames.mk#37 (text+ko) ==== @@ -150,3 +150,26 @@ LIBZ?= ${DESTDIR}${LIBDIR}/libz.a LIBZFS?= ${DESTDIR}${LIBDIR}/libzfs.a LIBZPOOL?= ${DESTDIR}${LIBDIR}/libzpool.a + +LIBBSDAPR?= ${DESTDIR}${LIBDIR}/libbsdapr.a +LIBBSDAPR-UTIL?= ${DESTDIR}${LIBDIR}/libbsdapr-util.a +LIBBSDDAV?= ${DESTDIR}${LIBDIR}/libbsddav.a + +LIBBSDSVN_CLIENT?= ${DESTDIR}${LIBDIR}/libbsdsvn_client.a +LIBBSDSVN_DELTA?= ${DESTDIR}${LIBDIR}/libbsdsvn_delta.a +LIBBSDSVN_DIFF?= ${DESTDIR}${LIBDIR}/libbsdsvn_diff.a +LIBBSDSVN_FS?= ${DESTDIR}${LIBDIR}/libbsdsvn_fs.a +LIBBSDSVN_FS_FS?= ${DESTDIR}${LIBDIR}/libbsdsvn_fs_fs.a +LIBBSDSVN_RA?= ${DESTDIR}${LIBDIR}/libbsdsvn_ra.a +LIBBSDSVN_CLIENT?= ${DESTDIR}${LIBDIR}/libbsdsvn_client.a +LIBBSDSVN_DELTA?= ${DESTDIR}${LIBDIR}/libbsdsvn_delta.a +LIBBSDSVN_DIFF?= ${DESTDIR}${LIBDIR}/libbsdsvn_diff.a +LIBBSDSVN_FS?= ${DESTDIR}${LIBDIR}/libbsdsvn_fs.a +LIBBSDSVN_FS_FS?= ${DESTDIR}${LIBDIR}/libbsdsvn_fs_fs.a +LIBBSDSVN_RA?= ${DESTDIR}${LIBDIR}/libbsdsvn_ra.a +LIBBSDSVN_RA_DAV?= ${DESTDIR}${LIBDIR}/libbsdsvn_ra_dav.a +LIBBSDSVN_RA_LOCAL?= ${DESTDIR}${LIBDIR}/libbsdsvn_ra_local.a +LIBBSDSVN_RA_SVN?= ${DESTDIR}${LIBDIR}/libbsdsvn_ra_svn.a +LIBBSDSVN_REPOS?= ${DESTDIR}${LIBDIR}/libbsdsvn_repos.a +LIBBSDSVN_SUBR?= ${DESTDIR}${LIBDIR}/libbsdsvn_subr.a +LIBBSDSVN_WC?= ${DESTDIR}${LIBDIR}/libbsdsvn_wc.a ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_client/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_client -LIB= svn_client +LIB= bsdsvn_client SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_delta/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_delta -LIB= svn_delta +LIB= bsdsvn_delta SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_diff/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_diff -LIB= svn_diff +LIB= bsdsvn_diff SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_fs -LIB= svn_fs +LIB= bsdsvn_fs SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs_fs/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_fs_fs -LIB= svn_fs_fs +LIB= bsdsvn_fs_fs SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_ra -LIB= svn_ra +LIB= bsdsvn_ra SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_dav/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_ra_dav -LIB= svn_ra_dav +LIB= bsdsvn_ra_dav SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_local/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_ra_local -LIB= svn_ra_local +LIB= bsdsvn_ra_local SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_svn/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_ra_svn -LIB= svn_ra_svn +LIB= bsdsvn_ra_svn SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_repos/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_repos -LIB= svn_repos +LIB= bsdsvn_repos SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_subr/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_subr -LIB= svn_subr +LIB= bsdsvn_subr SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_wc/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/libsvn_wc -LIB= svn_wc +LIB= bsdsvn_wc SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ ==== //depot/projects/hammer/usr.bin/svn/svn/Makefile#2 (text+ko) ==== @@ -18,12 +18,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt ==== //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#2 (text+ko) ==== @@ -12,12 +12,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt ==== //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#2 (text+ko) ==== @@ -12,12 +12,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt ==== //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#2 (text+ko) ==== @@ -12,12 +12,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt ==== //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#2 (text+ko) ==== @@ -12,12 +12,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt ==== //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#2 (text+ko) ==== @@ -12,12 +12,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt ==== //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#2 (text+ko) ==== @@ -12,12 +12,17 @@ CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr -#DPADD= ${LIBCVS} ${LIBDIFF} ${LIBGNUREGEX} ${LIBMD} ${LIBCRYPT} ${LIBZ} -#LDADD= ${LIBCVS} ${LIBDIFF} -lgnuregex -lmd -lcrypt -lz +DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ + ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ + ${LIBBSDSVN_RA_DAV} ${LIBBSDSVN_RA_LOCAL} ${LIBBSDSVN_RA_SVN} \ + ${LIBBSDSVN_DELTA} ${LIBBSDSVN_DIFF} ${LIBBSDSVN_SUBR} \ + ${LIBBSDAPR-UTIL} ${LIBBSDAPR} ${LIBBSDDAV} ${LIBBSDXML} \ + ${LIBSSL} ${LIBCRYPTO} ${LIBZ} ${LIBCRYPT} -LDADD= -lsvn_client -lsvn_wc -lsvn_fs -lsvn_fs_fs -lsvn_repos \ - -lsvn_ra -lsvn_ra_dav -lsvn_ra_local -lsvn_ra_svn \ - -lsvn_delta -lsvn_diff -lsvn_subr \ +LDADD= -lbsdsvn_client -lbsdsvn_wc -lbsdsvn_fs \ + -lbsdsvn_fs_fs -lbsdsvn_repos -lbsdsvn_ra \ + -lbsdsvn_ra_dav -lbsdsvn_ra_local -lbsdsvn_ra_svn \ + -lbsdsvn_delta -lbsdsvn_diff -lbsdsvn_subr \ -lbsdapr-util -lbsdapr -lbsddav -lbsdxml \ -lssl -lcrypto -lz -lcrypt From owner-p4-projects@FreeBSD.ORG Thu Dec 27 00:13:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6ED6516A41B; Thu, 27 Dec 2007 00:13:37 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D1B3F16A419 for ; Thu, 27 Dec 2007 00:13:36 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C5F6613C46E for ; Thu, 27 Dec 2007 00:13:36 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR0DaSa029029 for ; Thu, 27 Dec 2007 00:13:36 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR0DaLM029024 for perforce@freebsd.org; Thu, 27 Dec 2007 00:13:36 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 00:13:36 GMT Message-Id: <200712270013.lBR0DaLM029024@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 131743 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 00:13:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131743 Change 131743 by peter@peter_overcee on 2007/12/27 00:13:30 Create ${MK_SVN} and use it to control hook linkage. Affected files ... .. //depot/projects/hammer/Makefile.inc1#130 edit .. //depot/projects/hammer/share/mk/bsd.own.mk#22 edit .. //depot/projects/hammer/usr.bin/Makefile#57 edit Differences ... ==== //depot/projects/hammer/Makefile.inc1#130 (text+ko) ==== @@ -1081,7 +1081,8 @@ _default_thread_lib= lib/libkse .endif -_generic_libs= ${_cddl_lib} gnu/lib ${_kerberos5_lib} lib ${_secure_lib} usr.bin/lex/lib usr.bin/svn/lib +_generic_libs= ${_cddl_lib} gnu/lib ${_kerberos5_lib} lib ${_secure_lib} \ + usr.bin/lex/lib ${_svn_lib} lib/libopie__L lib/libtacplus__L: lib/libmd__L @@ -1089,6 +1090,10 @@ _cddl_lib= cddl/lib .endif +.if ${MK_SVN} != "no" +_svn_lib= usr.bin/svn/lib +.endif + .if ${MK_CRYPT} != "no" .if ${MK_OPENSSL} != "no" _secure_lib_libcrypto= secure/lib/libcrypto ==== //depot/projects/hammer/share/mk/bsd.own.mk#22 (text+ko) ==== @@ -355,6 +355,7 @@ SETUID_LOGIN \ SHAREDOCS \ SSP \ + SVN \ SYMVER \ SYSCONS \ TCSH \ ==== //depot/projects/hammer/usr.bin/Makefile#57 (text+ko) ==== @@ -173,6 +173,7 @@ split \ stat \ su \ + ${_svn} \ systat \ tabs \ tail \ @@ -290,6 +291,10 @@ _vacation= vacation .endif +.if ${MK_SVN} != "no" +_svn= svn +.endif + .if ${MK_TOOLCHAIN} != "no" _c89= c89 _c99= c99 From owner-p4-projects@FreeBSD.ORG Thu Dec 27 00:38:05 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 21E5416A420; Thu, 27 Dec 2007 00:38:05 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BB3AC16A41A for ; Thu, 27 Dec 2007 00:38:04 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 96F5613C459 for ; Thu, 27 Dec 2007 00:38:04 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR0c4fE042385 for ; Thu, 27 Dec 2007 00:38:04 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR0c4t9042382 for perforce@freebsd.org; Thu, 27 Dec 2007 00:38:04 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 00:38:04 GMT Message-Id: <200712270038.lBR0c4t9042382@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 131745 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 00:38:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=131745 Change 131745 by peter@peter_overcee on 2007/12/27 00:37:28 oops. neon is gpl. keep it isolated. Affected files ... .. //depot/projects/hammer/gnu/lib/libneon/Makefile#1 branch .. //depot/projects/hammer/gnu/lib/libneon/config.h#1 branch .. //depot/projects/hammer/gnu/lib/libneon/expat.h#1 branch .. //depot/projects/hammer/gnu/lib/libneon/libbsddav.3#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Dec 27 00:39:06 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1384516A418; Thu, 27 Dec 2007 00:39:06 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CDC3B16A419 for ; Thu, 27 Dec 2007 00:39:05 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C205213C447 for ; Thu, 27 Dec 2007 00:39:05 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR0d5Oq042418 for ; Thu, 27 Dec 2007 00:39:05 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR0d59r042415 for perforce@freebsd.org; Thu, 27 Dec 2007 00:39:05 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 00:39:05 GMT Message-Id: <200712270039.lBR0d59r042415@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 131746 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 00:39:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=131746 Change 131746 by peter@peter_overcee on 2007/12/27 00:38:20 move libneon hook Affected files ... .. //depot/projects/hammer/gnu/lib/Makefile#6 edit .. //depot/projects/hammer/lib/Makefile#68 edit Differences ... ==== //depot/projects/hammer/gnu/lib/Makefile#6 (text+ko) ==== @@ -2,7 +2,7 @@ .include -SUBDIR= csu libgcc libgcov libdialog libgomp libregex libreadline +SUBDIR= csu libgcc libgcov libdialog libgomp libneon libregex libreadline # libsupc++ uses libstdc++ headers, although 'make includes' should # have taken care of that already. ==== //depot/projects/hammer/lib/Makefile#68 (text+ko) ==== @@ -38,7 +38,7 @@ ${_libsmdb} \ ${_libsmutil} libstand libtelnet ${_libthr} libthread_db libufs \ libugidfw ${_libusbhid} ${_libvgl} libwrap liby libz ${_bind} \ - libapr libapr-util libneon + libapr libapr-util .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) _csu=csu/${MACHINE_ARCH}-elf From owner-p4-projects@FreeBSD.ORG Thu Dec 27 00:39:06 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B77C116A526; Thu, 27 Dec 2007 00:39:06 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1551316A41B for ; Thu, 27 Dec 2007 00:39:06 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E54B313C457 for ; Thu, 27 Dec 2007 00:39:05 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR0d5do042424 for ; Thu, 27 Dec 2007 00:39:05 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR0d5if042421 for perforce@freebsd.org; Thu, 27 Dec 2007 00:39:05 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 00:39:05 GMT Message-Id: <200712270039.lBR0d5if042421@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 131747 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 00:39:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=131747 Change 131747 by peter@peter_overcee on 2007/12/27 00:38:43 delete; moved to gnu/lib/libneon Affected files ... .. //depot/projects/hammer/lib/libneon/Makefile#2 delete .. //depot/projects/hammer/lib/libneon/config.h#2 delete .. //depot/projects/hammer/lib/libneon/expat.h#2 delete .. //depot/projects/hammer/lib/libneon/libbsddav.3#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Dec 27 01:05:35 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 39FA716A469; Thu, 27 Dec 2007 01:05:35 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D675F16A420 for ; Thu, 27 Dec 2007 01:05:34 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B25F813C45B for ; Thu, 27 Dec 2007 01:05:34 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR15Y9P066176 for ; Thu, 27 Dec 2007 01:05:34 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR15YXl066170 for perforce@freebsd.org; Thu, 27 Dec 2007 01:05:34 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 01:05:34 GMT Message-Id: <200712270105.lBR15YXl066170@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 131750 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 01:05:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=131750 Change 131750 by peter@peter_melody on 2007/12/27 01:04:54 Adjust relative path after p4 copy Affected files ... .. //depot/projects/hammer/gnu/lib/libneon/Makefile#2 edit Differences ... ==== //depot/projects/hammer/gnu/lib/libneon/Makefile#2 (text+ko) ==== @@ -1,6 +1,6 @@ -# $FreeBSD: src/lib/libexpat/Makefile,v 1.6 2007/05/21 02:49:04 deischen Exp $ +# $FreeBSD$ -NEON= ${.CURDIR}/../../contrib/neon +NEON= ${.CURDIR}/../../../contrib/neon LIB= bsddav SHLIB_MAJOR= 1 From owner-p4-projects@FreeBSD.ORG Thu Dec 27 01:39:10 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5259716A468; Thu, 27 Dec 2007 01:39:10 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EF76616A418 for ; Thu, 27 Dec 2007 01:39:09 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CB6A713C44B for ; Thu, 27 Dec 2007 01:39:09 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR1d9Qq077959 for ; Thu, 27 Dec 2007 01:39:09 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR1d9Tt077956 for perforce@freebsd.org; Thu, 27 Dec 2007 01:39:09 GMT (envelope-from jb@freebsd.org) Date: Thu, 27 Dec 2007 01:39:09 GMT Message-Id: <200712270139.lBR1d9Tt077956@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 131751 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 01:39:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131751 Change 131751 by jb@jb_freebsd1 on 2007/12/27 01:38:38 Remove a file from p4 that I deleted locally ages ago. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/feature_tests.h#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Dec 27 06:42:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E8DD16A473; Thu, 27 Dec 2007 06:42:28 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B1DB516A469 for ; Thu, 27 Dec 2007 06:42:27 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9C94713C45D for ; Thu, 27 Dec 2007 06:42:27 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR6gRjY004619 for ; Thu, 27 Dec 2007 06:42:27 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR6gRqS004616 for perforce@freebsd.org; Thu, 27 Dec 2007 06:42:27 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 27 Dec 2007 06:42:27 GMT Message-Id: <200712270642.lBR6gRqS004616@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 131754 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 06:42:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131754 Change 131754 by kmacy@pandemonium:kmacy:xen31 on 2007/12/27 06:41:40 move forward from crashing in HYPERVISOR_set_gdt in init386 to crashing in pmap_copy_ma_range in pmap_pinit while creating init Affected files ... .. //depot/projects/xen31/sys/i386/i386/machdep.c#7 edit .. //depot/projects/xen31/sys/i386/i386/support.s#2 edit .. //depot/projects/xen31/sys/i386/include/cpufunc.h#3 edit .. //depot/projects/xen31/sys/i386/include/segments.h#3 edit .. //depot/projects/xen31/sys/i386/include/xen/xenvar.h#4 edit .. //depot/projects/xen31/sys/i386/xen/pmap.c#6 edit .. //depot/projects/xen31/sys/i386/xen/xen_machdep.c#6 edit Differences ... ==== //depot/projects/xen31/sys/i386/i386/machdep.c#7 (text+ko) ==== @@ -1451,6 +1451,7 @@ 0, 0, 1, /* default 32 vs 16 bit size */ 1 /* limit granularity (byte/page units)*/ }, +#ifndef XEN /* GPROC0_SEL 9 Proc 0 Tss Descriptor */ { 0x0, /* segment base address */ @@ -1461,7 +1462,6 @@ 0, 0, 0, /* unused - default 32 vs 16 bit size */ 0 /* limit granularity (byte/page units)*/ }, -#ifndef XEN /* GLDT_SEL 10 LDT Descriptor */ { (int) ldt, /* segment base address */ sizeof(ldt)-1, /* length - all address space */ @@ -2005,6 +2005,7 @@ getenv_quad("dcons.size", &dcons_size) == 0) dcons_addr = 0; +#ifndef XEN /* * physmap is in bytes, so when converting to page boundaries, * round up the start address and round down the end address. @@ -2122,7 +2123,10 @@ } *pte = 0; invltlb(); - +#else + phys_avail[1] = xen_start_info->nr_pages*PAGE_SIZE; +#endif /* XEN */ + /* * XXX * The last chunk must contain at least one page plus the message @@ -2186,34 +2190,26 @@ init_param1(); /* - * Make gdt memory segments. All segments cover the full 4GB - * of address space and permissions are enforced at page level. - */ - - /* - * XEN occupies the upper 64MB of virtual address space + * XEN occupies a portion of the upper virtual address space * At its base it manages an array mapping machine page frames * to physical page frames - hence we need to be able to * access 4GB - (64MB - 4MB + 64k) */ - gdt_segs[GCODE_SEL].ssd_limit = atop(0 - ((1 << 26) - - (1 << 22) + (1 << 16))); - gdt_segs[GDATA_SEL].ssd_limit = atop(0 - ((1 << 26) - - (1 << 22) + (1 << 16))); - gdt_segs[GUCODE_SEL].ssd_limit = atop(0 - ((1 << 26) - - (1 << 22) + (1 << 16))); - gdt_segs[GUDATA_SEL].ssd_limit = atop(0 - ((1 << 26) - - (1 << 22) + (1 << 16))); - gdt_segs[GUFS_SEL].ssd_limit = atop(0 - ((1 << 26) - - (1 << 22) + (1 << 16))); - gdt_segs[GUGS_SEL].ssd_limit = atop(0 - ((1 << 26) - - (1 << 22) + (1 << 16))); + gdt_segs[GPRIV_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GUFS_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GUGS_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GCODE_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GDATA_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GUCODE_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GUDATA_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); + gdt_segs[GBIOSLOWMEM_SEL].ssd_limit = atop(HYPERVISOR_VIRT_START + 256*PAGE_SIZE); pc = &__pcpu[0]; - gdt_segs[GPRIV_SEL].ssd_limit = atop(0 - 1); gdt_segs[GPRIV_SEL].ssd_base = (int) pc; gdt_segs[GPROC0_SEL].ssd_base = (int) &pc->pc_common_tss; + PT_SET_MA(gdt, xpmap_ptom(VTOP(gdt)) | PG_V | PG_RW); + bzero(gdt, PAGE_SIZE); for (x = 0; x < NGDT; x++) ssdtosd(&gdt_segs[x], &gdt[x].sd); @@ -2224,8 +2220,8 @@ printk("PTmap=%p\n", PTmap); printk("addr=%p\n", *vtopte((unsigned long)gdt) & ~PG_RW); - PT_SET_MA(gdt, *vtopte((unsigned long)gdt) & ~PG_RW); gdtmachpfn = vtomach(gdt) >> PAGE_SHIFT; + PT_SET_MA(gdt, *vtopte((unsigned long)gdt) & ~(PG_RW|PG_M|PG_A)); PANIC_IF(HYPERVISOR_set_gdt(&gdtmachpfn, 512) != 0); lgdt(&r_gdt /* unused */); gdt_set = 1; @@ -2255,6 +2251,8 @@ mtx_init(&icu_lock, "icu", NULL, MTX_SPIN | MTX_NOWITNESS | MTX_NOPROFILE); /* make ldt memory segments */ + PT_SET_MA(ldt, xpmap_ptom(VTOP(ldt)) | PG_V | PG_RW); + bzero(ldt, PAGE_SIZE); ldt_segs[LUCODE_SEL].ssd_limit = atop(0 - 1); ldt_segs[LUDATA_SEL].ssd_limit = atop(0 - 1); for (x = 0; x < sizeof ldt_segs / sizeof ldt_segs[0]; x++) ==== //depot/projects/xen31/sys/i386/i386/support.s#2 (text+ko) ==== @@ -1459,10 +1459,11 @@ */ /* void lgdt(struct region_descriptor *rdp); */ ENTRY(lgdt) +#ifndef XEN /* reload the descriptor table */ movl 4(%esp),%eax lgdt (%eax) - +#endif /* flush the prefetch q */ jmp 1f nop ==== //depot/projects/xen31/sys/i386/include/cpufunc.h#3 (text+ko) ==== @@ -93,7 +93,11 @@ static __inline void disable_intr(void) { +#ifdef XEN + __cli(); +#else __asm __volatile("cli" : : : "memory"); +#endif } static __inline void @@ -115,7 +119,11 @@ static __inline void enable_intr(void) { +#ifdef XEN + __sti(); +#else __asm __volatile("sti"); +#endif } #ifdef _KERNEL @@ -445,8 +453,11 @@ static __inline void invltlb(void) { - +#ifdef XEN + xen_tlb_flush(); +#else load_cr3(rcr3()); +#endif } /* @@ -456,8 +467,11 @@ static __inline void invlpg(u_int addr) { - +#ifdef XEN + xen_invlpg(addr); +#else __asm __volatile("invlpg %0" : : "m" (*(char *)addr) : "memory"); +#endif } static __inline u_int @@ -662,16 +676,24 @@ intr_disable(void) { register_t eflags; - +#ifdef XEN + __save_and_cli(eflags); +#else eflags = read_eflags(); disable_intr(); +#endif return (eflags); } static __inline void intr_restore(register_t eflags) { + +#ifdef XEN + __restore_flags(eflags); +#else write_eflags(eflags); +#endif } #else /* !(__GNUCLIKE_ASM && __CC_SUPPORTS___INLINE) */ ==== //depot/projects/xen31/sys/i386/include/segments.h#3 (text+ko) ==== @@ -47,7 +47,11 @@ */ #define ISPL(s) ((s)&3) /* what is the priority level of a selector */ +#ifdef XEN +#define SEL_KPL 1 /* kernel priority level */ +#else #define SEL_KPL 0 /* kernel priority level */ +#endif #define SEL_UPL 3 /* user priority level */ #define ISLDT(s) ((s)&SEL_LDT) /* is it local or global */ #define SEL_LDT 4 /* local descriptor table */ @@ -222,8 +226,11 @@ #define GBIOSARGS_SEL 17 /* BIOS interface (Arguments) */ #define GNDIS_SEL 18 /* For the NDIS layer */ +#ifdef XEN +#define NGDT 9 +#else #define NGDT 19 - +#endif /* * Entries in the Local Descriptor Table (LDT) */ ==== //depot/projects/xen31/sys/i386/include/xen/xenvar.h#4 (text+ko) ==== @@ -22,7 +22,7 @@ #define TRACE_DEBUG(argflags, _f, _a...) #endif -extern vm_paddr_t *xen_machine_phys; +extern xen_pfn_t *xen_machine_phys; /* Xen starts physical pages after the 4MB ISA hole - * FreeBSD doesn't */ ==== //depot/projects/xen31/sys/i386/xen/pmap.c#6 (text+ko) ==== @@ -594,11 +594,6 @@ pt_entry_t *pte; vm_offset_t va; - panic("IMPLEMENT XXX"); - - - - va = *head; if (va == 0) return (va); /* Out of memory */ @@ -606,19 +601,28 @@ *head = *pte; if (*head & PG_V) panic("pmap_ptelist_alloc: va with PG_V set!"); +#ifdef XEN + PT_SET_MA(va, (vm_paddr_t)0); +#else *pte = 0; +#endif return (va); } static void pmap_ptelist_free(vm_offset_t *head, vm_offset_t va) { +#ifndef XEN pt_entry_t *pte; if (va & PG_V) panic("pmap_ptelist_free: freeing va with PG_V set!"); + pte = vtopte(va); *pte = *head; /* virtual! PG_V is 0 though */ +#else + PT_SET_MA(va, (vm_paddr_t)*head); +#endif *head = va; } @@ -2524,7 +2528,7 @@ #if 0 && defined(PMAP_DIAGNOSTIC) else { pd_entry_t *pdeaddr = pmap_pde(pmap, va); - origpte = PT_GET(pdeaddr); + origpte = *pdeaddr; if ((origpte & PG_V) == 0) { panic("pmap_enter: invalid kernel page table page, pdir=%p, pde=%p, va=%p\n", pmap->pm_pdir[PTDPTDI], origpte, va); @@ -2533,7 +2537,7 @@ #endif pde = pmap_pde(pmap, va); - if ((PT_GET(pde) & PG_PS) != 0) + if ((*pde & PG_PS) != 0) panic("pmap_enter: attempted pmap_enter on 4MB page"); pte = pmap_pte_quick(pmap, va); @@ -3103,9 +3107,11 @@ if (*sysmaps->CMAP2) panic("pmap_zero_page: CMAP2 busy"); sched_pin(); +#ifdef XEN + PT_SET_VA(sysmaps->CMAP2, PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M, TRUE); +#else *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M; - PT_SET_VA(sysmaps->CMAP2, PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M, TRUE); - +#endif invlcaddr(sysmaps->CADDR2); pagezero(sysmaps->CADDR2); PT_CLEAR_VA(sysmaps->CMAP2, TRUE); ==== //depot/projects/xen31/sys/i386/xen/xen_machdep.c#6 (text+ko) ==== @@ -75,7 +75,7 @@ int xendebug_flags; start_info_t *xen_start_info; shared_info_t *HYPERVISOR_shared_info; -vm_paddr_t *xen_machine_phys = ((vm_paddr_t *)VADDR(1008, 0)); +xen_pfn_t *xen_machine_phys = machine_to_phys_mapping; xen_pfn_t *xen_phys_machine; int preemptable, init_first; extern unsigned int avail_space; @@ -646,8 +646,7 @@ #ifdef PAE -static vm_paddr_t *ptdir_shadow; -static vm_paddr_t *pdir_shadow[4]; +static vm_paddr_t *pdir_shadow; #else static vm_paddr_t *pdir_shadow; #endif @@ -690,7 +689,7 @@ void initvalues(start_info_t *startinfo) { - int i, l3_pages, l2_pages, l1_pages; + int i, l3_pages, l2_pages, l1_pages, offset; vm_offset_t cur_space; physdev_op_t op; vm_paddr_t KPTphys, IdlePTDma; @@ -698,8 +697,8 @@ vm_offset_t KPTphysoff, tmpva; vm_paddr_t shinfo; #ifdef PAE - vm_paddr_t IdlePDPTma, ptdir_shadow_ma, IdlePDPTnewma, IdlePTDnewma; - vm_paddr_t pdir_shadow_ma[4]; + vm_paddr_t IdlePDPTma, IdlePDPTnewma; + vm_paddr_t pdir_shadow_ma[4], IdlePTDnewma[4]; pd_entry_t *IdlePDPTnew, *IdlePTDnew; #else vm_paddr_t pdir_shadow_ma; @@ -757,21 +756,11 @@ xen_start_info->nr_pages, xen_start_info->shared_info, xen_start_info->flags, xen_start_info->pt_base, xen_start_info->mod_start, xen_start_info->mod_len); -#if 0 - XENPRINTF("c0100000: %08x\n", - xpmap_get_bootpte(0xc0100000)); -#endif /* Map proc0's KSTACK */ proc0kstack = cur_space; cur_space += (KSTACK_PAGES * PAGE_SIZE); printk("proc0kstack=%u\n", proc0kstack); - /* allocate page for gdt */ - gdt = (union descriptor *)cur_space; cur_space += PAGE_SIZE; - - /* allocate page for ldt */ - ldt = (union descriptor *)cur_space; cur_space += PAGE_SIZE; - /* vm86/bios stack */ cur_space += PAGE_SIZE; @@ -780,13 +769,12 @@ cur_space += (PAGE_SIZE * 3); #ifdef PAE - for (i = 0; i < 4; i++) { + pdir_shadow = (vm_paddr_t *)cur_space; cur_space += 4*PAGE_SIZE; + bzero(pdir_shadow, 4*PAGE_SIZE); /* initialize page directory shadow page */ - pdir_shadow[i] = (vm_paddr_t *)cur_space; - cur_space += PAGE_SIZE; - bzero(pdir_shadow[i], PAGE_SIZE); - pdir_shadow_ma[i] = xpmap_ptom((vm_paddr_t)VTOP(pdir_shadow[i])); - } + for (i = 0; i < 4; i++) + pdir_shadow_ma[i] = xpmap_ptom((vm_paddr_t) + VTOP((uint8_t *)pdir_shadow + i*PAGE_SIZE)); #else /* initialize page directory shadow page */ pdir_shadow = (vm_paddr_t *)cur_space; cur_space += PAGE_SIZE; @@ -799,59 +787,32 @@ bzero(IdlePDPTnew, PAGE_SIZE); IdlePDPTnewma = xpmap_ptom(VTOP(IdlePDPTnew)); - IdlePTDnew = (pd_entry_t *)cur_space; cur_space += PAGE_SIZE; - bzero(IdlePTDnew, PAGE_SIZE); - IdlePTDnewma = xpmap_ptom(VTOP(IdlePTDnew)); - memcpy(IdlePTDnew, IdlePTD, PAGE_SIZE/2); - + IdlePTDnew = (pd_entry_t *)cur_space; cur_space += 4*PAGE_SIZE; + bzero(IdlePTDnew, 4*PAGE_SIZE); + for (i = 0; i < 4; i++) + IdlePTDnewma[i] = xpmap_ptom( + VTOP((uint8_t *)IdlePTDnew + i*PAGE_SIZE)); - /* initialize page directory page table shadow page */ - ptdir_shadow = (vm_paddr_t *)cur_space; cur_space += PAGE_SIZE; - bzero(ptdir_shadow, PAGE_SIZE); - ptdir_shadow_ma = xpmap_ptom(VTOP(ptdir_shadow)); - - /* * L3 */ - IdlePDPTnew[2] = ptdir_shadow_ma | PG_V; - IdlePDPTnew[3] = IdlePTDnewma | PG_V; + for (i = 0; i < 4; i++) + IdlePDPTnew[i] = IdlePTDnewma[i] | PG_V; /* * L2 */ - for (i = 0; i < 4; i++) - ptdir_shadow[508 + i] = pdir_shadow_ma[i] | PG_V; - /* - * L1 - can't copy Xen's mappings - */ - for (i = 0; i < 256; i++) - pdir_shadow[3][i] = IdlePTDnew[i] & ~(PG_RW|PG_A); + IdlePTDnew[1532 + i] = pdir_shadow_ma[i] | PG_V; /* * Map IdlePTD at PTD */ - pdir_shadow[2][511] = IdlePTDnewma | PG_V; + for (i = 0; i < 4; i++) + pdir_shadow[1532 + i] = IdlePTDnewma[i] | PG_V; - for (i = 0; i < 4; i++) - PT_SET_MA(pdir_shadow[i], pdir_shadow_ma[i] | PG_V); - PT_SET_MA(ptdir_shadow, ptdir_shadow_ma | PG_V); PT_SET_MA(IdlePDPTnew, IdlePDPTnewma | PG_V); - PT_SET_MA(IdlePTDnew, IdlePTDnewma | PG_V); -#if 0 - xen_pgd_pin(ptdir_shadow_ma); - xen_pgd_pin(IdlePTDnewma); -#endif - xen_load_cr3(VTOP(IdlePDPTnew)); - IdlePTD = IdlePTDnew; - IdlePTDma = IdlePTDnewma; - IdlePDPT = IdlePDPTnew; - IdlePDPTma = IdlePDPTnewma; + xen_pt_unpin(IdlePDPTma); #endif -#if 0 - /* setup shadow mapping first so vtomach will work */ - xen_pt_pin(pdir_shadow_ma); -#endif #ifndef PAE xen_queue_pt_update(IdlePTDma + PTDPTDI*sizeof(vm_paddr_t), pdir_shadow_ma | PG_KERNEL); @@ -862,33 +823,47 @@ KPTphys | PG_V | PG_A); xen_flush_queue(); #endif - /* unmap remaining pages from initial 2/4MB chunk */ - for (tmpva = cur_space; (tmpva & PDRMASK) != 0; tmpva += PAGE_SIZE) + /* unmap remaining pages from initial 4MB chunk */ + for (tmpva = cur_space; (tmpva & ((1<<22)-1)) != 0; tmpva += PAGE_SIZE) PT_SET_MA(tmpva, (vm_paddr_t)0); - +#ifdef PAE + offset = 0; +#else + offset = KPTDI; +#endif /* allocate remainder of NKPT pages */ - printk("#1\n"); - for (i = 0; i < NKPT-l1_pages; i++, cur_space += PAGE_SIZE) { - /* KERNBASE left unmapped (+ 1) KERNLOAD already mapped (+1) == + 2 */ - printk("#2: i=%i,offs=%u->%x\n", i, KPTDI + i + 1, + for (i = l1_pages; i < NKPT; i++, cur_space += PAGE_SIZE) + xen_queue_pt_update((vm_paddr_t)(IdlePTDma + (offset + i)*sizeof(vm_paddr_t)), xpmap_ptom(VTOP(cur_space)) | PG_KERNEL); -/* - xen_queue_pt_update((vm_paddr_t)(IdlePTDma + KPTDI + i + 1), - xpmap_ptom(VTOP(cur_space)) | PG_KERNEL);*/ + PT_UPDATES_FLUSH(); -#ifdef PAE - xen_queue_pt_update(pdir_shadow_ma[3] + (KPTDI + i + 1)*sizeof(vm_paddr_t), - xpmap_ptom(VTOP(cur_space)) | PG_V | PG_A); -#else - xen_queue_pt_update(pdir_shadow_ma + (KPTDI + i + 1)*sizeof(vm_paddr_t), - xpmap_ptom(VTOP(cur_space)) | PG_V | PG_A); -#endif - PT_UPDATES_FLUSH(); + /* + * L1 - can't copy Xen's mappings + */ + for (i = 0; i < 256; i++) + pdir_shadow[1536 + i] = IdlePTD[i] & ~(PG_RW|PG_A|PG_M); + memcpy((uint8_t *)IdlePTDnew + 3*PAGE_SIZE, IdlePTD, PAGE_SIZE/2); + printk("do remapping\n"); + for (i = 0; i < 4; i++) { + PT_SET_MA((uint8_t *)IdlePTDnew + i*PAGE_SIZE, + IdlePTDnewma[i] | PG_V); + PT_SET_MA((uint8_t *)pdir_shadow + i*PAGE_SIZE, + pdir_shadow_ma[i] | PG_V); } + + xen_load_cr3(VTOP(IdlePDPTnew)); - printk("#3\n"); + IdlePTD = IdlePTDnew; + IdlePDPT = IdlePDPTnew; + IdlePDPTma = IdlePDPTnewma; + + /* allocate page for gdt */ + gdt = (union descriptor *)cur_space; cur_space += PAGE_SIZE; + /* allocate page for ldt */ + ldt = (union descriptor *)cur_space; cur_space += PAGE_SIZE; HYPERVISOR_shared_info = (shared_info_t *)cur_space; + cur_space += PAGE_SIZE; /* * shared_info is an unsigned long so this will randomly break if @@ -897,18 +872,18 @@ */ shinfo = xen_start_info->shared_info; PT_SET_MA(HYPERVISOR_shared_info, shinfo | PG_KERNEL); - cur_space += PAGE_SIZE; - + printk("#4\n"); xen_store = (struct ringbuf_head *)cur_space; + cur_space += PAGE_SIZE; + xen_store_ma = (xen_start_info->store_mfn << PAGE_SHIFT); PT_SET_MA(xen_store, xen_store_ma | PG_KERNEL); + console_page = (char *)cur_space; cur_space += PAGE_SIZE; - console_page = (char *)cur_space; console_page_ma = (xen_start_info->console.domU.mfn << PAGE_SHIFT); PT_SET_MA(console_page, console_page_ma | PG_KERNEL); - cur_space += PAGE_SIZE; printk("#5\n"); HYPERVISOR_shared_info->arch.pfn_to_mfn_frame_list_list = (unsigned long)xen_phys_machine; @@ -930,7 +905,7 @@ PANIC_IF(HYPERVISOR_physdev_op(&op)); printk("#6\n"); -#if 1 +#if 0 /* add page table for KERNBASE */ xen_queue_pt_update(IdlePTDma + KPTDI*sizeof(vm_paddr_t), xpmap_ptom(VTOP(cur_space) | PG_KERNEL)); @@ -957,8 +932,9 @@ #endif printk("#7\n"); physfree = VTOP(cur_space); - init_first = (cur_space >> PAGE_SHIFT); - + init_first = physfree >> PAGE_SHIFT; + IdlePTD = (pd_entry_t *)VTOP(IdlePTD); + IdlePDPT = (pd_entry_t *)VTOP(IdlePDPT); printk("#8, proc0kstack=%u\n", proc0kstack); } From owner-p4-projects@FreeBSD.ORG Thu Dec 27 07:57:50 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DCA9016A41B; Thu, 27 Dec 2007 07:57:49 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6AFCB16A418 for ; Thu, 27 Dec 2007 07:57:49 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 55AB913C4E1 for ; Thu, 27 Dec 2007 07:57:49 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBR7vna3034362 for ; Thu, 27 Dec 2007 07:57:49 GMT (envelope-from zhouzhouyi@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBR7vmhi034359 for perforce@freebsd.org; Thu, 27 Dec 2007 07:57:48 GMT (envelope-from zhouzhouyi@FreeBSD.org) Date: Thu, 27 Dec 2007 07:57:48 GMT Message-Id: <200712270757.lBR7vmhi034359@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zhouzhouyi@FreeBSD.org using -f From: Zhouyi ZHOU To: Perforce Change Reviews Cc: Subject: PERFORCE change 131757 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 07:57:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=131757 Change 131757 by zhouzhouyi@zhouzhouyi_mactest on 2007/12/27 07:57:39 style modification Affected files ... .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/macping.c#4 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/misc.sh#25 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/00.t#4 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/01.t#3 edit Differences ... ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/macping.c#4 (text+ko) ==== @@ -60,7 +60,7 @@ #include "mactest.h" - +const char *macconf_file = NULL; struct tv32 { int32_t tv32_sec; int32_t tv32_usec; @@ -181,6 +181,7 @@ if (i < 0) { warn("sendto"); close(logfd); + machookmatch(macconf_file, getpid()); exit(1); } else { warn("%s: partial write: %d of %d bytes", @@ -210,7 +211,6 @@ const char *label_string = NULL; const char *socket_label = NULL; char *target = NULL; - const char *macconf_file = NULL; int pid; char buf[10]; int flags; ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/misc.sh#25 (text+ko) ==== ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/00.t#4 (text+ko) ==== @@ -1,62 +1,76 @@ #!/bin/sh -# $FreeBSD: src/tools/regression/mactest/tests/netinet/00.t,v 1.2 2007/01/25 20:50:02 zhouzhouyi Exp $ +# $FreeBSD$ -desc="manipulate fifo files" +desc="test mandatory access control hooks for the interface relabelling" dir=`dirname $0` . ${dir}/../misc.sh -echo "1..3" + +dir=`dirname $0` +. ${dir}/../misc.sh +case "${os}" in +FreeBSD) -#turn off all the switches -for i in `sysctl security.mac | grep "\.enabled"| - sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do -sysctl ${i}=0 -done + mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` + mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` + mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` -mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` -mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` -mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && + [ "${mac_test_support}" != "" ]; then +#turn off all the switches + for i in `sysctl security.mac | grep "\.enabled"| + sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do + sysctl ${i}=0 >/dev/null + done -if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && - [ "${mac_test_support}" != "" ]; then - dvplabel=`getfmac ".."| sed 's/\(\.\.:\ \)\([a-z\,\/]*\)/\2/`; + if [ -f ${mactest_conf} ]; then + rm ${mactest_conf} + fi + touch ${mactest_conf} + + timewait=`netstat -p tcp|grep 1234|grep TIME_WAIT` + if [ "${#timewait}" -eq 0 ]; then - if [ -f ${mactest_conf} ]; then - rm ${mactest_conf} - fi - touch ${mactest_conf} + echo "1..3" + sysctl security.mac.mls.enabled=1 > /dev/null + sysctl security.mac.mls.revocation_enabled=1 > /dev/null + sysctl security.mac.test.pseudoinit=1 > /dev/null + ifconfig mac_test0 192.167.0.33 + ifconfig mac_test1 192.167.1.34 -############################################################# - t=`sysctl security.mac.mls.enabled=1` - echo "enforcing mac/mls!" - t=`sysctl security.mac.mls.revocation_enabled=1` - echo "enabling revoking" - t=`sysctl security.mac.test.pseudoinit=1` - t=`ifconfig mac_test0 192.167.0.33` - t=`ifconfig mac_test1 192.167.1.34` - echo "enabling mactest pseudo interface" #case 1,2,3: set the maclabel of the interface, effective, range or both is allowed, while # the subject should be priviledeged. - - mactestexpect "setifmac:.Operation.not.permitted" "" -m "biba/high(high-high)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel "mls/low\(low-high\)" - mactestexpect "setifmac:.Operation.not.permitted" "" -m "mls/low(low-low)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel "mls/low\(low-high\)" - echo -n "pid = -2 mac_test_check_ifnet_relabel:" > ${mactest_conf} - echo "biba/high(low-high),mls/low(low-high) mls/low(low-high) biba/,mls/low(low-high)" >> ${mactest_conf} - mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel "mls/low\(low-high\)" - +#case 1 + mactestexpect "setifmac:.Operation.not.permitted" "" \ + -m "biba/high(high-high)" \ + -f ${mactest_conf} system ifconfig mac_test0 \ + maclabel "mls/low\(low-high\)" +#case 2 + mactestexpect "setifmac:.Operation.not.permitted" "" \ + -m "mls/low(low-low)" \ + -f ${mactest_conf} system ifconfig mac_test0 \ + maclabel "mls/low\(low-high\)" +#case 3 + echo -n "pid = -2 ifnet_check_relabel:" > ${mactest_conf} + echo "biba/high(low-high),mls/low(low-high) mls/low(low-high) biba/,mls/low(low-high)" >> ${mactest_conf} + mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ + -f ${mactest_conf} system ifconfig mac_test0 maclabel "mls/low\(low-high\)" #cleanup: - t=`sysctl security.mac.mls.enabled=0` - echo "disabling mac/mls!" - - - rm ${mactest_conf} -fi + sysctl security.mac.mls.enabled=0 >/dev/null + sysctl security.mac.biba.enabled=0 > /dev/null + rm ${mactest_conf} +#ping received, no firewall + fi +#mac_mls mac_biba and mac_test support + fi + ;; +*) + quick_exit + ;; +esac ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/01.t#3 (text+ko) ==== @@ -1,84 +1,81 @@ #!/bin/sh -# $FreeBSD: src/tools/regression/mactest/tests/netinet/01.t,v 1.2 2007/01/25 20:50:02 zhouzhouyi Exp $ +# $FreeBSD$ -desc="test the ifnet transmit" +desc="test mandatory access control for the ifnet transmit" - dir=`dirname $0` . ${dir}/../misc.sh -echo "1..5" +case "${os}" in +FreeBSD) + + mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` + mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` + mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && + [ "${mac_test_support}" != "" ]; then #turn off all the switches -for i in `sysctl security.mac | grep "\.enabled"| - sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do -sysctl ${i}=0 -done + for i in `sysctl security.mac | grep "\.enabled"| + sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do + sysctl ${i}=0 >/dev/null + done -mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` -mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` -mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ -f ${mactest_conf} ]; then + rm ${mactest_conf} + fi + touch ${mactest_conf} + setfmac "mls/equal,biba/equal" ${mactest_conf} -if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && - [ "${mac_test_support}" != "" ]; then - dvplabel=`getfmac ".."| sed 's/\(\.\.:\ \)\([a-z\,\/]*\)/\2/`; + sysctl security.mac.test.pseudoinit=1 > /dev/null + ifconfig mac_test0 192.167.0.33 > /dev/null + ifconfig mac_test1 192.167.1.34 > /dev/null - - if [ -f ${mactest_conf} ]; then - rm ${mactest_conf} - fi - touch ${mactest_conf} - - t=`sysctl security.mac.test.pseudoinit=1` - t=`ifconfig mac_test0 192.167.0.33` - t=`ifconfig mac_test1 192.167.1.34` - echo "enabling mactest pseudo interface" - #ensuring there is no firewall thing - notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` - if [ "${#notreceived}" -eq 0 ]; then + notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` + + if [ "${#notreceived}" -eq 0 ]; then + echo "1..5" - + sysctl security.mac.mls.enabled=1 > /dev/null + sysctl security.mac.biba.enabled=1 > /dev/null - -############################################################# - t=`sysctl security.mac.mls.enabled=1` - echo "enforcing mac/mls!" - t=`sysctl security.mac.biba.enabled=1` - echo "enforcing mac/biba!" - - #case 1: set the maclabel of the interface # the subject should be priviledeged. - mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel \ - "mls/5\(4-6\),biba/low\(low-low\)" + mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ + -f ${mactest_conf} system ifconfig mac_test0 maclabel \ + "mls/5\(4-6\),biba/low\(low-low\)" + #case 2: the packet's level must between the range of the interface - bizarretestexpect ${macping} "macping:.sendto:.Permission.denied" \ - "" -m "mls/9(low-high)" -f ${mactest_conf} -t 1 192.167.0.34 + bizarretestexpect ${macping} "macping:.sendto:.Permission.denied" \ + "" -m "mls/9(low-high)" -f ${mactest_conf} -t 1 192.167.0.34 + #case 3: the packet's level is between the range of the interface - bizarretestexpect ${macping} "" \ - "" -m "mls/5,biba/low" -f ${mactest_conf} -t 1 192.167.0.34 + bizarretestexpect ${macping} "" \ + "" -m "mls/5,biba/low" -f ${mactest_conf} -t 1 192.167.0.34 + #case 4: also do check for biba - mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel "biba/5\(4-6\)" + mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ + -f ${mactest_conf} system ifconfig mac_test0 maclabel "biba/5\(4-6\)" + #case 5: - echo -n "pid = -2 mac_test_check_ifnet_transmit:" > ${mactest_conf} - echo "biba/5(4-6),mls/5(4-6) biba/9,mls/low" >> ${mactest_conf} - bizarretestexpect ${macping} "macping:.sendto:.Permission.denied" \ - "" -m "biba/9" -f ${mactest_conf} -t 1 192.167.0.34 + echo -n "pid = -2 ifnet_check_transmit:" > ${mactest_conf} + echo "biba/5(4-6),mls/5(4-6) biba/9,mls/low" >> ${mactest_conf} + bizarretestexpect ${macping} "macping:.sendto:.Permission.denied"\ + "" -m "biba/9" -f ${mactest_conf} -t 1 192.167.0.34 #cleanup: - t=`sysctl security.mac.mls.enabled=0` - echo "disabling mac/mls!" - t=`sysctl security.mac.biba.enabled=0` - echo "disabling mac/biba!" - - - rm ${mactest_conf} - fi - -fi - + sysctl security.mac.mls.enabled=0 >/dev/null + sysctl security.mac.biba.enabled=0 > /dev/null + rm ${mactest_conf} +#ping received, no firewall + fi +#mac_mls mac_biba and mac_test support + fi + ;; +*) + quick_exit + ;; +esac From owner-p4-projects@FreeBSD.ORG Thu Dec 27 20:05:16 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0DB2016A41B; Thu, 27 Dec 2007 20:05:16 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AAEE716A419 for ; Thu, 27 Dec 2007 20:05:15 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8BD6313C457 for ; Thu, 27 Dec 2007 20:05:15 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRK5FQY063005 for ; Thu, 27 Dec 2007 20:05:15 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRK5FH0063000 for perforce@freebsd.org; Thu, 27 Dec 2007 20:05:15 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 20:05:15 GMT Message-Id: <200712272005.lBRK5FH0063000@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 131800 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 20:05:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=131800 Change 131800 by peter@peter_melody on 2007/12/27 20:05:14 Add apr includes to the path Affected files ... .. //depot/projects/hammer/lib/libapr-util/Makefile#2 edit Differences ... ==== //depot/projects/hammer/lib/libapr-util/Makefile#2 (text+ko) ==== @@ -41,6 +41,7 @@ -I${.CURDIR}/../libapr \ -I${APRU}/include/private \ -I${APRU}/include \ + -I${APRU}/../apr/include \ -I${INCLUDEDIR}/bsdapr/apr INCSDIR= ${INCLUDEDIR}/bsdapr/apr From owner-p4-projects@FreeBSD.ORG Thu Dec 27 20:06:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37A7F16A41A; Thu, 27 Dec 2007 20:06:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CD93116A418 for ; Thu, 27 Dec 2007 20:06:16 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C5A5313C458 for ; Thu, 27 Dec 2007 20:06:16 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRK6GDk063479 for ; Thu, 27 Dec 2007 20:06:16 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRK6GBt063475 for perforce@freebsd.org; Thu, 27 Dec 2007 20:06:16 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 20:06:16 GMT Message-Id: <200712272006.lBRK6GBt063475@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 131801 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 20:06:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131801 Change 131801 by peter@peter_melody on 2007/12/27 20:06:02 buildworld compatability - find the includes in the tmproot. Affected files ... .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_client/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_delta/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_diff/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs_fs/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_dav/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_local/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_svn/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_repos/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_subr/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/lib/libsvn_wc/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svn/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#3 edit .. //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#3 edit Differences ... ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_client/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = add.c blame.c cat.c checkout.c cleanup.c commit.c commit_util.c \ compat_providers.c copy.c ctx.c delete.c diff.c export.c externals.c \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_delta/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = cancel.c compose_delta.c debug_editor.c default_editor.c \ path_driver.c svndiff.c text_delta.c vdelta.c version.c xdelta.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_diff/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = diff.c diff3.c diff4.c diff_file.c lcs.c token.c util.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = access.c fs-loader.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_fs_fs/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = dag.c err.c fs.c fs_fs.c id.c key-gen.c lock.c tree.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = ra_loader.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_dav/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = commit.c fetch.c file_revs.c log.c merge.c options.c props.c replay.c \ session.c util.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_local/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = ra_plugin.c split_url.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_ra_svn/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = client.c cram.c editor.c editorp.c marshal.c version.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_repos/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = authz.c commit.c delta.c dump.c fs-wrap.c hooks.c load.c log.c \ node_tree.c replay.c reporter.c repos.c rev_hunt.c ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_subr/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = auth.c cmdline.c compat.c config.c config_auth.c config_file.c \ config_win.c constructors.c ctype.c date.c dso.c error.c hash.c io.c \ ==== //depot/projects/hammer/usr.bin/svn/lib/libsvn_wc/Makefile#3 (text+ko) ==== @@ -8,7 +8,7 @@ SHLIB_MAJOR= 1 CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/../.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr SRCS = adm_crawler.c adm_files.c adm_ops.c copy.c diff.c entries.c lock.c \ log.c merge.c props.c questions.c relocate.c revision_status.c \ ==== //depot/projects/hammer/usr.bin/svn/svn/Makefile#3 (text+ko) ==== @@ -16,7 +16,7 @@ unlock-cmd.c update-cmd.c util.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ ==== //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ SRCS= main.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ ==== //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ SRCS= main.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ ==== //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ SRCS= main.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ ==== //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ SRCS= main.c serve.c winservice.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ ==== //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ SRCS= main.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ ==== //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ SRCS= main.c CFLAGS+=-I${SVNDIR}/include -I${SVNDIR} -I${.CURDIR}/.. \ - -I${INCLUDEDIR}/bsddav/neon -I${INCLUDEDIR}/bsdapr/apr + -I${DESTDIR}${INCLUDEDIR}/bsddav/neon -I${DESTDIR}${INCLUDEDIR}/bsdapr/apr DPADD= ${LIBBSDSVN_CLIENT} ${LIBBSDSVN_WC} ${LIBBSDSVN_FS} \ ${LIBBSDSVN_FS_FS} ${LIBBSDSVN_REPOS} ${LIBBSDSVN_RA} \ From owner-p4-projects@FreeBSD.ORG Thu Dec 27 20:08:42 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AC4B416A469; Thu, 27 Dec 2007 20:08:42 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4DEFF16A417 for ; Thu, 27 Dec 2007 20:08:42 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 443FB13C442 for ; Thu, 27 Dec 2007 20:08:42 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRK8gkN063626 for ; Thu, 27 Dec 2007 20:08:42 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRK8erV063622 for perforce@freebsd.org; Thu, 27 Dec 2007 20:08:40 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 20:08:40 GMT Message-Id: <200712272008.lBRK8erV063622@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 131803 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 20:08:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=131803 Change 131803 by peter@peter_melody on 2007/12/27 20:08:23 IFC @131796 Affected files ... .. //depot/projects/hammer/bin/cp/cp.c#14 integrate .. //depot/projects/hammer/bin/mv/mv.c#11 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#74 integrate .. //depot/projects/hammer/sbin/Makefile#47 integrate .. //depot/projects/hammer/sbin/ddb/Makefile#1 branch .. //depot/projects/hammer/sbin/ddb/ddb.8#1 branch .. //depot/projects/hammer/sbin/ddb/ddb.c#1 branch .. //depot/projects/hammer/sbin/ddb/ddb.h#1 branch .. //depot/projects/hammer/sbin/ddb/ddb_script.c#1 branch .. //depot/projects/hammer/sbin/savecore/savecore.8#9 integrate .. //depot/projects/hammer/sbin/savecore/savecore.c#15 integrate .. //depot/projects/hammer/share/colldef/Makefile#19 integrate .. //depot/projects/hammer/share/colldef/README#2 integrate .. //depot/projects/hammer/share/colldef/map.ISO8859-9#1 branch .. //depot/projects/hammer/share/colldef/tr_TR.ISO8859-9.src#1 branch .. //depot/projects/hammer/share/man/man4/Makefile#100 integrate .. //depot/projects/hammer/share/man/man4/bge.4#25 integrate .. //depot/projects/hammer/share/man/man4/ddb.4#12 integrate .. //depot/projects/hammer/share/man/man4/textdump.4#1 branch .. //depot/projects/hammer/share/mklocale/Makefile#17 integrate .. //depot/projects/hammer/share/mklocale/tr_TR.ISO8859-9.src#1 branch .. //depot/projects/hammer/share/timedef/tr_TR.ISO8859-9.src#2 integrate .. //depot/projects/hammer/share/timedef/tr_TR.UTF-8.src#2 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#164 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_watchdog.c#8 integrate .. //depot/projects/hammer/sys/amd64/include/vmparam.h#26 integrate .. //depot/projects/hammer/sys/arm/at91/uart_dev_at91usart.c#8 integrate .. //depot/projects/hammer/sys/arm/include/vmparam.h#10 integrate .. //depot/projects/hammer/sys/boot/powerpc/ofw/Makefile#2 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_low.h#5 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_ntoskrnl.c#47 integrate .. //depot/projects/hammer/sys/conf/NOTES#134 integrate .. //depot/projects/hammer/sys/conf/files#169 integrate .. //depot/projects/hammer/sys/conf/files.i386#88 integrate .. //depot/projects/hammer/sys/conf/options#120 integrate .. //depot/projects/hammer/sys/ddb/db_capture.c#1 branch .. //depot/projects/hammer/sys/ddb/db_command.c#21 integrate .. //depot/projects/hammer/sys/ddb/db_command.h#3 integrate .. //depot/projects/hammer/sys/ddb/db_input.c#7 integrate .. //depot/projects/hammer/sys/ddb/db_lex.c#4 integrate .. //depot/projects/hammer/sys/ddb/db_lex.h#3 integrate .. //depot/projects/hammer/sys/ddb/db_main.c#5 integrate .. //depot/projects/hammer/sys/ddb/db_output.c#10 integrate .. //depot/projects/hammer/sys/ddb/db_script.c#1 branch .. //depot/projects/hammer/sys/ddb/db_textdump.c#1 branch .. //depot/projects/hammer/sys/ddb/ddb.h#15 integrate .. //depot/projects/hammer/sys/dev/acpica/Osd/OsdDebug.c#10 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_thermal.c#31 integrate .. //depot/projects/hammer/sys/dev/bge/if_bge.c#77 integrate .. //depot/projects/hammer/sys/dev/bge/if_bgereg.h#40 integrate .. //depot/projects/hammer/sys/dev/dcons/dcons_os.c#14 integrate .. //depot/projects/hammer/sys/dev/ofw/ofw_console.c#22 integrate .. //depot/projects/hammer/sys/dev/pci/pci_user.c#15 integrate .. //depot/projects/hammer/sys/dev/sio/sio.c#58 integrate .. //depot/projects/hammer/sys/dev/snp/snp.c#25 integrate .. //depot/projects/hammer/sys/dev/syscons/syscons.c#42 integrate .. //depot/projects/hammer/sys/dev/uart/uart_core.c#18 integrate .. //depot/projects/hammer/sys/dev/usb/ums.c#24 integrate .. //depot/projects/hammer/sys/fs/unionfs/union_subr.c#25 integrate .. //depot/projects/hammer/sys/i386/conf/GENERIC.hints#10 integrate .. //depot/projects/hammer/sys/i386/i386/machdep.c#84 integrate .. //depot/projects/hammer/sys/i386/i386/mp_watchdog.c#6 integrate .. //depot/projects/hammer/sys/i386/include/vmparam.h#13 integrate .. //depot/projects/hammer/sys/ia64/ia64/machdep.c#66 integrate .. //depot/projects/hammer/sys/ia64/include/vmparam.h#14 integrate .. //depot/projects/hammer/sys/kern/kern_clock.c#44 integrate .. //depot/projects/hammer/sys/kern/kern_shutdown.c#48 integrate .. //depot/projects/hammer/sys/kern/subr_kdb.c#21 integrate .. //depot/projects/hammer/sys/kern/subr_witness.c#67 integrate .. //depot/projects/hammer/sys/kern/tty_cons.c#24 integrate .. //depot/projects/hammer/sys/kern/vfs_bio.c#80 integrate .. //depot/projects/hammer/sys/kern/vfs_mount.c#85 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#119 integrate .. //depot/projects/hammer/sys/net/bpf.c#55 integrate .. //depot/projects/hammer/sys/net/bpf_filter.c#8 integrate .. //depot/projects/hammer/sys/net/if_enc.c#4 integrate .. //depot/projects/hammer/sys/net/route.c#31 integrate .. //depot/projects/hammer/sys/net/route.h#18 integrate .. //depot/projects/hammer/sys/netgraph/ng_base.c#52 integrate .. //depot/projects/hammer/sys/netgraph/ng_pppoe.c#25 integrate .. //depot/projects/hammer/sys/netgraph/ng_pppoe.h#11 integrate .. //depot/projects/hammer/sys/netinet/ip_dummynet.c#46 integrate .. //depot/projects/hammer/sys/pc98/cbus/sio.c#12 integrate .. //depot/projects/hammer/sys/pc98/pc98/machdep.c#21 integrate .. //depot/projects/hammer/sys/powerpc/aim/machdep.c#2 integrate .. //depot/projects/hammer/sys/powerpc/include/vmparam.h#9 integrate .. //depot/projects/hammer/sys/powerpc/powermac/pswitch.c#5 integrate .. //depot/projects/hammer/sys/security/audit/audit_pipe.c#8 integrate .. //depot/projects/hammer/sys/security/mac_test/mac_test.c#46 integrate .. //depot/projects/hammer/sys/sparc64/include/vmparam.h#7 integrate .. //depot/projects/hammer/sys/sparc64/pci/psycho.c#38 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/machdep.c#52 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/pmap.c#49 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/trap.c#26 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/tsb.c#12 integrate .. //depot/projects/hammer/sys/sun4v/include/vmparam.h#5 integrate .. //depot/projects/hammer/sys/sun4v/sun4v/hvcons.c#3 integrate .. //depot/projects/hammer/sys/sun4v/sun4v/machdep.c#5 integrate .. //depot/projects/hammer/sys/sun4v/sun4v/trap.c#5 integrate .. //depot/projects/hammer/sys/sys/copyright.h#8 integrate .. //depot/projects/hammer/sys/sys/kdb.h#5 integrate .. //depot/projects/hammer/sys/sys/kernel.h#23 integrate .. //depot/projects/hammer/sys/sys/kerneldump.h#8 integrate .. //depot/projects/hammer/sys/sys/mbuf.h#63 integrate .. //depot/projects/hammer/sys/sys/param.h#100 integrate .. //depot/projects/hammer/sys/sys/priv.h#7 integrate .. //depot/projects/hammer/sys/vm/vm.h#8 integrate .. //depot/projects/hammer/sys/vm/vm_object.h#27 integrate .. //depot/projects/hammer/tools/tools/nanobsd/nanobsd.sh#15 integrate .. //depot/projects/hammer/usr.bin/ipcrm/Makefile#2 integrate .. //depot/projects/hammer/usr.bin/ipcrm/ipcrm.1#5 integrate .. //depot/projects/hammer/usr.bin/ipcrm/ipcrm.c#4 integrate .. //depot/projects/hammer/usr.bin/ipcs/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/ipcs/ipc.c#1 branch .. //depot/projects/hammer/usr.bin/ipcs/ipc.h#1 branch .. //depot/projects/hammer/usr.bin/ipcs/ipcs.c#12 integrate .. //depot/projects/hammer/usr.sbin/config/config.y#16 integrate Differences ... ==== //depot/projects/hammer/bin/cp/cp.c#14 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.57 2006/10/11 10:26:34 trhodes Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.59 2007/12/26 08:32:20 edwin Exp $"); /* * Cp copies source files to target files. @@ -210,10 +210,9 @@ /* * Case (1). Target is not a directory. */ - if (argc > 1) { - usage(); - exit(1); - } + if (argc > 1) + errx(1, "%s is not a directory", to.p_path); + /* * Need to detect the case: * cp -R dir foo ==== //depot/projects/hammer/bin/mv/mv.c#11 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.49 2007/12/17 09:02:42 dds Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.50 2007/12/27 11:33:42 dds Exp $"); #include #include @@ -65,6 +65,9 @@ #include #include +/* Exit code for a failed exec. */ +#define EXEC_FAILED 127 + int fflg, iflg, nflg, vflg; int copy(char *, char *); @@ -198,6 +201,11 @@ } } } + /* + * Rename on FreeBSD will fail with EISDIR and ENOTDIR, before failing + * with EXDEV. Therefore, copy() doesn't have to perform the checks + * specified in the Step 3 of the POSIX mv specification. + */ if (!rename(from, to)) { if (vflg) printf("%s -> %s\n", from, to); @@ -219,7 +227,7 @@ if (!S_ISLNK(sb.st_mode)) { /* Can't mv(1) a mount point. */ if (realpath(from, path) == NULL) { - warnx("cannot resolve %s: %s", from, path); + warn("cannot resolve %s: %s", from, path); return (1); } if (!statfs(path, &sfs) && @@ -252,9 +260,9 @@ struct timeval tval[2]; static u_int blen; static char *bp; + acl_t acl; mode_t oldmode; int nread, from_fd, to_fd; - acl_t acl; if ((from_fd = open(from, O_RDONLY, 0)) < 0) { warn("%s", from); @@ -305,7 +313,7 @@ } /* * POSIX 1003.2c states that if _POSIX_ACL_EXTENDED is in effect - * for dest_file, then it's ACLs shall reflect the ACLs of the + * for dest_file, then its ACLs shall reflect the ACLs of the * source_file. */ if (fpathconf(to_fd, _PC_ACL_EXTENDED) == 1 && @@ -356,112 +364,78 @@ copy(char *from, char *to) { struct stat sb; - enum clean {CLEAN_SOURCE, CLEAN_DEST, CLEAN_ODEST, CLEAN_MAX}; - char *cleanup[CLEAN_MAX]; int pid, status; - volatile int i, rval; - rval = 0; - for (i = 0; i < CLEAN_MAX; i++) - cleanup[i] = NULL; - /* - * If "to" exists and is a directory, get it out of the way. - * When the copy succeeds, delete it. - */ - if (stat(to, &sb) == 0 && S_ISDIR(sb.st_mode)) { - if (asprintf(&cleanup[CLEAN_ODEST], "%s.XXXXXX", to) == -1) { - warnx("asprintf failed"); - return (1); - + if (lstat(to, &sb) == 0) { + /* Destination path exists. */ + if (S_ISDIR(sb.st_mode)) { + if (rmdir(to) != 0) { + warn("rmdir %s", to); + return (1); + } + } else { + if (unlink(to) != 0) { + warn("unlink %s", to); + return (1); + } } - if (rename(to, cleanup[CLEAN_ODEST]) < 0) { - warn("rename of existing target from %s to %s failed", - to, cleanup[CLEAN_ODEST]); - free(cleanup[CLEAN_ODEST]); - return (1); - } + } else if (errno != ENOENT) { + warn("%s", to); + return (1); } + /* Copy source to destination. */ - cleanup[CLEAN_DEST] = to; - if ((pid = fork()) == 0) { + if (!(pid = vfork())) { execl(_PATH_CP, "mv", vflg ? "-PRpv" : "-PRp", "--", from, to, (char *)NULL); - warn("%s", _PATH_CP); - _exit(1); + _exit(EXEC_FAILED); } if (waitpid(pid, &status, 0) == -1) { - warn("%s: waitpid", _PATH_CP); - rval = 1; - goto done; + warn("%s %s %s: waitpid", _PATH_CP, from, to); + return (1); } if (!WIFEXITED(status)) { - warnx("%s: did not terminate normally", _PATH_CP); - rval = 1; - goto done; + warnx("%s %s %s: did not terminate normally", + _PATH_CP, from, to); + return (1); + } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EXEC_FAILED: + warnx("%s %s %s: exec failed", _PATH_CP, from, to); + return (1); + default: + warnx("%s %s %s: terminated with %d (non-zero) status", + _PATH_CP, from, to, WEXITSTATUS(status)); + return (1); + } + + /* Delete the source. */ + if (!(pid = vfork())) { + execl(_PATH_RM, "mv", "-rf", "--", from, (char *)NULL); + _exit(EXEC_FAILED); + } + if (waitpid(pid, &status, 0) == -1) { + warn("%s %s: waitpid", _PATH_RM, from); + return (1); } - if (WEXITSTATUS(status)) { - warnx("%s: terminated with %d (non-zero) status", - _PATH_CP, WEXITSTATUS(status)); - rval = 1; - goto done; + if (!WIFEXITED(status)) { + warnx("%s %s: did not terminate normally", _PATH_RM, from); + return (1); } - /* - * The copy succeeded. From now on the destination is where users - * will find their files. - */ - cleanup[CLEAN_DEST] = NULL; - cleanup[CLEAN_SOURCE] = from; -done: - /* Clean what needs to be cleaned. */ - for (i = 0; i < CLEAN_MAX; i++) { - if (cleanup[i] == NULL) - continue; - if (!(pid = vfork())) { - execl(_PATH_RM, "mv", "-rf", "--", cleanup[i], - (char *)NULL); - _exit(EX_OSERR); - } - if (waitpid(pid, &status, 0) == -1) { - warn("%s %s: waitpid", _PATH_RM, cleanup[i]); - rval = 1; - continue; - } - if (!WIFEXITED(status)) { - warnx("%s %s: did not terminate normally", - _PATH_RM, cleanup[i]); - rval = 1; - continue; - } - switch (WEXITSTATUS(status)) { - case 0: - break; - case EX_OSERR: - warnx("Failed to exec %s %s", _PATH_RM, cleanup[i]); - rval = 1; - continue; - default: - warnx("%s %s: terminated with %d (non-zero) status", - _PATH_RM, cleanup[i], WEXITSTATUS(status)); - rval = 1; - continue; - } - /* - * If the copy failed, and we just deleted the copy's trash, - * try to salvage the original destination, - */ - if (i == CLEAN_DEST && cleanup[CLEAN_ODEST]) { - if (rename(cleanup[CLEAN_ODEST], to) < 0) { - warn("rename back renamed existing target from %s to %s failed", - cleanup[CLEAN_ODEST], to); - rval = 1; - } - free(cleanup[CLEAN_ODEST]); - cleanup[CLEAN_ODEST] = NULL; - } + switch (WEXITSTATUS(status)) { + case 0: + break; + case EXEC_FAILED: + warnx("%s %s: exec failed", _PATH_RM, from); + return (1); + default: + warnx("%s %s: terminated with %d (non-zero) status", + _PATH_RM, from, WEXITSTATUS(status)); + return (1); } - if (cleanup[CLEAN_ODEST]) - free(cleanup[CLEAN_ODEST]); - return (rval); + return (0); } void ==== //depot/projects/hammer/games/fortune/datfiles/fortunes#74 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.252 2007/12/23 16:31:05 wilko Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.253 2007/12/25 16:36:52 schweikh Exp $ % ======================================================================= || || @@ -53846,7 +53846,7 @@ ...we must be wary of granting too much power to natural selection by viewing all basic capacities of our brain as direct adaptations. I do not doubt that natural selection acted in building our oversized -brains -- and I am equally confidant that our brains became large as +brains -- and I am equally confident that our brains became large as an adaptation for definite roles (probably a complex set of interacting functions). But these assumptions do not lead to the notion, often uncritically embraced by strict Darwinians, that all major capacities @@ -53863,7 +53863,7 @@ We must finish once and for all with the neutrality of chess. We must condemn once and for all the formula 'chess for the sake of chess,' like the formula 'art for art's sake.' We must organize shock-brigades of -chess-play ers, and begin the immediate realization of a Five-Year Plan +chess-players, and begin the immediate realization of a Five-Year Plan for chess. -- Nikolai V. Krylenko, People's Commissar for Justice (of RFSFR, later of USSR), speaking at a 1932 Congress ==== //depot/projects/hammer/sbin/Makefile#47 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.5 (Berkeley) 3/31/94 -# $FreeBSD: src/sbin/Makefile,v 1.168 2007/07/24 15:35:00 scottl Exp $ +# $FreeBSD: src/sbin/Makefile,v 1.169 2007/12/26 09:38:21 rwatson Exp $ .include @@ -15,6 +15,7 @@ clri \ comcontrol \ conscontrol \ + ddb \ ${_devd} \ devfs \ dhclient \ ==== //depot/projects/hammer/sbin/savecore/savecore.8#9 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" From: @(#)savecore.8 8.1 (Berkeley) 6/5/93 -.\" $FreeBSD: src/sbin/savecore/savecore.8,v 1.25 2005/06/14 11:24:56 ru Exp $ +.\" $FreeBSD: src/sbin/savecore/savecore.8,v 1.26 2007/12/26 11:42:10 rwatson Exp $ .\" .Dd February 24, 2005 .Dt SAVECORE 8 @@ -102,6 +102,12 @@ .Ar directory Ns Pa /vmcore.# and information about the core in .Ar directory Ns Pa /info.# +For kernel textdumps generated with the +.Xr textdump 4 +facility, output will be stored in the +.Xr tar 5 +format and named +.Ar director Ns Pa /textdump.tar.# The ``#'' is the number from the first line of the file .Ar directory Ns Pa /bounds , and it is incremented and stored back into the file each time @@ -137,6 +143,8 @@ .Sh SEE ALSO .Xr gzip 1 , .Xr getbootfile 3 , +.Xr textdump 4 , +.Xr tar 4 , .Xr dumpon 8 , .Xr syslogd 8 .Sh HISTORY @@ -144,5 +152,8 @@ .Nm utility appeared in .Bx 4.1 . +.Pp +Support for kernel textdumps appeared in +.Fx 8.0 . .Sh BUGS The minfree code does not consider the effect of compression or sparse files. ==== //depot/projects/hammer/sbin/savecore/savecore.c#15 (text+ko) ==== @@ -65,7 +65,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/savecore/savecore.c,v 1.78 2007/05/28 09:48:25 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sbin/savecore/savecore.c,v 1.79 2007/12/26 11:42:10 rwatson Exp $"); #include #include @@ -226,21 +226,155 @@ #define BLOCKSIZE (1<<12) #define BLOCKMASK (~(BLOCKSIZE-1)) +static int +DoRegularFile(int fd, off_t dumpsize, char *buf, const char *device, + const char *filename, FILE *fp) +{ + int he, hs, nr, nw, wl; + off_t dmpcnt; + + dmpcnt = 0; + he = 0; + while (dumpsize > 0) { + wl = BUFFERSIZE; + if (wl > dumpsize) + wl = dumpsize; + nr = read(fd, buf, wl); + if (nr != wl) { + if (nr == 0) + syslog(LOG_WARNING, + "WARNING: EOF on dump device"); + else + syslog(LOG_ERR, "read error on %s: %m", device); + nerr++; + return (-1); + } + if (compress) { + nw = fwrite(buf, 1, wl, fp); + } else { + for (nw = 0; nw < nr; nw = he) { + /* find a contiguous block of zeroes */ + for (hs = nw; hs < nr; hs += BLOCKSIZE) { + for (he = hs; he < nr && buf[he] == 0; + ++he) + /* nothing */ ; + /* is the hole long enough to matter? */ + if (he >= hs + BLOCKSIZE) + break; + } + + /* back down to a block boundary */ + he &= BLOCKMASK; + + /* + * 1) Don't go beyond the end of the buffer. + * 2) If the end of the buffer is less than + * BLOCKSIZE bytes away, we're at the end + * of the file, so just grab what's left. + */ + if (hs + BLOCKSIZE > nr) + hs = he = nr; + + /* + * At this point, we have a partial ordering: + * nw <= hs <= he <= nr + * If hs > nw, buf[nw..hs] contains non-zero data. + * If he > hs, buf[hs..he] is all zeroes. + */ + if (hs > nw) + if (fwrite(buf + nw, hs - nw, 1, fp) + != 1) + break; + if (he > hs) + if (fseeko(fp, he - hs, SEEK_CUR) == -1) + break; + } + } + if (nw != wl) { + syslog(LOG_ERR, + "write error on %s file: %m", filename); + syslog(LOG_WARNING, + "WARNING: vmcore may be incomplete"); + nerr++; + return (-1); + } + if (verbose) { + dmpcnt += wl; + printf("%llu\r", (unsigned long long)dmpcnt); + fflush(stdout); + } + dumpsize -= wl; + } + return (0); +} + +/* + * Specialized version of dump-reading logic for use with textdumps, which + * are written backwards from the end of the partition, and must be reversed + * before being written to the file. Textdumps are small, so do a bit less + * work to optimize/sparsify. + */ +static int +DoTextdumpFile(int fd, off_t dumpsize, off_t lasthd, char *buf, + const char *device, const char *filename, FILE *fp) +{ + int nr, nw, wl; + off_t dmpcnt, totsize; + + totsize = dumpsize; + dmpcnt = 0; + wl = 512; + if ((dumpsize % wl) != 0) { + syslog(LOG_ERR, "textdump uneven multiple of 512 on %s", + device); + nerr++; + return (-1); + } + while (dumpsize > 0) { + nr = pread(fd, buf, wl, lasthd - (totsize - dumpsize) - wl); + if (nr != wl) { + if (nr == 0) + syslog(LOG_WARNING, + "WARNING: EOF on dump device"); + else + syslog(LOG_ERR, "read error on %s: %m", device); + nerr++; + return (-1); + } + nw = fwrite(buf, 1, wl, fp); + if (nw != wl) { + syslog(LOG_ERR, + "write error on %s file: %m", filename); + syslog(LOG_WARNING, + "WARNING: textdump may be incomplete"); + nerr++; + return (-1); + } + if (verbose) { + dmpcnt += wl; + printf("%llu\r", (unsigned long long)dmpcnt); + fflush(stdout); + } + dumpsize -= wl; + } + return (0); +} + static void DoFile(const char *savedir, const char *device) { + static char filename[PATH_MAX]; static char *buf = NULL; struct kerneldumpheader kdhf, kdhl; - off_t mediasize, dumpsize, firsthd, lasthd, dmpcnt; + off_t mediasize, dumpsize, firsthd, lasthd; FILE *info, *fp; mode_t oumask; - int fd, fdinfo, error, wl; - int nr, nw, hs, he = 0; + int fd, fdinfo, error; int bounds, status; u_int sectorsize; + int istextdump; bounds = getbounds(); - dmpcnt = 0; mediasize = 0; status = STATUS_UNKNOWN; @@ -284,7 +418,13 @@ (long long)lasthd, device); goto closefd; } - if (memcmp(kdhl.magic, KERNELDUMPMAGIC, sizeof kdhl.magic)) { + istextdump = 0; + if (memcmp(kdhl.magic, TEXTDUMPMAGIC, sizeof kdhl.magic)) { + if (verbose) + printf("textdump magic on last dump header on %s\n", + device); + istextdump = 1; + } else if (memcmp(kdhl.magic, KERNELDUMPMAGIC, sizeof kdhl.magic)) { if (verbose) printf("magic mismatch on last dump header on %s\n", device); @@ -391,14 +531,16 @@ } oumask = umask(S_IRWXG|S_IRWXO); /* Restrict access to the core file.*/ if (compress) { - sprintf(buf, "vmcore.%d.gz", bounds); - fp = zopen(buf, "w"); + sprintf(filename, "%s.%d.gz", istextdump ? "textdump.tar" : + "vmcore", bounds); + fp = zopen(filename, "w"); } else { - sprintf(buf, "vmcore.%d", bounds); - fp = fopen(buf, "w"); + sprintf(filename, "%s.%d", istextdump ? "textdump.tar" : + "vmcore", bounds); + fp = fopen(filename, "w"); } if (fp == NULL) { - syslog(LOG_ERR, "%s: %m", buf); + syslog(LOG_ERR, "%s: %m", filename); close(fdinfo); nerr++; goto closefd; @@ -420,83 +562,22 @@ fclose(info); syslog(LOG_NOTICE, "writing %score to %s", - compress ? "compressed " : "", buf); + compress ? "compressed " : "", filename); - while (dumpsize > 0) { - wl = BUFFERSIZE; - if (wl > dumpsize) - wl = dumpsize; - nr = read(fd, buf, wl); - if (nr != wl) { - if (nr == 0) - syslog(LOG_WARNING, - "WARNING: EOF on dump device"); - else - syslog(LOG_ERR, "read error on %s: %m", device); - nerr++; + if (istextdump) { + if (DoTextdumpFile(fd, dumpsize, lasthd, buf, device, + filename, fp) < 0) goto closeall; - } - if (compress) { - nw = fwrite(buf, 1, wl, fp); - } else { - for (nw = 0; nw < nr; nw = he) { - /* find a contiguous block of zeroes */ - for (hs = nw; hs < nr; hs += BLOCKSIZE) { - for (he = hs; he < nr && buf[he] == 0; - ++he) - /* nothing */ ; - /* is the hole long enough to matter? */ - if (he >= hs + BLOCKSIZE) - break; - } - - /* back down to a block boundary */ - he &= BLOCKMASK; - - /* - * 1) Don't go beyond the end of the buffer. - * 2) If the end of the buffer is less than - * BLOCKSIZE bytes away, we're at the end - * of the file, so just grab what's left. - */ - if (hs + BLOCKSIZE > nr) - hs = he = nr; - - /* - * At this point, we have a partial ordering: - * nw <= hs <= he <= nr - * If hs > nw, buf[nw..hs] contains non-zero data. - * If he > hs, buf[hs..he] is all zeroes. - */ - if (hs > nw) - if (fwrite(buf + nw, hs - nw, 1, fp) - != 1) - break; - if (he > hs) - if (fseeko(fp, he - hs, SEEK_CUR) == -1) - break; - } - } - if (nw != wl) { - syslog(LOG_ERR, - "write error on vmcore.%d file: %m", bounds); - syslog(LOG_WARNING, - "WARNING: vmcore may be incomplete"); - nerr++; + } else { + if (DoRegularFile(fd, dumpsize, buf, device, filename, fp) + < 0) goto closeall; - } - if (verbose) { - dmpcnt += wl; - printf("%llu\r", (unsigned long long)dmpcnt); - fflush(stdout); - } - dumpsize -= wl; } if (verbose) printf("\n"); if (fclose(fp) < 0) { - syslog(LOG_ERR, "error on vmcore.%d: %m", bounds); + syslog(LOG_ERR, "error on %s: %m", filename); nerr++; goto closeall; } ==== //depot/projects/hammer/share/colldef/Makefile#19 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/colldef/Makefile,v 1.71 2006/11/09 18:10:33 des Exp $ +# $FreeBSD: src/share/colldef/Makefile,v 1.72 2007/12/24 10:30:08 ache Exp $ LOCALES= bg_BG.CP1251 \ be_BY.CP1131 \ @@ -34,6 +34,7 @@ sr_YU.ISO8859-5 \ sv_SE.ISO8859-1 \ sv_SE.ISO8859-15 \ + tr_TR.ISO8859-9 \ uk_UA.CP1251 \ uk_UA.ISO8859-5 \ uk_UA.KOI8-U @@ -58,7 +59,7 @@ CLEANFILES= ${FILES} ENCODINGS= Big5 Big5HKSCS CP949 eucCN eucJP eucKR GB18030 GB2312 GBK \ - ISO8859-1 ISO8859-2 ISO8859-9 ISO8859-15 SJIS US-ASCII UTF-8 + ISO8859-1 ISO8859-2 ISO8859-15 SJIS US-ASCII UTF-8 ISO8859-1_Big5= is_IS:zh_TW ISO8859-1_ISO8859-1= ${ISO8859-15_ISO8859-15} pt_PT:pt_BR @@ -79,7 +80,6 @@ US-ASCII_GB18030= la_LN:zh_CN US-ASCII_GB2312= la_LN:zh_CN US-ASCII_GBK= la_LN:zh_CN -US-ASCII_ISO8859-9= la_LN:tr_TR US-ASCII_SJIS= la_LN:ja_JP ASCIILINKS= en_AU en_CA en_GB en_NZ en_US ==== //depot/projects/hammer/share/colldef/README#2 (text+ko) ==== @@ -1,5 +1,6 @@ -$FreeBSD: src/share/colldef/README,v 1.2 2002/04/08 09:28:22 ache Exp $ +$FreeBSD: src/share/colldef/README,v 1.3 2007/12/25 21:21:26 ache Exp $ WARNING: For the compatibility sake try to keep collating table backward compatible with ASCII, i.e. add other symbols to the existent ASCII order. +For mnemonic names see ftp://std.dkuug.dk/i18n/charmaps/ ==== //depot/projects/hammer/share/man/man4/Makefile#100 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/18/93 -# $FreeBSD: src/share/man/man4/Makefile,v 1.400 2007/12/15 00:56:15 scottl Exp $ +# $FreeBSD: src/share/man/man4/Makefile,v 1.401 2007/12/26 11:35:06 rwatson Exp $ MAN= aac.4 \ acpi.4 \ @@ -355,6 +355,7 @@ tcp.4 \ tdfx.4 \ termios.4 \ + textdump.4 \ ti.4 \ tl.4 \ trm.4 \ ==== //depot/projects/hammer/share/man/man4/bge.4#25 (text+ko) ==== @@ -29,14 +29,14 @@ .\" 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/bge.4,v 1.32 2007/05/22 19:35:34 jkim Exp $ +.\" $FreeBSD: src/share/man/man4/bge.4,v 1.33 2007/12/25 19:53:26 remko Exp $ .\" -.Dd May 22, 2007 +.Dd December 25, 2007 .Dt BGE 4 .Os .Sh NAME .Nm bge -.Nd "Broadcom BCM570x/5714/5721/5750/5751/5752/5789 PCI Gigabit Ethernet adapter driver" +.Nd "Broadcom BCM570x/5714/5721/5722/5750/5751/5752/5789 PCI Gigabit Ethernet adapter driver" .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -56,7 +56,7 @@ The .Nm driver provides support for various NICs based on the Broadcom BCM570x, -5714, 5721, 5750, 5751, 5752 and 5789 families of Gigabit Ethernet +5714, 5721, 5722, 5750, 5751, 5752 and 5789 families of Gigabit Ethernet controller chips. .Pp All of these NICs are capable of 10, 100 and 1000Mbps speeds over CAT5 ==== //depot/projects/hammer/share/man/man4/ddb.4#12 (text+ko) ==== @@ -1,6 +1,7 @@ .\" .\" Mach Operating System .\" Copyright (c) 1991,1990 Carnegie Mellon University +.\" Copyright (c) 2007 Robert N. M. Watson .\" All Rights Reserved. .\" .\" Permission to use, copy, modify and distribute this software and its @@ -57,9 +58,9 @@ .\" Created. .\" [90/08/30 dbg] .\" -.\" $FreeBSD: src/share/man/man4/ddb.4,v 1.42 2007/08/09 20:14:35 njl Exp $ +.\" $FreeBSD: src/share/man/man4/ddb.4,v 1.47 2007/12/26 12:18:21 rwatson Exp $ .\" -.Dd August 6, 2007 +.Dd December 26, 2007 .Dt DDB 4 .Os .Sh NAME @@ -593,6 +594,74 @@ .It Ic help Print a short summary of the available commands and command abbreviations. +.Pp +.It Ic capture on +.It Ic capture off +.It Ic capture reset +.It Ic capture status +.Nm +supports a basic output capture facility, which can be used to retrieve the +results of debugging commands from userpsace using +.Xr sysctl 2 . +.Ic capture on +enables output capture; +.Ic capture off +disables capture. +.Ic capture reset +will clear the capture buffer and disable capture. +.Ic capture status +will report current buffer use, buffer size, and disposition of output +capture. +.Pp +Userspace processes may inspect and manage +.Nm +capture state using +.Xr sysctl 8 : +.Pp +.Dv debug.ddb.capture.bufsize +may be used to query or set the current capture buffer size. +.Pp +.Dv debug.ddb.capture.maxbufsize +may be used to query the compile-time limit on the capture buffer size. +.Pp +.Dv debug.ddb.capture.bytes +may be used to query the number of bytes of output currently in the capture +buffer. +.Pp +.Dv debug.ddb.capture.data +returns the contents of the buffer as a string to an appropriately privileged +process. +.Pp +This facility is particularly useful in concert with the scripting and +.Xr textdump 4 +facilities, allowing scripted debugging output to be captured and +committed to disk as part of a textdump for later analysis. +The contents of the capture buffer may also be inspected in a kernel core dump +using +.Xr kgdb 1 . +.Pp +.It Ic run +.It Ic script +.It Ic scripts +.It Ic unscript +Run, define, list, and delete scripts. +See the +.Sx SCRIPTING +section for more information on the scripting facility. +.Pp +.It Ic textdump set +.It Ic textdump status +.It Ic textdump unset +The +.Ic textdump set +command may be used to force the next kernel core dump to be a textdump +rather than a traditional memory dump or minidump. +.Ic textdump status +reports whether a textdump has been scheduled. +.Ic textdump unset +cancels a request to perform a textdump as the next kernel core dump. +More information may be found in +.Xr textdump 4 . .El .Sh VARIABLES The debugger accesses registers and variables as @@ -695,6 +764,131 @@ .Ql \&: and modifiers as described above. .El +.Sh SCRIPTING +.Nm +supports a basic scripting facility to allow automating tasks or responses to +specific events. +Each script consists of a list of DDB commands to be executed sequentially, +and is assigned a unique name. +Certain script names have special meaning, and will be automatically run on +various +.Nm +events if scripts by those names have been defined. +.Pp +The +.Ic script +command may be used to define a script by name. +Scripts consist of a series of +.Nm +commands separated with the +.Ic ; +character. +For example: +.Bd -literal -offset indent +script kdb.enter.panic=bt; show pcpu +script lockinfo=show alllocks; show lockedvnods +.Ed +.Pp +The +.Ic scripts +command lists currently defined scripts. +.Pp +The >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Dec 27 21:57:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1533116A4AB; Thu, 27 Dec 2007 21:57:37 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AAA5616A4A7 for ; Thu, 27 Dec 2007 21:57:36 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A38A813C4EB for ; Thu, 27 Dec 2007 21:57:36 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRLva42015861 for ; Thu, 27 Dec 2007 21:57:36 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRLvalh015858 for perforce@freebsd.org; Thu, 27 Dec 2007 21:57:36 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 27 Dec 2007 21:57:36 GMT Message-Id: <200712272157.lBRLvalh015858@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 131806 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 21:57:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131806 Change 131806 by hselasky@hselasky_laptop001 on 2007/12/27 21:57:31 This commit fixes some problems with the recently introduced DMA delay. Alfred Perlstein suggested that I return an error code from the function "usbd_transfer_stop()". The error code would be something like EWOULDBLOCK, in case stopping the USB transfer does not happen immediately. I have not done that, hence it is very rarely you need to know that. Instead I have introduced a new function called "usbd_transfer_drain()" that will only return when everything is safe and sound. This function also requires a context unlike "usbd_transfer_stop()". Also I've replaced all DELAY() in the critical path with callouts. This introduce some extra complexity, but I think that that is ok, given that it will save some complexity in the USB device drivers and save CPU cost. After this commit it should always be safe to free DMA'ed memory when the callback is called, regardless of state. With regard to function naming I've tried to mimic the callout system: callout_stop -> usbd_transfer_stop callout_drain -> usbd_transfer_drain Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#65 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.c#54 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.c#55 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#80 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#88 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#93 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#65 (text+ko) ==== @@ -3851,13 +3851,13 @@ } static void -ehci_do_dma_delay(struct usbd_bus *bus) +ehci_get_dma_delay(struct usbd_bus *bus, uint32_t *pus) { /* * Wait until the hardware has finished any possible use of * the transfer descriptor(s) and QH */ - DELAY(188); + *pus = (188); /* microseconds */ return; } @@ -3867,5 +3867,5 @@ .xfer_setup = ehci_xfer_setup, .xfer_unsetup = ehci_xfer_unsetup, .do_poll = ehci_do_poll, - .do_dma_delay = ehci_do_dma_delay, + .get_dma_delay = ehci_get_dma_delay, }; ==== //depot/projects/usb/src/sys/dev/usb/ohci.c#54 (text+ko) ==== @@ -2808,13 +2808,13 @@ } static void -ohci_do_dma_delay(struct usbd_bus *bus) +ohci_get_dma_delay(struct usbd_bus *bus, uint32_t *pus) { /* * Wait until hardware has finished any possible use of the * transfer descriptor(s) and QH */ - DELAY(1125); + *pus = (1125); /* microseconds */ return; } @@ -2824,5 +2824,5 @@ .xfer_setup = ohci_xfer_setup, .xfer_unsetup = ohci_xfer_unsetup, .do_poll = ohci_do_poll, - .do_dma_delay = ohci_do_dma_delay, + .get_dma_delay = ohci_get_dma_delay, }; ==== //depot/projects/usb/src/sys/dev/usb/uhci.c#55 (text+ko) ==== @@ -3255,13 +3255,13 @@ } static void -uhci_do_dma_delay(struct usbd_bus *bus) +uhci_get_dma_delay(struct usbd_bus *bus, uint32_t *pus) { /* * Wait until hardware has finished any possible use of the * transfer descriptor(s) and QH */ - DELAY(1125); + *pus = (1125); /* microseconds */ return; } @@ -3271,5 +3271,5 @@ .xfer_setup = uhci_xfer_setup, .xfer_unsetup = uhci_xfer_unsetup, .do_poll = uhci_do_poll, - .do_dma_delay = uhci_do_dma_delay, + .get_dma_delay = uhci_get_dma_delay, }; ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#80 (text+ko) ==== @@ -256,8 +256,6 @@ void usbd_pause_mtx(struct mtx *mtx, uint32_t ms) { - int error; - if (cold) { ms = (ms + 1) * 1024; DELAY(ms); @@ -265,11 +263,12 @@ } else { ms = USBD_MS_TO_TICKS(ms); + ms++; /* be sure that we don't return too + * early */ - if (ms == 0) { - ms = 1; + if (mtx_sleep(&ms, mtx, 0, "pause_mtx", ms)) { + /* should not happen */ } - error = mtx_sleep(&error, mtx, 0, "pause_mtx", ms); } return; } ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#88 (text+ko) ==== @@ -167,8 +167,7 @@ void (*do_poll) (struct usbd_bus *); void (*xfer_setup) (struct usbd_setup_params *parm); void (*xfer_unsetup) (struct usbd_xfer *xfer); - void (*do_dma_delay) (struct usbd_bus *); /* only used if - * "bdma_enable" is set */ + void (*get_dma_delay) (struct usbd_bus *, uint32_t *pdelay); /* USB Device and Host mode - Optional */ @@ -403,7 +402,6 @@ uint8_t toggle_next:1; /* next data toggle value */ uint8_t is_stalled:1; /* set if pipe is stalled */ - uint8_t did_dma_delay:1; /* set if we waited for DMA */ uint8_t unused:5; uint8_t iface_index; /* not used by "default pipe" */ }; @@ -517,6 +515,10 @@ uint8_t recursed_1:1; uint8_t recursed_2:1; uint8_t transferring:1; + uint8_t did_dma_delay:1; /* set if we waited for HW DMA */ + uint8_t draining:1; /* set if we are draining an USB + * transfer */ + uint8_t started:1; /* keeps track of started or stopped */ uint8_t bandwidth_reclaimed:1; uint8_t control_xfr:1; /* set if control transfer */ uint8_t control_hdr:1; /* set if control header should be @@ -533,7 +535,6 @@ uint8_t isochronous_xfr:1; /* set if isochronous transfer */ uint8_t usb_mode:1; /* shadow copy of "udev->usb_mode" */ uint8_t context:2; /* see USBD_CONTEXT_XXX */ - uint8_t needs_dma_delay:1; /* set if we need to wait for DMA */ uint8_t curr_dma_set:1; /* used by USB HC/DC driver */ }; @@ -654,11 +655,6 @@ uint8_t dma_error; /* set if virtual memory could not be * loaded */ - uint8_t dma_draining; /* set if someone is waiting for a - * BUS-DMA load operation to complete */ - uint8_t dma_no_callback; /* set if callback should not be - * called */ - uint8_t dma_tag_max; uint8_t done_sleep; /* set if done thread is sleeping */ }; ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#93 (text+ko) ==== @@ -61,10 +61,9 @@ static void usbd_premature_callback(struct usbd_xfer *xfer, usbd_status_t error); static void usbd_delayed_transfer_start(void *arg); static void usbd_bdma_work_loop(struct usbd_memory_info *info); -static void usbd_bdma_cancel_event(struct usbd_xfer *xfer); static usbd_status_t usbd_handle_request(struct usbd_xfer *xfer); static void usbd_callback_intr_td(void *arg); -static void usbd_transfer_unsetup_sub(struct usbd_memory_info *info); +static void usbd_transfer_unsetup_sub(struct usbd_memory_info *info, uint8_t need_delay); static void usbd_callback_intr_sched(struct usbd_memory_info *info); @@ -1022,7 +1021,7 @@ if (buf) { if (info->setup_refcount == 0) { /* something went wrong */ - usbd_transfer_unsetup_sub(info); + usbd_transfer_unsetup_sub(info, 0); } } if (parm.err) { @@ -1032,47 +1031,42 @@ } /*------------------------------------------------------------------------* - * usbd_dma_delay + * usbd_get_dma_delay * * The following function is called when we need to * synchronize with DMA hardware. + * + * Returns: + * 0: no DMA delay required + * Else: milliseconds of DMA delay *------------------------------------------------------------------------*/ -static void -usbd_dma_delay(struct usbd_xfer *xfer) +static uint32_t +usbd_get_dma_delay(struct usbd_bus *bus) { - struct usbd_pipe *pipe; - struct usbd_pipe *pipe_end; + uint32_t temp = 0; - if (!xfer->flags_int.needs_dma_delay) { - return; + if (bus->methods->get_dma_delay) { + (bus->methods->get_dma_delay)(bus, &temp); + /* round up and convert to milliseconds */ + temp += 0x3FF; + temp /= 0x400; } - xfer->flags_int.needs_dma_delay = 0; - - if (xfer->pipe->did_dma_delay) { - return; - } - (xfer->udev->bus->methods->do_dma_delay) - (xfer->udev->bus); - - /* - * Tell the other USB transfers that we did a delay to avoid - * extra delays ! - */ - pipe = xfer->udev->pipes; - pipe_end = xfer->udev->pipes_end; - - while (pipe != pipe_end) { - pipe->did_dma_delay = 1; - pipe++; - } - return; + return (temp); } static void -usbd_transfer_unsetup_sub(struct usbd_memory_info *info) +usbd_transfer_unsetup_sub(struct usbd_memory_info *info, uint8_t needs_delay) { struct usbd_page_cache *pc; + uint32_t temp; + /* wait for any outstanding DMA operations */ + + if (needs_delay) { + temp = usbd_get_dma_delay(info->bus); + usbd_pause_mtx(info->usb_mtx, temp); + } + /* wait for interrupt thread to exit */ while (info->done_thread) { @@ -1200,17 +1194,8 @@ info->setup_refcount--; if (info->setup_refcount == 0) { - /* - * We need to wait for any DMA - * transactions to complete to be - * absolutely sure that nobody will - * write to freed memory ! - */ - if (needs_delay) { - (info->bus->methods->do_dma_delay) - (info->bus); - } - usbd_transfer_unsetup_sub(info); + usbd_transfer_unsetup_sub(info, + needs_delay); } else { mtx_unlock(info->usb_mtx); } @@ -1559,13 +1544,27 @@ /* sanity checks */ - if (!xfer->flags_int.open || xfer->flags_int.transferring) { + if (!xfer->flags_int.started || xfer->flags_int.transferring) { + PRINTFN(-1, ("sanity checks failed\n")); return; } + + /* Only open the USB transfer once! */ + if (!xfer->flags_int.open) { + xfer->flags_int.open = 1; + + mtx_lock(xfer->usb_mtx); + (xfer->pipe->methods->open) (xfer); + mtx_unlock(xfer->usb_mtx); + } + /* set "transferring" and "recursed_2" flags */ xfer->flags_int.transferring = 1; xfer->flags_int.recursed_2 = 1; + /* clear "did_dma_delay" flag */ + xfer->flags_int.did_dma_delay = 0; + /* clear lengths and frame counts by default */ xfer->sumlen = 0; xfer->actlen = 0; @@ -1635,10 +1634,6 @@ if (xfer->flags_int.bdma_enable) { - /* synchronize with DMA hardware */ - - usbd_dma_delay(xfer); - /* * If the transfer is not inserted, insert * the transfer into the DMA queue @@ -1650,13 +1645,6 @@ info = xfer->usb_root; /* - * If there is no current transfer, set one - */ - if (info->dma_curr_xfer == NULL) { - info->dma_curr_xfer = xfer; - info->dma_no_callback = 1; - } - /* * Only call the BUS-DMA work loop when it is not busy */ if (info->dma_refcount == 0) { @@ -1697,33 +1685,6 @@ } /*------------------------------------------------------------------------* - * usbd_bdma_cancel_event - * - * This function will cancel any BUS-DMA operations. - *------------------------------------------------------------------------*/ -static void -usbd_bdma_cancel_event(struct usbd_xfer *xfer) -{ - struct usbd_memory_info *info; - - info = xfer->usb_root; - - mtx_assert(info->priv_mtx, MA_OWNED); - - if (info->dma_curr_xfer == xfer) { - /* prepare next USB transfer to load, if any */ - info->dma_curr_xfer = - LIST_PREV(&(info->dma_head), xfer, dma_list); - info->dma_no_callback = 1; - } - if (xfer->dma_list.le_prev) { - LIST_REMOVE(xfer, dma_list); - xfer->dma_list.le_prev = NULL; - } - return; -} - -/*------------------------------------------------------------------------* * usbd_bdma_work_loop * * This function handles loading of virtual buffers into DMA. @@ -1739,29 +1700,28 @@ mtx_assert(info->priv_mtx, MA_OWNED); - if (info->dma_draining) { - /* someone is waiting for us to drain */ - info->dma_draining = 0; - wakeup(&(info->dma_draining)); - } -repeat: +load_complete: xfer = info->dma_curr_xfer; - if (xfer) { - - if (!info->dma_no_callback) { - /* prepare next USB transfer to load, if any */ info->dma_curr_xfer = LIST_PREV(&(info->dma_head), xfer, dma_list); - info->dma_no_callback = 1; LIST_REMOVE(xfer, dma_list); xfer->dma_list.le_prev = NULL; /* check for DMA error */ - if (info->dma_error) { + if (!xfer->flags_int.open) { + + /* we got cancelled */ + + info->dma_refcount++; + usbd_premature_callback(xfer, + USBD_CANCELLED); + info->dma_refcount--; + + } else if (info->dma_error) { /* prevent recursion by increasing refcount */ @@ -1774,27 +1734,35 @@ info->dma_refcount--; - goto repeat; - } + } else { /* go ahead */ usbd_bdma_pre_sync(xfer); /* finally start the hardware */ usbd_pipe_enter_wrapper(xfer); - /* load next USB transfer, if any */ - goto repeat; - } + } } else { + /* get first USB transfer */ + info->dma_curr_xfer = + LIST_FIRST(&(info->dma_head)); + } + + xfer = info->dma_curr_xfer; + if (xfer == NULL) { /* nothing more to do */ return; } + if (!xfer->flags_int.open) { + /* we got cancelled */ + goto load_complete; + } + /* reset BUS-DMA load state */ info->dma_refcount = 1; info->dma_error = 0; - info->dma_no_callback = 0; if (xfer->flags_int.isochronous_xfr) { /* only one frame buffer */ @@ -1848,7 +1816,7 @@ if (--(info->dma_refcount) == 0) { /* we are complete */ - goto repeat; + goto load_complete; } return; } @@ -1954,20 +1922,20 @@ } mtx_assert(xfer->priv_mtx, MA_OWNED); - if (!xfer->flags_int.open) { - xfer->flags_int.open = 1; + /* mark the USB transfer started */ - /* - * open transfer - */ - mtx_lock(xfer->usb_mtx); - (xfer->pipe->methods->open) (xfer); - mtx_unlock(xfer->usb_mtx); + if (!xfer->flags_int.started) { + xfer->flags_int.started = 1; } + + /* check if the USB transfer callback is already transferring */ + if (xfer->flags_int.transferring) { return; } + /* call callback */ + usbd_callback_wrapper(xfer, NULL, USBD_CONTEXT_START); return; @@ -1978,6 +1946,8 @@ * * NOTE: Calling this function more than one time will only * result in a single transfer stop. + * NOTE: When this function returns it is not safe to free nor + * reuse any DMA buffers. See "usbd_transfer_drain()". *------------------------------------------------------------------------*/ void usbd_transfer_stop(struct usbd_xfer *xfer) @@ -1988,26 +1958,27 @@ } mtx_assert(xfer->priv_mtx, MA_OWNED); + /* check if the USB transfer was ever opened */ + if (!xfer->flags_int.open) { + /* nothing to do except clearing the "started" flag */ + xfer->flags_int.started = 0; return; } /* * close transfer */ mtx_lock(xfer->usb_mtx); + (xfer->pipe->methods->close) (xfer); + mtx_unlock(xfer->usb_mtx); /* - * NOTE: we need to exclude the - * host controller driver from - * reading "flags_int" when we - * clear "flags_int.open" ! + * Clear "open" and "started" after closing the USB transfer + * so that we don't get a race updating "flags_int" ! */ xfer->flags_int.open = 0; + xfer->flags_int.started = 0; - (xfer->pipe->methods->close) (xfer); - - mtx_unlock(xfer->usb_mtx); - #ifdef USB_DEBUG /* check error value */ if (xfer->error != USBD_CANCELLED) { @@ -2015,8 +1986,6 @@ usbd_errstr(xfer->error))); } #endif - /* cancel loading of virtual buffers, if any */ - usbd_bdma_cancel_event(xfer); /* * Check if we are doing a transfer and if so @@ -2036,14 +2005,13 @@ * usbd_transfer_drain * * This function will stop the USB transfer and wait for any - * additional BUS-DMA operations to complete. Buffers that are loaded - * into DMA can safely be freed after that this function has returned. + * additional BUS-DMA and HW-DMA operations to complete. Buffers that + * are loaded into DMA can safely be freed or reused after that this + * function has returned. *------------------------------------------------------------------------*/ void usbd_transfer_drain(struct usbd_xfer *xfer) { - struct usbd_memory_info *info; - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, "usbd_transfer_drain can sleep!"); @@ -2058,19 +2026,13 @@ usbd_transfer_stop(xfer); - info = xfer->usb_root; - - if (info->dma_refcount > 0) { - + while (xfer->flags_int.transferring) { + xfer->flags_int.draining = 1; /* - * Wait until the current outstanding DMA - * operation is complete before we return. - * That way we are sure that no DMA operation - * belonging to our USB transfer is pending! + * Wait until the current outstanding USB + * transfer is complete ! */ - info->dma_draining = 1; - - if (mtx_sleep(&(info->dma_draining), xfer->priv_mtx, + if (mtx_sleep(&(xfer->flags_int), xfer->priv_mtx, 0, "usbdrain", 0)) { /* should not happen */ } @@ -2220,7 +2182,6 @@ goto repeat; } } - wakeup(&(info->done_thread)); info->done_thread = NULL; mtx_unlock(info->usb_mtx); @@ -2228,6 +2189,20 @@ return; } +static void +usbd_dma_delay_done_cb(struct usbd_xfer *xfer) +{ + mtx_assert(xfer->usb_mtx, MA_OWNED); + + PRINTFN(2, ("Completed %p\n", xfer)); + + /* queue callback for execution */ + usbd_callback_wrapper(xfer, NULL, USBD_CONTEXT_CALLBACK); + + mtx_unlock(xfer->usb_mtx); + return; +} + /*------------------------------------------------------------------------* * usbd_callback_wrapper * @@ -2245,7 +2220,7 @@ { struct usbd_bus *bus; uint32_t timeout; - uint8_t temp; + uint32_t temp; uint8_t dropped_usb_mtx = 0; if (mtx_owned(xfer->priv_mtx)) { @@ -2362,6 +2337,36 @@ /* check first recurse flag */ if (!xfer->flags_int.recursed_1) { do { + /* + * If we have a non-hardware induced error we + * need to do the DMA delay! + */ + if (xfer->flags_int.transferring && + xfer->flags_int.bdma_enable && + ((xfer->error == USBD_CANCELLED) || + (xfer->error == USBD_TIMEOUT)) && + (!xfer->flags_int.did_dma_delay)) { + + /* only do this one time */ + xfer->flags_int.did_dma_delay = 1; + + temp = usbd_get_dma_delay(xfer->udev->bus); + + PRINTFN(2, ("DMA delay, %u ms, " + "on %p\n", temp, xfer)); + + if (xfer->flags.use_polling) { + DELAY(temp * 1024); + } else { + mtx_lock(xfer->usb_mtx); + usb_callout_reset(&(xfer->timeout_handle), + USBD_MS_TO_TICKS(temp) + 1, + (void *)&usbd_dma_delay_done_cb, xfer); + mtx_unlock(xfer->usb_mtx); + break; /* wait for callback */ + } + } + /* set both recurse flags */ xfer->flags_int.recursed_1 = 1; xfer->flags_int.recursed_2 = 1; @@ -2377,6 +2382,17 @@ xfer->flags_int.transferring = 0; if (xfer->error) { + /* + * Check if we got started after that + * we got cancelled, but before we + * managed to deliver the + * USBD_CANCELLED message! + */ + if ((xfer->error == USBD_CANCELLED) && + (xfer->flags_int.started)) { + /* restart by doing a second loop */ + xfer->flags_int.recursed_2 = 0; + } xfer->usb_state = USBD_ST_ERROR; goto callback; } @@ -2450,6 +2466,16 @@ /* check second recurse flag */ } while (!xfer->flags_int.recursed_2); + if (xfer->flags_int.draining && + (!xfer->flags_int.transferring)) { + /* + * "usbd_transfer_drain()" is waiting for us + * to stop transferring. + */ + xfer->flags_int.draining = 0; + wakeup(&(xfer->flags_int)); + } + /* clear first recurse flag */ xfer->flags_int.recursed_1 = 0; } else { @@ -2695,19 +2721,6 @@ if (error) { /* end of control transfer, if any */ xfer->flags_int.control_act = 0; - - if ((error == USBD_CANCELLED) || - (error == USBD_TIMEOUT)) { - if (xfer->flags_int.bdma_enable && - xfer->flags_int.transferring) { - /* - * We need to wait for DMA - * transactions to complete ! - */ - xfer->flags_int.needs_dma_delay = 1; - xfer->pipe->did_dma_delay = 0; - } - } } else { /* check for short transfers */ if (xfer->actlen < xfer->sumlen) { From owner-p4-projects@FreeBSD.ORG Thu Dec 27 21:59:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C0B3A16A420; Thu, 27 Dec 2007 21:59:39 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E53616A419 for ; Thu, 27 Dec 2007 21:59:39 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 57B1013C448 for ; Thu, 27 Dec 2007 21:59:39 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRLxcUn015931 for ; Thu, 27 Dec 2007 21:59:38 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRLxcZ8015928 for perforce@freebsd.org; Thu, 27 Dec 2007 21:59:38 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 27 Dec 2007 21:59:38 GMT Message-Id: <200712272159.lBRLxcZ8015928@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 131807 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 21:59:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131807 Change 131807 by hselasky@hselasky_laptop001 on 2007/12/27 21:58:59 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#94 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#94 (text+ko) ==== @@ -1046,10 +1046,10 @@ uint32_t temp = 0; if (bus->methods->get_dma_delay) { - (bus->methods->get_dma_delay)(bus, &temp); - /* round up and convert to milliseconds */ - temp += 0x3FF; - temp /= 0x400; + (bus->methods->get_dma_delay) (bus, &temp); + /* round up and convert to milliseconds */ + temp += 0x3FF; + temp /= 0x400; } return (temp); } @@ -1066,7 +1066,6 @@ temp = usbd_get_dma_delay(info->bus); usbd_pause_mtx(info->usb_mtx, temp); } - /* wait for interrupt thread to exit */ while (info->done_thread) { @@ -1194,8 +1193,8 @@ info->setup_refcount--; if (info->setup_refcount == 0) { - usbd_transfer_unsetup_sub(info, - needs_delay); + usbd_transfer_unsetup_sub(info, + needs_delay); } else { mtx_unlock(info->usb_mtx); } @@ -1548,7 +1547,6 @@ PRINTFN(-1, ("sanity checks failed\n")); return; } - /* Only open the USB transfer once! */ if (!xfer->flags_int.open) { xfer->flags_int.open = 1; @@ -1557,7 +1555,6 @@ (xfer->pipe->methods->open) (xfer); mtx_unlock(xfer->usb_mtx); } - /* set "transferring" and "recursed_2" flags */ xfer->flags_int.transferring = 1; xfer->flags_int.recursed_2 = 1; @@ -1704,48 +1701,48 @@ xfer = info->dma_curr_xfer; if (xfer) { - /* prepare next USB transfer to load, if any */ - info->dma_curr_xfer = - LIST_PREV(&(info->dma_head), xfer, dma_list); - LIST_REMOVE(xfer, dma_list); - xfer->dma_list.le_prev = NULL; + /* prepare next USB transfer to load, if any */ + info->dma_curr_xfer = + LIST_PREV(&(info->dma_head), xfer, dma_list); + LIST_REMOVE(xfer, dma_list); + xfer->dma_list.le_prev = NULL; - /* check for DMA error */ + /* check for DMA error */ - if (!xfer->flags_int.open) { + if (!xfer->flags_int.open) { - /* we got cancelled */ + /* we got cancelled */ - info->dma_refcount++; - usbd_premature_callback(xfer, - USBD_CANCELLED); - info->dma_refcount--; + info->dma_refcount++; + usbd_premature_callback(xfer, + USBD_CANCELLED); + info->dma_refcount--; - } else if (info->dma_error) { + } else if (info->dma_error) { - /* prevent recursion by increasing refcount */ + /* prevent recursion by increasing refcount */ - info->dma_refcount++; + info->dma_refcount++; - /* report error */ + /* report error */ - usbd_premature_callback(xfer, - USBD_DMA_LOAD_FAILED); + usbd_premature_callback(xfer, + USBD_DMA_LOAD_FAILED); - info->dma_refcount--; + info->dma_refcount--; - } else { + } else { /* go ahead */ usbd_bdma_pre_sync(xfer); /* finally start the hardware */ usbd_pipe_enter_wrapper(xfer); - } + } } else { /* get first USB transfer */ - info->dma_curr_xfer = - LIST_FIRST(&(info->dma_head)); + info->dma_curr_xfer = + LIST_FIRST(&(info->dma_head)); } xfer = info->dma_curr_xfer; @@ -1753,12 +1750,10 @@ /* nothing more to do */ return; } - if (!xfer->flags_int.open) { /* we got cancelled */ goto load_complete; } - /* reset BUS-DMA load state */ info->dma_refcount = 1; @@ -1925,15 +1920,13 @@ /* mark the USB transfer started */ if (!xfer->flags_int.started) { - xfer->flags_int.started = 1; + xfer->flags_int.started = 1; } - /* check if the USB transfer callback is already transferring */ if (xfer->flags_int.transferring) { return; } - /* call callback */ usbd_callback_wrapper(xfer, NULL, USBD_CONTEXT_START); @@ -1946,7 +1939,7 @@ * * NOTE: Calling this function more than one time will only * result in a single transfer stop. - * NOTE: When this function returns it is not safe to free nor + * NOTE: When this function returns it is not safe to free nor * reuse any DMA buffers. See "usbd_transfer_drain()". *------------------------------------------------------------------------*/ void @@ -2344,29 +2337,28 @@ if (xfer->flags_int.transferring && xfer->flags_int.bdma_enable && ((xfer->error == USBD_CANCELLED) || - (xfer->error == USBD_TIMEOUT)) && + (xfer->error == USBD_TIMEOUT)) && (!xfer->flags_int.did_dma_delay)) { - /* only do this one time */ - xfer->flags_int.did_dma_delay = 1; + /* only do this one time */ + xfer->flags_int.did_dma_delay = 1; - temp = usbd_get_dma_delay(xfer->udev->bus); + temp = usbd_get_dma_delay(xfer->udev->bus); - PRINTFN(2, ("DMA delay, %u ms, " - "on %p\n", temp, xfer)); + PRINTFN(2, ("DMA delay, %u ms, " + "on %p\n", temp, xfer)); - if (xfer->flags.use_polling) { - DELAY(temp * 1024); - } else { - mtx_lock(xfer->usb_mtx); - usb_callout_reset(&(xfer->timeout_handle), - USBD_MS_TO_TICKS(temp) + 1, - (void *)&usbd_dma_delay_done_cb, xfer); - mtx_unlock(xfer->usb_mtx); - break; /* wait for callback */ - } + if (xfer->flags.use_polling) { + DELAY(temp * 1024); + } else { + mtx_lock(xfer->usb_mtx); + usb_callout_reset(&(xfer->timeout_handle), + USBD_MS_TO_TICKS(temp) + 1, + (void *)&usbd_dma_delay_done_cb, xfer); + mtx_unlock(xfer->usb_mtx); + break; /* wait for callback */ + } } - /* set both recurse flags */ xfer->flags_int.recursed_1 = 1; xfer->flags_int.recursed_2 = 1; @@ -2475,7 +2467,6 @@ xfer->flags_int.draining = 0; wakeup(&(xfer->flags_int)); } - /* clear first recurse flag */ xfer->flags_int.recursed_1 = 0; } else { From owner-p4-projects@FreeBSD.ORG Thu Dec 27 22:19:00 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1817216A418; Thu, 27 Dec 2007 22:19:00 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8AB4516A419 for ; Thu, 27 Dec 2007 22:18:59 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 842A113C43E for ; Thu, 27 Dec 2007 22:18:59 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRMIxsK024694 for ; Thu, 27 Dec 2007 22:18:59 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRMIxVT024691 for perforce@freebsd.org; Thu, 27 Dec 2007 22:18:59 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 27 Dec 2007 22:18:59 GMT Message-Id: <200712272218.lBRMIxVT024691@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 131808 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 22:19:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=131808 Change 131808 by hselasky@hselasky_laptop001 on 2007/12/27 22:18:49 This is the first step towards a currently FreeBSD specific extension to the USB CDC Ethernet protocol. The extension will allow for super high IP transfer rates without the need to copy any data or per-IP-packet interrupts, just like an ordinary ethernet controller. Background: When I started reworking the USB ethernet drivers I noticed that the authors had in mind allocating and queueing multiple USB transfers at a time to boost performance. Unfortunatly that would not have increased any performance, because the USB Host Controller would have had to interrupt for every IP-packet anyway, which would have been the boottlneck. Now that I have implemented something I have called "multi sub-framing" it will finally become realistic to do exactly that, and in a very efficient way using only one USB transfer per direction! Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_cdc.h#7 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_cdc.h#7 (text+ko) ==== @@ -188,4 +188,13 @@ #define UCDC_MDM_PARITY_ERR 0x20 #define UCDC_MDM_OVERRUN_ERR 0x40 +/* Multi Frame Ethernet Header */ +typedef struct { + uByte bSig0[2]; /* "MF" */ + uDWord dwFramesAhead; + uDWord dwFramesAheadInverse; +} __packed usb_cdc_mf_eth_header_t; + +#define CDC_MF_ETH_HEADER_SIZE 10 /* bytes */ + #endif /* _USB_CDC_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Dec 27 23:05:51 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C42C16A421; Thu, 27 Dec 2007 23:05:51 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D207D16A41B for ; Thu, 27 Dec 2007 23:05:50 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B597013C448 for ; Thu, 27 Dec 2007 23:05:50 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRN5non044927 for ; Thu, 27 Dec 2007 23:05:49 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRN5nkc044924 for perforce@freebsd.org; Thu, 27 Dec 2007 23:05:49 GMT (envelope-from peter@freebsd.org) Date: Thu, 27 Dec 2007 23:05:49 GMT Message-Id: <200712272305.lBRN5nkc044924@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 131813 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 23:05:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=131813 Change 131813 by peter@peter_melody on 2007/12/27 23:05:42 Seems I broke somethign with the 32 bit cross compile stuff. Temporarily disable loader builds. Affected files ... .. //depot/projects/hammer/sys/boot/Makefile#19 edit Differences ... ==== //depot/projects/hammer/sys/boot/Makefile#19 (text+ko) ==== @@ -18,6 +18,6 @@ .endif # Pick the machine-dependent subdir based on the target architecture. -SUBDIR+= ${MACHINE:S/amd64/i386/:S/sun4v/sparc64/} +#SUBDIR+= ${MACHINE:S/amd64/i386/:S/sun4v/sparc64/} .include From owner-p4-projects@FreeBSD.ORG Thu Dec 27 23:46:34 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1486616A41B; Thu, 27 Dec 2007 23:46:34 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AC1E416A46E for ; Thu, 27 Dec 2007 23:46:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AAAF513C457 for ; Thu, 27 Dec 2007 23:46:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRNkXUN060094 for ; Thu, 27 Dec 2007 23:46:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRNkXno060091 for perforce@freebsd.org; Thu, 27 Dec 2007 23:46:33 GMT (envelope-from jb@freebsd.org) Date: Thu, 27 Dec 2007 23:46:33 GMT Message-Id: <200712272346.lBRNkXno060091@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 131818 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 23:46:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=131818 Change 131818 by jb@jb_freebsd1 on 2007/12/27 23:46:10 Change the lapic timer hook to a per-cpu hook so that it can be used as an enable as well. Setting the pointer to NULL is a pretty good way to disable it. Affected files ... .. //depot/projects/dtrace/src/sys/sys/dtrace_bsd.h#8 edit Differences ... ==== //depot/projects/dtrace/src/sys/sys/dtrace_bsd.h#8 (text+ko) ==== @@ -46,7 +46,7 @@ * * Defining them here avoids a proliferation of header files. */ -extern cyclic_clock_func_t lapic_cyclic_clock_func; +extern cyclic_clock_func_t lapic_cyclic_clock_func[]; /* * The dtrace module handles traps that occur during a DTrace probe. From owner-p4-projects@FreeBSD.ORG Thu Dec 27 23:54:05 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 36E2916A419; Thu, 27 Dec 2007 23:54:05 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C4A4B16A417 for ; Thu, 27 Dec 2007 23:54:04 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C3C0B13C469 for ; Thu, 27 Dec 2007 23:54:04 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBRNs4uo062461 for ; Thu, 27 Dec 2007 23:54:04 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBRNs4ja062454 for perforce@freebsd.org; Thu, 27 Dec 2007 23:54:04 GMT (envelope-from jb@freebsd.org) Date: Thu, 27 Dec 2007 23:54:04 GMT Message-Id: <200712272354.lBRNs4ja062454@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 131823 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Dec 2007 23:54:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=131823 Change 131823 by jb@jb_freebsd1 on 2007/12/27 23:53:59 The HPET on my Dell 531S is not per-cpu, so the HPET isn't much use as a cyclic timer interrupt source. We need interrupts on each CPU and cyclic timers can be enabled on one CPU and not on others. Hook the cyclic timer into the APIC timer interrupt at it's fastest rate rather than at hardclock. Use the presence of the (now) per-cpu cyclic timer hook to indicate if the cyclic timer is enabled. XXX More code is required to allow the cyclic timer fire interval to be set -- like the hz, stathz and profhz counters -- to avoid calling the cyclic function earlier than required. Affected files ... .. //depot/projects/dtrace/src/sys/amd64/amd64/local_apic.c#12 edit .. //depot/projects/dtrace/src/sys/cddl/amd64/cyclic_machdep.c#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/amd64/amd64/local_apic.c#12 (text+ko) ==== @@ -68,7 +68,7 @@ #ifdef KDTRACE_HOOKS #include -cyclic_clock_func_t lapic_cyclic_clock_func; +cyclic_clock_func_t lapic_cyclic_clock_func[MAXCPU]; #endif /* Sanity checks on IDT vectors. */ @@ -674,7 +674,18 @@ (*la->la_timer_count)++; critical_enter(); - /* Fire hardclock at hz. */ +#ifdef KDTRACE_HOOKS + /* + * If the DTrace hooks are configured and a callback function + * has been registered, then call it to process the high speed + * timers. + */ + int cpu = PCPU_GET(cpuid); + if (lapic_cyclic_clock_func[cpu] != NULL) + (*lapic_cyclic_clock_func[cpu])(); +#endif + +/* Fire hardclock at hz. */ la->la_hard_ticks += hz; if (la->la_hard_ticks >= lapic_timer_hz) { la->la_hard_ticks -= lapic_timer_hz; @@ -682,19 +693,6 @@ hardclock(TRAPF_USERMODE(frame), TRAPF_PC(frame)); else hardclock_cpu(TRAPF_USERMODE(frame)); - -#ifdef KDTRACE_HOOKS - /* - * If the DTrace hooks are configured and a callback - * function has been registered, then call it to process - * the high speed timers. If this function is registered - * here, then there mustn't be a High Performance Event - * Timer (HPET) on the CPU. A HPET provides higher - * performance timer interrupts. - */ - if (lapic_cyclic_clock_func != NULL) - (*lapic_cyclic_clock_func)(); -#endif } /* Fire statclock at stathz. */ ==== //depot/projects/dtrace/src/sys/cddl/amd64/cyclic_machdep.c#3 (text+ko) ==== @@ -55,7 +55,6 @@ }; static hrtime_t resolution; -static int hpet_present = 0; static void *cyclic_lock_ih; static void *cyclic_low_ih; @@ -104,8 +103,6 @@ /* Default the resolution. */ resolution = ticks * 1000000; - /* XXX Need to check here if the HPET is available. */ - /* * Add a software interrupt handlers for low priority cyclic * events. @@ -117,18 +114,16 @@ /* Register the cyclic backend. */ cyclic_init(&be, resolution); - - /* If the HPET isn't present, use the slow method. */ - if (!hpet_present) - /* Register the cyclic clock callback function. */ - lapic_cyclic_clock_func = cyclic_clock; } static void cyclic_machdep_uninit(void) { - /* Reset the cyclic clock callback hook. */ - lapic_cyclic_clock_func = NULL; + int i; + + for (i = 0; i < mp_maxid; i++) + /* Reset the cyclic clock callback hook. */ + lapic_cyclic_clock_func[i] = NULL; /* De-register the cyclic backend. */ cyclic_uninit(); @@ -140,30 +135,30 @@ static cyb_arg_t configure(cpu_t *c) { - /* XXX Configure the HPET if it is present. */ return (NULL); } static void unconfigure(cyb_arg_t arg) { - /* XXX Unconfigure the HPET if it is present. */ } static void enable(cyb_arg_t arg) { - /* XXX Enable the HPET if it is present. */ + /* Register the cyclic clock callback function. */ + lapic_cyclic_clock_func[curcpu] = cyclic_clock; } static void disable(cyb_arg_t arg) { - /* XXX Disable the HPET if it is present. */ + /* Reset the cyclic clock callback function. */ + lapic_cyclic_clock_func[curcpu] = NULL; } static void reprogram(cyb_arg_t arg, hrtime_t interval) { - /* XXX Reprogram the HPET if it is present. */ + /* XXX */ } static void softint(cyb_arg_t arg, cyc_level_t level) From owner-p4-projects@FreeBSD.ORG Fri Dec 28 01:01:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD00816A419; Fri, 28 Dec 2007 01:01:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 177DA16A418 for ; Fri, 28 Dec 2007 01:01:17 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1959413C46B for ; Fri, 28 Dec 2007 01:01:17 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS11GAJ000691 for ; Fri, 28 Dec 2007 01:01:16 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS11GeK000679 for perforce@freebsd.org; Fri, 28 Dec 2007 01:01:16 GMT (envelope-from gcooper@FreeBSD.org) Date: Fri, 28 Dec 2007 01:01:16 GMT Message-Id: <200712280101.lBS11GeK000679@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131828 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 01:01:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131828 Change 131828 by gcooper@shiina-ibook on 2007/12/28 01:00:49 1. a. [from getopt(3)]: Var is called optind, not optidx. b. Change other variable to be consistent. 2. Yank out init_action(..) and put into pkg_action.c Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#3 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#3 (text+ko) ==== @@ -53,12 +53,12 @@ char opt_char; - int old_optidx; - int optional_opts_idx; + int old_optind; + int optional_opts_ind; int i; /** Preset the initial counter variables to 0. **/ - old_optidx = optional_opts_idx = 0; + old_optind = optional_opts_ind = 0; /** Don't error out on unknown / non-globally applied flags, yet.. **/ opterr = 0; @@ -119,12 +119,12 @@ * Copy down all char* pointers to optional_opt_str_p to parse * later on [in pkg_action_arg_parser->parse_args(..)].. */ - for (i = old_optidx; i < optidx; i++) { - (optional_opt_str_p+optional_opts_idx) = (argv+i); - optional_opts_idx++; + for (i = old_optind; i < optind; i++) { + (optional_opt_str_p+optional_opts_ind) = (argv+i); + optional_opts_ind++; } - old_optidx = optidx; + old_optind = optind; } /** End global args parse **/ @@ -139,8 +139,8 @@ * If arguments usage was invalid, print usage message for specific command * and exit.. */ - if (0 < parsers[action_type]->parse_args(optional_opts_idx+1, optional_opt_str_p)) { - action->print_use(); + if (0 < parsers[action_type]->parse_args(optional_opts_ind+1, optional_opt_str_p)) { + parsers[action_type]->print_use(); exit(1); } @@ -163,42 +163,3 @@ return action_result; } - -/** - * @brief Initialize the appropriate action as per the action_type provided. - * @return Object for respective constructor. - * @return NULL on bad action_type. - */ -pkg_action -init_action(int action_type, freebsd_pkg *fpkg) -{ - - switch (action_type) { - - case add: - return pkg_action_add_new(fpkg); - case clean: - return pkg_action_clean_new(fpkg); - case check: - return pkg_action_check_new(fpkg); - case create: - return pkg_action_create_new(fpkg); - case delete: - return pkg_action_delete_new(fpkg); - case info: - return pkg_action_info_new(fpkg); - case null: - return pkg_action_new(fpkg); - case search: - return pkg_action_search_new(fpkg); - case sign: - return pkg_action_sign_new(fpkg); - case update: - return pkg_action_update_new(fpkg); - case version: - return pkg_action_version_new(fpkg); - - } - - return NULL; -} From owner-p4-projects@FreeBSD.ORG Fri Dec 28 01:02:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9140D16A41A; Fri, 28 Dec 2007 01:02:18 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5669716A419 for ; Fri, 28 Dec 2007 01:02:18 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 589D213C457 for ; Fri, 28 Dec 2007 01:02:18 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS12IDu001041 for ; Fri, 28 Dec 2007 01:02:18 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS12IGr001038 for perforce@freebsd.org; Fri, 28 Dec 2007 01:02:18 GMT (envelope-from gcooper@FreeBSD.org) Date: Fri, 28 Dec 2007 01:02:18 GMT Message-Id: <200712280102.lBS12IGr001038@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131829 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 01:02:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131829 Change 131829 by gcooper@shiina-ibook on 2007/12/28 01:01:31 Add perform(..) stub. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action.c#2 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action.c#2 (text+ko) ==== @@ -6,7 +6,7 @@ * @return NULL on bad action_type. */ pkg_action -init_action(int action_type, freebsd_pkg *fpkg) +init_action(int action_type, struct freebsd_package *fpkg) { switch (action_type) { @@ -37,3 +37,14 @@ } return NULL; + +} + +int +perform(struct pkg_action *action, struct freebsd_package *fpkg) +{ + if (action != NULL) { + return action->perform(fpkg); + } + return -1; +} From owner-p4-projects@FreeBSD.ORG Fri Dec 28 01:12:30 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4188616A41B; Fri, 28 Dec 2007 01:12:30 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A9A4316A418 for ; Fri, 28 Dec 2007 01:12:29 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AAF5013C46B for ; Fri, 28 Dec 2007 01:12:29 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS1CTno005925 for ; Fri, 28 Dec 2007 01:12:29 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS1CTgB005922 for perforce@freebsd.org; Fri, 28 Dec 2007 01:12:29 GMT (envelope-from gcooper@FreeBSD.org) Date: Fri, 28 Dec 2007 01:12:29 GMT Message-Id: <200712280112.lBS1CTgB005922@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131830 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 01:12:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=131830 Change 131830 by gcooper@shiina-ibook on 2007/12/28 01:11:35 Adding more stub files Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_check_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_check_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_clean_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_clean_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_delete_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_delete_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_info_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_info_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_show_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_show_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_sign_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_sign_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_update_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_update_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_version_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_version_arg_parser.h#1 add Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add.c#2 (text+ko) ==== @@ -1,2 +1,3 @@ #include "pkg_action.h" + From owner-p4-projects@FreeBSD.ORG Fri Dec 28 01:53:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DF68216A41A; Fri, 28 Dec 2007 01:53:24 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4546C16A417 for ; Fri, 28 Dec 2007 01:53:24 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 30A1613C4CE for ; Fri, 28 Dec 2007 01:53:24 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS1rOml030946 for ; Fri, 28 Dec 2007 01:53:24 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS1rNqi030943 for perforce@freebsd.org; Fri, 28 Dec 2007 01:53:23 GMT (envelope-from julian@freebsd.org) Date: Fri, 28 Dec 2007 01:53:23 GMT Message-Id: <200712280153.lBS1rNqi030943@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Cc: Subject: PERFORCE change 131840 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 01:53:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131840 Change 131840 by julian@julian_trafmon1 on 2007/12/28 01:52:32 add script to do the update. Affected files ... .. //depot/projects/arp-v2/src/update.sh#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Dec 28 02:15:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E40D16A56C; Fri, 28 Dec 2007 02:15:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8EE2916A4FC for ; Fri, 28 Dec 2007 02:15:10 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 894F213C46A for ; Fri, 28 Dec 2007 02:15:10 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS2FAR1040188 for ; Fri, 28 Dec 2007 02:15:10 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS2DhrS039528 for perforce@freebsd.org; Fri, 28 Dec 2007 02:13:43 GMT (envelope-from imp@freebsd.org) Date: Fri, 28 Dec 2007 02:13:43 GMT Message-Id: <200712280213.lBS2DhrS039528@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 131841 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 02:15:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=131841 Change 131841 by imp@imp_lighthouse on 2007/12/28 02:13:38 IFC @131824 Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/db_trace.c#7 edit .. //depot/user/imp/freebsd-imp/Makefile#68 integrate .. //depot/user/imp/freebsd-imp/Makefile.inc1#172 integrate .. //depot/user/imp/freebsd-imp/ObsoleteFiles.inc#58 integrate .. //depot/user/imp/freebsd-imp/UPDATING#165 integrate .. //depot/user/imp/freebsd-imp/bin/cp/cp.c#15 integrate .. //depot/user/imp/freebsd-imp/bin/ed/Makefile#12 integrate .. //depot/user/imp/freebsd-imp/bin/ln/ln.1#7 integrate .. //depot/user/imp/freebsd-imp/bin/ln/ln.c#7 integrate .. //depot/user/imp/freebsd-imp/bin/mv/mv.1#6 integrate .. //depot/user/imp/freebsd-imp/bin/mv/mv.c#9 integrate .. //depot/user/imp/freebsd-imp/bin/ps/extern.h#10 integrate .. //depot/user/imp/freebsd-imp/bin/ps/keyword.c#17 integrate .. //depot/user/imp/freebsd-imp/bin/ps/print.c#18 integrate .. //depot/user/imp/freebsd-imp/bin/ps/ps.c#24 integrate .. //depot/user/imp/freebsd-imp/bin/sh/Makefile#10 integrate .. //depot/user/imp/freebsd-imp/bin/sh/sh.1#38 integrate .. //depot/user/imp/freebsd-imp/cddl/Makefile.inc#3 integrate .. //depot/user/imp/freebsd-imp/cddl/lib/libnvpair/Makefile#3 integrate .. //depot/user/imp/freebsd-imp/compat/opensolaris/include/alloca.h#1 branch .. //depot/user/imp/freebsd-imp/compat/opensolaris/include/fcntl.h#1 branch .. //depot/user/imp/freebsd-imp/compat/opensolaris/include/stdio.h#1 branch .. //depot/user/imp/freebsd-imp/compat/opensolaris/include/stdlib.h#1 branch .. //depot/user/imp/freebsd-imp/compat/opensolaris/include/strings.h#1 branch .. //depot/user/imp/freebsd-imp/compat/opensolaris/include/unistd.h#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/AUTHORS#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/BUGS#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/COPYING#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/ChangeLog#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/FAQ#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/FREEBSD-Xlist#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/FREEBSD-upgrade#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/INSTALL#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/NEWS#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/README.attrcache#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/README.ldap#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/am_ops.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amd.8#7 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amd.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amd.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_auto.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_direct.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_error.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_generic.c#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_host.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_inherit.c#4 delete .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_link.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_linkx.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_nfsl.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_nfsx.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_program.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_root.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_toplvl.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amfs_union.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amq_subr.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/amq_svc.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/autil.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/clock.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/conf.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/conf_parse.y#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/conf_tok.l#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/get_args.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_exec.c#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_file.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_hesiod.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_ldap.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_ndbm.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_nis.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_nisplus.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_passwd.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/info_union.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/map.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/mapc.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/mntfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/nfs_prot_svc.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/nfs_start.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/nfs_subr.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_TEMPLATE.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_cachefs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_cdfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_efs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_lofs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_mfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_nfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_nfs3.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_nullfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_pcfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_tfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_tmpfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_ufs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_umapfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_unionfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/ops_xfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/opts.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/readdir.c#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/amd/restart.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/rpc_fwd.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/sched.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/srvr_amfs_auto.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amd/srvr_nfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/amq.8#7 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/amq.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/amq.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/amq_clnt.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/amq_xdr.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/pawd.1#5 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/amq/pawd.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/aux_conf.h.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/bootstrap#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/checkmount/checkmount_bsd44.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/mtab/mtab_bsd.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/sa_dref/sa_dref_bsd44.h#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/transp/transp_sockets.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/trap/trap_default.h#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/conf/umount/umount_bsd44.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/doc/am-utils.texi#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/doc/texinfo.tex#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/doc/version.texi#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fixmount/fixmount.8#8 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fixmount/fixmount.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsi_analyze.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsi_data.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsi_dict.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsi_gram.y#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsi_lex.l#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsi_util.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsinfo.8#8 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsinfo.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/fsinfo.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/wr_atab.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/wr_bparam.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/wr_dumpset.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/wr_exportfs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/fsinfo/wr_fstab.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/hlfsd/hlfsd.8#7 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/hlfsd/hlfsd.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/hlfsd/hlfsd.h#5 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/hlfsd/homedir.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/hlfsd/nfs_prot_svc.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/hlfsd/stubs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/am_compat.h#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/am_defs.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/am_utils.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/am_xdr_func.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/amq_defs.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/mount_headers1.h#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/include/mount_headers2.h#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/ldap-id.ms#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/ldap.schema#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/alloca.c#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/amu.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/hasmntopt.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/misc_rpc.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/mount_fs.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/mtab.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/nfs_prot_xdr.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/strerror.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/strutil.c#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/util.c#4 delete .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/wire.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/xdr_func.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/libamu/xutil.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/m4/GNUmakefile#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/amdgrep#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/amindent#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/autopat#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/chop-aclocal.pl#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/copy-if-newbig#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/macros/HEADER#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/macros/TRAILER#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/mk-aclocal#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/mkconf#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/rmtspc#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/m4/update_build_version#2 delete .. //depot/user/imp/freebsd-imp/contrib/amd/mk-amd-map/mk-amd-map.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/mk-amd-map/mk-amd-map.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/am-eject.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/amd.conf-sample#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/amd.conf.5#8 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/amd2ldif.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/amd2sun.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/automount2amd.8#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/automount2amd.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/ctl-amd.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/ctl-hlfsd.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/expn.1#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/expn.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/fix-amd-map.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/fixrmtab.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/redhat-ctl-amd.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/test-attrcache.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/wait4amd.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/scripts/wait4amd2die.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/tasks#4 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/vers.m4#1 branch .. //depot/user/imp/freebsd-imp/contrib/amd/wire-test/wire-test.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/amd/wire-test/wire-test.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/CHANGES#11 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/COPYRIGHT#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/FAQ#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/FAQ.xml#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/README#8 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/check-tool.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkconf.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkconf.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkconf.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkzone.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkzone.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkzone.docbook#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/check/named-checkzone.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/dig.1#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/dig.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/dig.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/dig.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/dighost.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/host.1#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/host.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/host.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/host.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/include/dig/dig.h#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/nslookup.1#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/nslookup.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/nslookup.docbook#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dig/nslookup.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-keygen.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-keygen.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-keygen.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-keygen.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-signzone.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-signzone.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-signzone.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/dnssec/dnssec-signzone.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/client.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/config.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/control.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/lwresd.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/lwresd.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/lwresd.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/named.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/named.conf.5#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/named.conf.docbook#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/named.conf.html#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/named.docbook#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/named.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/query.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/server.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/named/update.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/nsupdate/nsupdate.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/nsupdate/nsupdate.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/nsupdate/nsupdate.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/nsupdate/nsupdate.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc-confgen.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc.conf.5#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc.conf.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc.conf.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/bin/rndc/rndc.html#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/configure.in#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM-book.xml#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch01.html#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch02.html#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch03.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch04.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch05.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch06.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch07.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch08.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch09.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.ch10.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.html#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Bv9ARM.pdf#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.dig.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.dnssec-keygen.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.dnssec-signzone.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.host.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.named-checkconf.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.named-checkzone.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.named.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.rndc-confgen.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.rndc.conf.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/arm/man.rndc.html#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/draft/draft-schlitt-spf-classic-02.txt#2 delete .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/misc/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/misc/migration#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/rfc/index#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/rfc/rfc4398.txt#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/rfc/rfc4408.txt#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/rfc/rfc4470.txt#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/rfc/rfc4634.txt#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/doc/rfc/rfc4641.txt#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/api#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/config.h.in#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/configure#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/configure.in#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/dst/dst_api.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/dst/hmac_link.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/irs/gai_strerror.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/irs/irs_data.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/isc/ctl_clnt.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/make/rules.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/nameser/ns_parse.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/port_before.h.in#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/resolv/res_data.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind/resolv/res_init.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind9/api#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/bind9/check.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/adb.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/api#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/dispatch.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/dnssec.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/include/dns/db.h#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/include/dns/dispatch.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/include/dns/validator.h#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/journal.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/lookup.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/master.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/message.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/openssl_link.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/openssldh_link.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/openssldsa_link.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/rbtdb.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/rdata/generic/dlv_32769.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/rdata/generic/ds_43.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/rdataslab.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/resolver.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/rootns.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/sdb.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/sdlz.c#2 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/tsig.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/validator.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/view.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/xfrin.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/dns/zone.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/alpha/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/alpha/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/alpha/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/api#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/arm/include/isc/atomic.h#2 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/hmacsha.c#2 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/ia64/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/ia64/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/ia64/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/include/isc/platform.h.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/include/isc/string.h#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/mem.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/mips/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/mips/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/mips/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/noatomic/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/noatomic/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/noatomic/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/powerpc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/powerpc/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/powerpc/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/powerpc/include/isc/atomic.h#2 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/sparc64/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/sparc64/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/sparc64/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/timer.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/unix/ifiter_getifaddrs.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/unix/ifiter_ioctl.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/unix/net.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/unix/socket.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/unix/syslog.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/x86_32/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/x86_32/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/x86_32/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/x86_64/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/x86_64/include/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isc/x86_64/include/isc/Makefile.in#1 branch .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isccc/symtab.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/isccfg/api#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/api#6 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/context.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/getaddrinfo.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/getipnode.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/lwres_gnba.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_buffer.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_config.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_context.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_gabn.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_gai_strerror.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_getaddrinfo.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_gethostent.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_getipnode.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_getnameinfo.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_getrrsetbyname.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_gnba.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_hstrerror.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_inetntop.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_noop.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_packet.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/lib/lwres/man/lwres_resutil.docbook#4 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/make/rules.in#5 integrate .. //depot/user/imp/freebsd-imp/contrib/bind9/version#11 integrate .. //depot/user/imp/freebsd-imp/contrib/binutils/opcodes/ppc-dis.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/csup/mux.c#2 integrate .. //depot/user/imp/freebsd-imp/contrib/gcc/config/sparc/freebsd.h#9 integrate .. //depot/user/imp/freebsd-imp/contrib/gcc/fold-const.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/gdb/gdb/i386fbsd-nat.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/gdtoa/gdtoaimp.h#8 integrate .. //depot/user/imp/freebsd-imp/contrib/gdtoa/hexnan.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/gdtoa/strtod.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/gdtoa/strtof.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/gdtoa/strtorQ.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/gdtoa/strtorx.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/less/FREEBSD-upgrade#1 branch .. //depot/user/imp/freebsd-imp/contrib/less/LICENSE#4 integrate .. //depot/user/imp/freebsd-imp/contrib/less/Makefile.dsm#2 delete .. //depot/user/imp/freebsd-imp/contrib/less/NEWS#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/README#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/ch.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/command.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/configure#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/configure.ac#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/decode.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/defines.ds#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/defines.h.in#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/defines.o2#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/defines.o9#4 integrate .. //depot/user/imp/freebsd-imp/contrib/less/defines.wn#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/edit.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/filename.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/funcs.h#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/less.h#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/less.man#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/less.nro#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/lessecho.man#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/lessecho.nro#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/lesskey.man#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/lesskey.nro#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/line.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/optfunc.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/less/opttbl.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/screen.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/search.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/less/tags.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/less/version.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/FREEBSD-upgrade#8 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/complete.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/display.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/input.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/isearch.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/misc.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/readline.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/text.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/libreadline/vi_mode.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/HISTORY#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/VERSION#10 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/aclocal.m4#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/audit/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/auditd/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/auditfilterd/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/auditreduce/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/auditreduce/auditreduce.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/praudit/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bin/praudit/praudit.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/bsm/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/config/config.h#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/config/config.h.in#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/config/ltmain.sh#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/configure#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/configure.ac#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/etc/audit_class#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/etc/audit_event#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/libbsm/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/libbsm/bsm_event.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/libbsm/bsm_io.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/man/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/modules/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/modules/auditfilter_noop/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/test/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/test/bsm/Makefile.in#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openbsm/tools/Makefile.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/CREDITS#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/HISTORY#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/INSTALL#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/LICENSE#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/MANIFEST#8 delete .. //depot/user/imp/freebsd-imp/contrib/openpam/Makefile.am#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/Makefile.in#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/README#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/RELNOTES#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/aclocal.m4#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/autogen.sh#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/bin/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/bin/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/bin/su/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/bin/su/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/bin/su/su.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/compile#1 branch .. //depot/user/imp/freebsd-imp/contrib/openpam/config.h.in#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/configure#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/configure.ac#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/configure.in#3 delete .. //depot/user/imp/freebsd-imp/contrib/openpam/depcomp#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/Makefile.am#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam.man#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_borrow_cred.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_free_data.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_free_envlist.3#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_get_option.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_log.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_nullconv.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_readline.3#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_restore_cred.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_set_option.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/openpam_ttyconv.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam.conf.5#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam.man#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_acct_mgmt.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_authenticate.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_chauthtok.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_close_session.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_conv.3#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_end.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_error.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_get_authtok.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_get_data.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_get_item.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_get_user.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_getenv.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_getenvlist.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_info.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_open_session.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_prompt.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_putenv.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_set_data.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_set_item.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_setcred.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_setenv.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_sm_acct_mgmt.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_sm_authenticate.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_sm_chauthtok.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_sm_close_session.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_sm_open_session.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_sm_setcred.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_start.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_strerror.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_verror.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_vinfo.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/doc/man/pam_vprompt.3#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/openpam.h#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/openpam_attr.h#1 branch .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/openpam_version.h#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/pam_appl.h#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/pam_constants.h#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/pam_modules.h#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/include/security/pam_types.h#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/install-sh#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/Makefile.am#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_borrow_cred.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_configure.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_dispatch.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_dynamic.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_findenv.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_free_data.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_free_envlist.c#2 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_get_option.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_impl.h#11 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_load.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_log.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_nullconv.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_readline.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_restore_cred.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_set_option.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_static.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/openpam_ttyconv.c#12 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_acct_mgmt.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_authenticate.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_authenticate_secondary.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_chauthtok.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_close_session.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_end.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_error.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_get_authtok.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_get_data.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_get_item.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_get_mapped_authtok.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_get_mapped_username.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_get_user.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_getenv.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_getenvlist.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_info.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_open_session.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_prompt.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_putenv.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_set_data.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_set_item.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_set_mapped_authtok.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_set_mapped_username.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_setcred.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_setenv.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_acct_mgmt.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_authenticate.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_authenticate_secondary.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_chauthtok.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_close_session.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_get_mapped_authtok.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_get_mapped_username.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_open_session.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_set_mapped_authtok.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_set_mapped_username.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_sm_setcred.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_start.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_strerror.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_verror.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_vinfo.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/lib/pam_vprompt.c#7 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/ltconfig#2 delete .. //depot/user/imp/freebsd-imp/contrib/openpam/ltmain.sh#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/misc/gendoc.pl#8 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/missing#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/mkinstalldirs#2 delete .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_deny/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_deny/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_deny/pam_deny.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_permit/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_permit/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_permit/pam_permit.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_unix/Makefile.am#3 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_unix/Makefile.in#4 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/modules/pam_unix/pam_unix.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/openpam/stamp-h.in#3 delete .. //depot/user/imp/freebsd-imp/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h#5 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/CACerts#2 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/FREEBSD-upgrade#17 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/INSTALL#2 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/RELEASE_NOTES#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/cf/cf/submit.cf#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/cf/feature/ldap_routing.m4#3 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/cf/m4/proto.m4#12 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/cf/m4/version.m4#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/contrib/buildvirtuser#4 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/doc/op/op.me#11 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/editmap/editmap.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/include/sm/conf.h#11 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/include/sm/ldap.h#5 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/include/sm/tailq.h#2 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libmilter/docs/xxfi_unknown.html#2 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libmilter/engine.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libmilter/listener.c#11 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libmilter/main.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libmilter/monitor.c#2 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libmilter/smfi.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libsm/ldap.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/libsm/mpeix.c#2 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/makemap/makemap.c#5 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/praliases/praliases.c#3 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/Makefile.m4#5 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/conf.c#15 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/deliver.c#13 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/envelope.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/headers.c#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/macro.c#4 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/main.c#12 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/map.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/milter.c#12 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/mime.c#9 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/parseaddr.c#13 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/queue.c#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/readcf.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/recipient.c#8 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/sendmail.8#5 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/sendmail.h#13 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/sm_resolve.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/srvrsmtp.c#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/usersmtp.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/util.c#10 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/src/version.c#14 integrate .. //depot/user/imp/freebsd-imp/contrib/sendmail/vacation/vacation.c#6 integrate .. //depot/user/imp/freebsd-imp/contrib/tcpdump/tcpdump.c#8 integrate .. //depot/user/imp/freebsd-imp/etc/Makefile#55 integrate .. //depot/user/imp/freebsd-imp/etc/defaults/Makefile#8 integrate .. //depot/user/imp/freebsd-imp/etc/defaults/pccard.conf#22 delete .. //depot/user/imp/freebsd-imp/etc/defaults/periodic.conf#23 integrate .. //depot/user/imp/freebsd-imp/etc/etc.amd64/ttys#4 integrate .. //depot/user/imp/freebsd-imp/etc/etc.arm/ttys#5 integrate .. //depot/user/imp/freebsd-imp/etc/etc.i386/ttys#4 integrate .. //depot/user/imp/freebsd-imp/etc/etc.ia64/ttys#6 integrate .. //depot/user/imp/freebsd-imp/etc/etc.powerpc/ttys#6 integrate .. //depot/user/imp/freebsd-imp/etc/etc.sparc64/ttys#13 integrate .. //depot/user/imp/freebsd-imp/etc/freebsd-update.conf#2 integrate .. //depot/user/imp/freebsd-imp/etc/gss/mech#2 integrate .. //depot/user/imp/freebsd-imp/etc/mtree/BSD.usr.dist#50 integrate .. //depot/user/imp/freebsd-imp/etc/namedb/named.root#5 integrate .. //depot/user/imp/freebsd-imp/etc/network.subr#28 integrate .. //depot/user/imp/freebsd-imp/etc/periodic/security/100.chksetuid#4 integrate .. //depot/user/imp/freebsd-imp/etc/pf.conf#4 delete .. //depot/user/imp/freebsd-imp/etc/rc.d/DAEMON#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/LOGIN#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/Makefile#69 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/NETWORKING#13 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/SERVERS#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/accounting#8 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/amd#12 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/apmd#9 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/bootconf.sh#6 delete .. //depot/user/imp/freebsd-imp/etc/rc.d/bootparams#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ccd#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/cron#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/dhclient#25 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/dmesg#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/fsck#8 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ftp-proxy#2 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/hostapd#2 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/inetd#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ipfilter#25 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ipfs#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ipmon#13 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ipnat#12 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ipsec#13 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/isdnd#13 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/keyserv#3 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ldconfig#13 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/local#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/lockd#4 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/lpd#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/motd#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/mountcritlocal#10 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/mountcritremote#14 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/mountd#10 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/moused#10 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/mrouted#10 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/newsyslog#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/nfsd#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/power_profile#11 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/pwcheck#4 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/quota#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/rarpd#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/resolv#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/root#13 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/route6d#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/routed#10 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/rpcbind#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/rtadvd#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/rwho#4 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/savecore#8 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/securelevel#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/sendmail#12 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/sshd#10 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/statd#3 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/swap1#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/sysctl#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/syslogd#8 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/timed#5 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/tmp#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ugidfw#6 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/var#9 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/virecover#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ypbind#8 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/yppasswdd#7 integrate .. //depot/user/imp/freebsd-imp/etc/rc.d/ypserv#8 integrate .. //depot/user/imp/freebsd-imp/etc/sendmail/freebsd.mc#10 integrate .. //depot/user/imp/freebsd-imp/etc/sendmail/freebsd.submit.mc#6 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/Makefile#7 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/fortunes#103 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/fortunes-o.real#9 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/fortunes-o.sp.ok#2 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/fortunes.sp.ok#6 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/fortunes2-o#14 delete .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/freebsd-tips#17 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/freebsd-tips.sp.ok#1 branch .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/limerick#9 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/limerick.sp.ok#1 branch .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/murphy#7 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/murphy-o#3 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/murphy.sp.ok#1 branch .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/startrek#10 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/zippy#4 integrate .. //depot/user/imp/freebsd-imp/games/fortune/datfiles/zippy.sp.ok#2 integrate .. //depot/user/imp/freebsd-imp/games/fortune/fortune/fortune.6#5 integrate .. //depot/user/imp/freebsd-imp/games/fortune/fortune/fortune.c#8 integrate .. //depot/user/imp/freebsd-imp/gnu/lib/libobjc/Makefile#17 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/cc/cc_tools/Makefile#20 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/arch/arm/Makefile#2 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/arch/arm/armfbsd-nat.c#2 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/arch/arm/armfbsd-tdep.c#2 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/arch/arm/init.c#2 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/arch/arm/nm-fbsd.h#2 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/kgdb/kgdb.h#6 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/kgdb/kthr.c#8 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/gdb/kgdb/trgt_i386.c#5 integrate .. //depot/user/imp/freebsd-imp/gnu/usr.bin/groff/tmac/mdoc.local#34 integrate .. //depot/user/imp/freebsd-imp/include/_ctype.h#4 integrate .. //depot/user/imp/freebsd-imp/include/assert.h#2 integrate .. //depot/user/imp/freebsd-imp/include/complex.h#4 integrate .. //depot/user/imp/freebsd-imp/include/dirent.h#3 integrate .. //depot/user/imp/freebsd-imp/include/elf.h#3 integrate .. //depot/user/imp/freebsd-imp/include/nsswitch.h#4 integrate .. //depot/user/imp/freebsd-imp/include/pthread.h#16 integrate .. //depot/user/imp/freebsd-imp/include/pthread_np.h#6 integrate .. //depot/user/imp/freebsd-imp/kerberos5/lib/Makefile.inc#5 integrate .. //depot/user/imp/freebsd-imp/lib/Makefile#68 integrate .. //depot/user/imp/freebsd-imp/lib/bind/bind/Makefile#5 integrate .. //depot/user/imp/freebsd-imp/lib/bind/bind/config.h#6 integrate .. //depot/user/imp/freebsd-imp/lib/bind/bind/port_before.h#5 integrate .. //depot/user/imp/freebsd-imp/lib/bind/config.h#8 integrate .. //depot/user/imp/freebsd-imp/lib/bind/config.mk#9 integrate .. //depot/user/imp/freebsd-imp/lib/bind/isc/isc/platform.h#5 integrate .. //depot/user/imp/freebsd-imp/lib/bind/lwres/Makefile#7 integrate .. //depot/user/imp/freebsd-imp/lib/csu/common/crtbrand.c#4 integrate .. //depot/user/imp/freebsd-imp/lib/libarchive/archive_read_support_compression_none.c#16 integrate .. //depot/user/imp/freebsd-imp/lib/libarchive/archive_read_support_format_zip.c#15 integrate .. //depot/user/imp/freebsd-imp/lib/libc/Versions.def#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/amd64/Makefile.inc#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/amd64/Symbol.map#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gdtoa/Symbol.map#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gdtoa/_ldtoa.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gdtoa/machdep_ldisQ.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gdtoa/machdep_ldisx.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/Symbol.map#7 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/closedir.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/getgrent.c#16 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/getgrouplist.c#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/readdir.c#4 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/seekdir.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/sem_open.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/telldir.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/gen/valloc.3#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/i386/Makefile.inc#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/i386/Symbol.map#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/ia64/Makefile.inc#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/ia64/Symbol.map#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/locale/localeconv.c#4 integrate .. //depot/user/imp/freebsd-imp/lib/libc/locale/mblocal.h#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/nameser/ns_parse.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/net/Makefile.inc#21 integrate .. //depot/user/imp/freebsd-imp/lib/libc/net/ethers.3#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/net/nsdispatch.c#10 integrate .. //depot/user/imp/freebsd-imp/lib/libc/resolv/res_data.c#4 integrate .. //depot/user/imp/freebsd-imp/lib/libc/resolv/res_init.c#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/authdes_prot.c#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/authunix_prot.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/key_prot_xdr.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/rpc_callmsg.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/rpc_prot.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/rpcb_prot.c#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/rpc/rpcb_st_xdr.c#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sparc64/Makefile.inc#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sparc64/Symbol.map#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sparc64/fpu/fpu_explode.c#4 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdio/Symbol.map#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdio/vfscanf.c#14 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdio/vfwprintf.c#21 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdio/vfwscanf.c#13 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdlib/grantpt.c#8 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdlib/malloc.3#18 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdlib/malloc.c#48 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdlib/rand.c#8 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdlib/strtod.3#8 integrate .. //depot/user/imp/freebsd-imp/lib/libc/stdtime/localtime.c#8 integrate .. //depot/user/imp/freebsd-imp/lib/libc/string/strtok.3#5 integrate .. //depot/user/imp/freebsd-imp/lib/libc/string/strtok.c#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/string/wcstok.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sys/access.2#4 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sys/minherit.2#6 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sys/sctp_generic_recvmsg.2#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sys/sctp_generic_sendmsg.2#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sys/sctp_peeloff.2#2 integrate .. //depot/user/imp/freebsd-imp/lib/libc/sys/select.2#12 integrate .. //depot/user/imp/freebsd-imp/lib/libdisk/libdisk.3#13 integrate .. //depot/user/imp/freebsd-imp/lib/libdisk/libdisk.h#18 integrate .. //depot/user/imp/freebsd-imp/lib/libelf/elf.3#4 integrate .. //depot/user/imp/freebsd-imp/lib/libelf/gelf_xlatetof.3#2 integrate .. //depot/user/imp/freebsd-imp/lib/libelf/libelf_data.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libelf/libelf_xlate.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/Makefile#16 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/common.c#11 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/common.h#6 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/fetch.3#17 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/fetch.c#5 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/file.c#4 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/ftp.c#15 integrate .. //depot/user/imp/freebsd-imp/lib/libfetch/http.c#17 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/Makefile#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_accept_sec_context.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_acquire_cred.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_acquire_cred.c#2 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_add_cred.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_add_oid_set_member.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_canonicalize_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_compare_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_context_time.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_create_empty_oid_set.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_delete_sec_context.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_display_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_display_status.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_duplicate_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_export_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_export_sec_context.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_get_mic.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_import_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_import_sec_context.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_indicate_mechs.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_init_sec_context.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_inquire_context.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_inquire_cred.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_inquire_cred_by_mech.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_inquire_mechs_for_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_inquire_names_for_mech.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_process_context_token.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_release_buffer.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_release_cred.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_release_name.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_release_oid_set.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_test_oid_set_member.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_unwrap.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_verify_mic.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_wrap.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libgssapi/gss_wrap_size_limit.3#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/Makefile#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/amd64/include/atomic_ops.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/amd64/include/pthread_md.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/arm/include/atomic_ops.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/i386/include/atomic_ops.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/i386/include/pthread_md.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/ia64/include/atomic_ops.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/ia64/include/pthread_md.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/powerpc/include/atomic_ops.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/powerpc/include/pthread_md.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/sparc64/include/atomic_ops.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/arch/sparc64/include/pthread_md.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/kse.map#2 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/sys/lock.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/sys/lock.h#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/sys/thr_error.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_close.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_cond.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_condattr_pshared.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_create.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/user/imp/freebsd-imp/lib/libkse/thread/thr_equal.c#3 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 02:47:46 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A59D216A421; Fri, 28 Dec 2007 02:47:46 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 324E416A41A for ; Fri, 28 Dec 2007 02:47:46 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1E74913C43E for ; Fri, 28 Dec 2007 02:47:46 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS2ljOj053926 for ; Fri, 28 Dec 2007 02:47:45 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS2ljLE053923 for perforce@freebsd.org; Fri, 28 Dec 2007 02:47:45 GMT (envelope-from julian@freebsd.org) Date: Fri, 28 Dec 2007 02:47:45 GMT Message-Id: <200712280247.lBS2ljLE053923@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Cc: Subject: PERFORCE change 131844 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 02:47:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=131844 Change 131844 by julian@julian_trafmon1 on 2007/12/28 02:47:16 Add the perl script to get accurate diffs Affected files ... .. //depot/projects/arp-v2/src/makediff.pl#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Dec 28 04:48:09 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 221BE16A468; Fri, 28 Dec 2007 04:48:09 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E83016A417 for ; Fri, 28 Dec 2007 04:48:08 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5056A13C4D9 for ; Fri, 28 Dec 2007 04:48:08 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS4m8dm027381 for ; Fri, 28 Dec 2007 04:48:08 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS4m7gX027370 for perforce@freebsd.org; Fri, 28 Dec 2007 04:48:07 GMT (envelope-from imp@freebsd.org) Date: Fri, 28 Dec 2007 04:48:07 GMT Message-Id: <200712280448.lBS4m7gX027370@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 131849 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 04:48:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=131849 Change 131849 by imp@imp_paco-paco on 2007/12/28 04:48:06 IFC @13841 Affected files ... .. //depot/projects/arm/src/Makefile.upgrade#1 branch .. //depot/projects/arm/src/bin/csh/USD.doc/Makefile#1 branch .. //depot/projects/arm/src/bin/ls/lomac.c#1 branch .. //depot/projects/arm/src/bin/ls/lomac.h#1 branch .. //depot/projects/arm/src/bin/mv/pathnames.h#1 branch .. //depot/projects/arm/src/bin/ps/lomac.c#1 branch .. //depot/projects/arm/src/bin/ps/lomac.h#1 branch .. //depot/projects/arm/src/bin/sh/machdep.h#1 branch .. //depot/projects/arm/src/contrib/amd/MIRRORS#1 branch .. //depot/projects/arm/src/contrib/amd/amd/ops_autofs.c#1 branch .. //depot/projects/arm/src/contrib/amd/conf/hn_dref/hn_dref_default.h#1 branch .. //depot/projects/arm/src/contrib/amd/conf/nfs_prot/nfs_prot_darwin.h#1 branch .. //depot/projects/arm/src/contrib/amd/doc/stamp-vti#1 branch .. //depot/projects/arm/src/contrib/amd/scripts/lostaltmail.conf-sample#1 branch .. //depot/projects/arm/src/contrib/amd/scripts/lostaltmail.in#1 branch .. //depot/projects/arm/src/contrib/bc/h/getopt.h#1 branch .. //depot/projects/arm/src/contrib/bc/lib/getopt.c#1 branch .. //depot/projects/arm/src/contrib/bc/lib/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/bind/CHANGES#1 branch .. //depot/projects/arm/src/contrib/bind/DNSSEC#1 branch .. //depot/projects/arm/src/contrib/bind/FREEBSD-Upgrade#1 branch .. //depot/projects/arm/src/contrib/bind/FREEBSD-Xlist#1 branch .. //depot/projects/arm/src/contrib/bind/INSTALL#1 branch .. //depot/projects/arm/src/contrib/bind/LICENSE#1 branch .. //depot/projects/arm/src/contrib/bind/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/README#1 branch .. //depot/projects/arm/src/contrib/bind/SUPPORT#1 branch .. //depot/projects/arm/src/contrib/bind/TODO#1 branch .. //depot/projects/arm/src/contrib/bind/Version#1 branch .. //depot/projects/arm/src/contrib/bind/bin/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/addr/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/addr/addr.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/dig/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/dig/dig.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/dnskeygen/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/dnskeygen/dnskeygen.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/dnsquery/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/dnsquery/dnsquery.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/host/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/host/host.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/irpd/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/irpd/irpd.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/irpd/irs-irpd.conf#1 branch .. //depot/projects/arm/src/contrib/bind/bin/irpd/version.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/mkservdb/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/mkservdb/mkservdb.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named-bootconf/Grot/named-bootconf.pl#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named-bootconf/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named-bootconf/named-bootconf.sh#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named-bootconf/test.boot#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named-xfer/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named-xfer/named-xfer.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_defs.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_dump.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_func.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_glob.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_glue.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_ixfr.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_load.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_lookup.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_save.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_sec.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_tsig.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/db_update.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/named.conf#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/named.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_config.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_ctl.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_defs.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_forw.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_func.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_glob.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_glue.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_init.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_ixfr.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_lexer.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_lexer.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_main.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_maint.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_ncache.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_notify.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_parser.y#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_parseutil.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_parseutil.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_req.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_resp.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_signal.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_sort.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_stats.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_udp.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_update.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/ns_xfr.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/pathtemplate.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/test/127.0.0.zone#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/test/localhost.zone#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/test/named.conf#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/test/root.hint#1 branch .. //depot/projects/arm/src/contrib/bind/bin/named/version.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/ndc/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/ndc/ndc.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/commands.l#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/debug.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/getinfo.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/list.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/main.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/nslookup.help#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/pathnames.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/res.h#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/send.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/skip.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nslookup/subr.c#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nsupdate/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/bin/nsupdate/nsupdate.c#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/acl.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/address_list.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/comments.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/config.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/controls.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/docdef.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/example.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/include.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/index.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/key.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/logging.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/master.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/options.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/server.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/trusted-keys.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/html/zone.html#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/dig.1#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/dnskeygen.1#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/dnsquery.1#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/getaddrinfo.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/gethostbyname.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/getipnodebyname.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/getnameinfo.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/getnetent.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/hesiod.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/host.1#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/hostname.7#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/inet_cidr.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/irs.conf.5#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/mailaddr.7#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/mkdep.1#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/named-bootconf.8#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/named-xfer.8#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/named.8#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/named.conf.5#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/ndc.8#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/nslookup.8#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/nsupdate.8#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/resolver.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/resolver.5#1 branch .. //depot/projects/arm/src/contrib/bind/doc/man/tsig.3#1 branch .. //depot/projects/arm/src/contrib/bind/doc/misc/DynamicUpdate#1 branch .. //depot/projects/arm/src/contrib/bind/doc/misc/FAQ.1of2#1 branch .. //depot/projects/arm/src/contrib/bind/doc/misc/FAQ.2of2#1 branch .. //depot/projects/arm/src/contrib/bind/doc/misc/rfc2317-notes.txt#1 branch .. //depot/projects/arm/src/contrib/bind/doc/misc/style.txt#1 branch .. //depot/projects/arm/src/contrib/bind/include/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/include/arpa/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/include/arpa/inet.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/arpa/nameser.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/arpa/nameser_compat.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/fd_setsize.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/hesiod.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/irp.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/irs.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/assertions.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/ctl.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/dst.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/eventlib.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/heap.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/irpmarshall.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/list.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/logging.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/memcluster.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/misc.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/isc/tree.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/netdb.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/netgroup.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/res_update.h#1 branch .. //depot/projects/arm/src/contrib/bind/include/resolv.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/README#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/bsafe_link.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/cylink_link.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/dst_api.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/dst_internal.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/eay_dss_link.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/hmac_link.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/md5.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/md5_dgst.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/md5_locl.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/prandom.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/rsaref_link.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/dst/support.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_addr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_cidr_ntop.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_cidr_pton.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_data.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_lnaof.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_makeaddr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_net_ntop.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_net_pton.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_neta.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_netof.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_network.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_ntoa.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_ntop.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/inet_pton.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/inet/nsap_addr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/Makefile.BSD#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/README#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_gr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_ho.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_nw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_pr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_pw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/dns_sv.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gai_strerror.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_gr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_ho.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_ng.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_nw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_pr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_pw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gen_sv.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getaddrinfo.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getgrent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getgrent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gethostent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/gethostent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getnameinfo.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getnetent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getnetent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getnetgrent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getnetgrent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getprotoent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getprotoent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getpwent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getpwent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getservent.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/getservent_r.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/hesiod.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/hesiod_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_gr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_ho.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_ng.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_nw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_pr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_pw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irp_sv.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irpmarshall.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irs_data.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irs_data.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/irs_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_gr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_ho.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_ng.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_nw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_pr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_pw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/lcl_sv.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_gr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_ho.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_ng.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_nw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_pr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_pw.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nis_sv.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/nul_ng.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/pathnames.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/irs/util.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/assertions.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/assertions.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/base64.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/bitncmp.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/bitncmp.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ctl_clnt.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ctl_p.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ctl_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ctl_srvr.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ev_connects.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ev_files.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ev_streams.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ev_timers.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/ev_waits.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/eventlib.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/eventlib.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/eventlib_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/heap.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/heap.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/hex.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/logging.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/logging.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/logging_p.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/memcluster.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/memcluster.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/movefile.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/tree.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/isc/tree.mdoc#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_date.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_name.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_netint.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_parse.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_print.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_samedomain.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_sign.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_ttl.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/nameser/ns_verify.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/herror.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_comp.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_data.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_debug.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_debug.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_findzonecut.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_init.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_mkquery.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_mkupdate.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_mkupdate.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_private.h#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_query.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_send.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_sendsigned.c#1 branch .. //depot/projects/arm/src/contrib/bind/lib/resolv/res_update.c#1 branch .. //depot/projects/arm/src/contrib/bind/port/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/port/README#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/Makefile.set#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/bin/probe_ipv6#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/include/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/include/port_after.h#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/include/port_before.h#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/include/prand_conf.h#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/include/sys/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/include/sys/bitypes.h#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/noop.c#1 branch .. //depot/projects/arm/src/contrib/bind/port/freebsd/probe#1 branch .. //depot/projects/arm/src/contrib/bind/port/prand_conf/Makefile#1 branch .. //depot/projects/arm/src/contrib/bind/port/prand_conf/README#1 branch .. //depot/projects/arm/src/contrib/bind/port/prand_conf/prand_conf.c#1 branch .. //depot/projects/arm/src/contrib/bind/port/settings#1 branch .. //depot/projects/arm/src/contrib/bind/port/systype#1 branch .. //depot/projects/arm/src/contrib/bind/tests/irs_testclient.c#1 branch .. //depot/projects/arm/src/contrib/bind/tests/irs_testirpd.c#1 branch .. //depot/projects/arm/src/contrib/bind/tests/irs_testserver.c#1 branch .. //depot/projects/arm/src/contrib/bind/tests/test_cidr.c#1 branch .. //depot/projects/arm/src/contrib/bind/tests/test_getaddr.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/aout-tic30.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/coff-mips.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/coff-tic30.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/coff-z8k.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/cpu-mips.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/cpu-tic30.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/cpu-v850.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/cpu-z8k.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/elf32-mips.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/elf32-v850.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/elf64-mips.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/mipsbsd.c#1 branch .. //depot/projects/arm/src/contrib/binutils/bfd/pe-mips.c#1 branch .. //depot/projects/arm/src/contrib/binutils/binutils/binutils.texi#1 branch .. //depot/projects/arm/src/contrib/binutils/binutils/config.texi#1 branch .. //depot/projects/arm/src/contrib/binutils/binutils/cxxfilt.man#1 branch .. //depot/projects/arm/src/contrib/binutils/binutils/rcparse.c#1 branch .. //depot/projects/arm/src/contrib/binutils/binutils/rcparse.h#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/config/tc-tic30.c#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/config/tc-tic30.h#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/config/tc-v850.c#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/config/tc-v850.h#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/config/tc-z8k.c#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/config/tc-z8k.h#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/doc/c-v850.texi#1 branch .. //depot/projects/arm/src/contrib/binutils/gas/doc/c-z8k.texi#1 branch .. //depot/projects/arm/src/contrib/binutils/include/elf/arm-oabi.h#1 branch .. //depot/projects/arm/src/contrib/binutils/include/getopt.h#1 branch .. //depot/projects/arm/src/contrib/binutils/include/opcode/mips.h#1 branch .. //depot/projects/arm/src/contrib/binutils/include/opcode/tic30.h#1 branch .. //depot/projects/arm/src/contrib/binutils/include/opcode/v850.h#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/configdoc.texi#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/armelf_linux26.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/shelf.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/shelf_linux.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/tic30aout.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/tic30coff.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/v850.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/z8001.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/emulparams/z8002.sh#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/scripttempl/elfppc.sc#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/scripttempl/tic30aout.sc#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/scripttempl/tic30coff.sc#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/scripttempl/v850.sc#1 branch .. //depot/projects/arm/src/contrib/binutils/ld/scripttempl/z8000.sc#1 branch .. //depot/projects/arm/src/contrib/binutils/libiberty/acconfig.h#1 branch .. //depot/projects/arm/src/contrib/binutils/libiberty/alloca-conf.h#1 branch .. //depot/projects/arm/src/contrib/binutils/libiberty/getopt.c#1 branch .. //depot/projects/arm/src/contrib/binutils/libiberty/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/binutils/opcodes/tic30-dis.c#1 branch .. //depot/projects/arm/src/contrib/binutils/opcodes/v850-dis.c#1 branch .. //depot/projects/arm/src/contrib/binutils/opcodes/v850-opc.c#1 branch .. //depot/projects/arm/src/contrib/binutils/opcodes/z8k-dis.c#1 branch .. //depot/projects/arm/src/contrib/binutils/opcodes/z8k-opc.h#1 branch .. //depot/projects/arm/src/contrib/binutils/opcodes/z8kgen.c#1 branch .. //depot/projects/arm/src/contrib/cpio/COPYING.LIB#1 branch .. //depot/projects/arm/src/contrib/cpio/alloca.c#1 branch .. //depot/projects/arm/src/contrib/cpio/copyin.c#1 branch .. //depot/projects/arm/src/contrib/cpio/copyout.c#1 branch .. //depot/projects/arm/src/contrib/cpio/copypass.c#1 branch .. //depot/projects/arm/src/contrib/cpio/cpio.1#1 branch .. //depot/projects/arm/src/contrib/cpio/cpio.h#1 branch .. //depot/projects/arm/src/contrib/cpio/cpio.texi#1 branch .. //depot/projects/arm/src/contrib/cpio/cpiohdr.h#1 branch .. //depot/projects/arm/src/contrib/cpio/defer.c#1 branch .. //depot/projects/arm/src/contrib/cpio/defer.h#1 branch .. //depot/projects/arm/src/contrib/cpio/dirname.c#1 branch .. //depot/projects/arm/src/contrib/cpio/dstring.c#1 branch .. //depot/projects/arm/src/contrib/cpio/dstring.h#1 branch .. //depot/projects/arm/src/contrib/cpio/error.c#1 branch .. //depot/projects/arm/src/contrib/cpio/extern.h#1 branch .. //depot/projects/arm/src/contrib/cpio/filemode.c#1 branch .. //depot/projects/arm/src/contrib/cpio/filetypes.h#1 branch .. //depot/projects/arm/src/contrib/cpio/getopt.c#1 branch .. //depot/projects/arm/src/contrib/cpio/getopt.h#1 branch .. //depot/projects/arm/src/contrib/cpio/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/cpio/global.c#1 branch .. //depot/projects/arm/src/contrib/cpio/idcache.c#1 branch .. //depot/projects/arm/src/contrib/cpio/main.c#1 branch .. //depot/projects/arm/src/contrib/cpio/makepath.c#1 branch .. //depot/projects/arm/src/contrib/cpio/rmt.h#1 branch .. //depot/projects/arm/src/contrib/cpio/rtapelib.c#1 branch .. //depot/projects/arm/src/contrib/cpio/safe-stat.h#1 branch .. //depot/projects/arm/src/contrib/cpio/stripslash.c#1 branch .. //depot/projects/arm/src/contrib/cpio/system.h#1 branch .. //depot/projects/arm/src/contrib/cpio/tar.c#1 branch .. //depot/projects/arm/src/contrib/cpio/tar.h#1 branch .. //depot/projects/arm/src/contrib/cpio/tarhdr.h#1 branch .. //depot/projects/arm/src/contrib/cpio/userspec.c#1 branch .. //depot/projects/arm/src/contrib/cpio/util.c#1 branch .. //depot/projects/arm/src/contrib/cpio/version.c#1 branch .. //depot/projects/arm/src/contrib/cpio/xmalloc.c#1 branch .. //depot/projects/arm/src/contrib/cpio/xstrdup.c#1 branch .. //depot/projects/arm/src/contrib/cvs/acconfig.h#1 branch .. //depot/projects/arm/src/contrib/cvs/lib/fnmatch.h#1 branch .. //depot/projects/arm/src/contrib/cvs/lib/hostname.c#1 branch .. //depot/projects/arm/src/contrib/cvs/src/options.h.in#1 branch .. //depot/projects/arm/src/contrib/cvs/src/prepend_args.c#1 branch .. //depot/projects/arm/src/contrib/cvs/src/prepend_args.h#1 branch .. //depot/projects/arm/src/contrib/cvs/src/stamp-h2.in#1 branch .. //depot/projects/arm/src/contrib/cvs/src/version.c.in#1 branch .. //depot/projects/arm/src/contrib/cvs/stamp-h1.in#1 branch .. //depot/projects/arm/src/contrib/diff/getopt.c#1 branch .. //depot/projects/arm/src/contrib/diff/getopt.h#1 branch .. //depot/projects/arm/src/contrib/diff/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/gcc/acconfig.h#1 branch .. //depot/projects/arm/src/contrib/gcc/c-lex.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config.guess#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/alpha-interix.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/alpha32.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/linux-ecoff.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/osf12.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/osf2or3.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/t-interix#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/vxworks.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/xm-alpha-interix.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/alpha/xm-vms64.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/aoutos.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/arm-wince-pe.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/conix-elf.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/riscix.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/riscix1-1.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/rix-gas.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/t-arm-aout#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/t-riscix#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/t-strongarm-coff#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/unknown-elf-oabi.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/arm/vxarm.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-c4x.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-i128.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-i32.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-i386.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-i64.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-m68k.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-sh.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-sparc.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/float-vax.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/freebsd3.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/freebsd4.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/freebsd5.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/freebsd6.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/386bsd.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/aix386.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/aix386ng.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/bsd386.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/dgux.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/djgpp-rtems.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/freebsd.h.fixed#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/interix.c#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/isc.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/isccoff.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/iscdbx.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/linux-oldld.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/next.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/osf1-ci.asm#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/osf1-cn.asm#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/osf1elf.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/osf1elfgdb.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/osfelf.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/osfrose.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/rtems.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/seq-gas.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/seq-sysv3.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/seq2-sysv3.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/sequent.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/sol2gas.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/sun.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/sun386.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/t-dgux#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/t-next#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/t-osf#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/t-osf1elf#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/t-sco5gas#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/v3gas.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/vxi386.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/win32.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/xm-i386-interix.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/i386/xm-vsta.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/ia64/aix.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/ia64/hpux_longdouble.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/ia64/t-aix#1 branch .. //depot/projects/arm/src/contrib/gcc/config/ia64/unwind-aix.c#1 branch .. //depot/projects/arm/src/contrib/gcc/config/nextstep-protos.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/nextstep.c#1 branch .. //depot/projects/arm/src/contrib/gcc/config/nextstep.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/nextstep21.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/psos.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/rs6000/aix31.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/rs6000/aix3newas.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/rs6000/eabiaix.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/rs6000/mach.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/rs6000/softfloat.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/rs6000/vxppc.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/bsd.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/hal.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/linux-aout.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/lynx-ng.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/lynx.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/netbsd.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/rtems.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/sol2-g1.asm#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/sol27-sld.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/sp86x-aout.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/splet.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/sun4gas.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/sun4o3.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/sunos4.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-chorus-elf#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-halos#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-sparcbare#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-splet#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-sunos41#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-vxsparc#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/t-vxsparc64#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/vxsim.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/vxsparc.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/sparc/vxsparc64.h#1 branch .. //depot/projects/arm/src/contrib/gcc/config/t-install-cpp#1 branch .. //depot/projects/arm/src/contrib/gcc/config/t-interix#1 branch .. //depot/projects/arm/src/contrib/gcc/config/t-linux-aout#1 branch .. //depot/projects/arm/src/contrib/gcc/configure.frag#1 branch .. //depot/projects/arm/src/contrib/gcc/configure.in#1 branch .. //depot/projects/arm/src/contrib/gcc/cp/cfns.h#1 branch .. //depot/projects/arm/src/contrib/gcc/cp/lang-options.h#1 branch .. //depot/projects/arm/src/contrib/gcc/cp/mpw-config.in#1 branch .. //depot/projects/arm/src/contrib/gcc/cp/mpw-make.sed#1 branch .. //depot/projects/arm/src/contrib/gcc/cp/parse.y#1 branch .. //depot/projects/arm/src/contrib/gcc/cp/spew.c#1 branch .. //depot/projects/arm/src/contrib/gcc/cppmain.c#1 branch .. //depot/projects/arm/src/contrib/gcc/dbxstclass.h#1 branch .. //depot/projects/arm/src/contrib/gcc/dependence.c#1 branch .. //depot/projects/arm/src/contrib/gcc/doc/install-old.texi#1 branch .. //depot/projects/arm/src/contrib/gcc/doc/install.texi#1 branch .. //depot/projects/arm/src/contrib/gcc/doc/install.texi2html#1 branch .. //depot/projects/arm/src/contrib/gcc/doc/vms.texi#1 branch .. //depot/projects/arm/src/contrib/gcc/doschk.c#1 branch .. //depot/projects/arm/src/contrib/gcc/enquire.c#1 branch .. //depot/projects/arm/src/contrib/gcc/f/README#1 branch .. //depot/projects/arm/src/contrib/gcc/f/lang-options.h#1 branch .. //depot/projects/arm/src/contrib/gcc/f/version.c#1 branch .. //depot/projects/arm/src/contrib/gcc/f/version.h#1 branch .. //depot/projects/arm/src/contrib/gcc/floatlib.c#1 branch .. //depot/projects/arm/src/contrib/gcc/future.options#1 branch .. //depot/projects/arm/src/contrib/gcc/getopt.c#1 branch .. //depot/projects/arm/src/contrib/gcc/getopt.h#1 branch .. //depot/projects/arm/src/contrib/gcc/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/gcc/ggc-callbacks.c#1 branch .. //depot/projects/arm/src/contrib/gcc/halfpic.c#1 branch .. //depot/projects/arm/src/contrib/gcc/halfpic.h#1 branch .. //depot/projects/arm/src/contrib/gcc/hash.c#1 branch .. //depot/projects/arm/src/contrib/gcc/hash.h#1 branch .. //depot/projects/arm/src/contrib/gcc/mbchar.c#1 branch .. //depot/projects/arm/src/contrib/gcc/mbchar.h#1 branch .. //depot/projects/arm/src/contrib/gcc/objc/lang-options.h#1 branch .. //depot/projects/arm/src/contrib/gcc/ssa-ccp.c#1 branch .. //depot/projects/arm/src/contrib/gcc/ssa-dce.c#1 branch .. //depot/projects/arm/src/contrib/gcc/ssa.c#1 branch .. //depot/projects/arm/src/contrib/gcc/ssa.h#1 branch .. //depot/projects/arm/src/contrib/gcc/tradcif.y#1 branch .. //depot/projects/arm/src/contrib/gcc/tradcpp.c#1 branch .. //depot/projects/arm/src/contrib/gcc/tradcpp.h#1 branch .. //depot/projects/arm/src/contrib/gdb/ChangeLog#1 branch .. //depot/projects/arm/src/contrib/gdb/FREEBSD-deletelist#1 branch .. //depot/projects/arm/src/contrib/gdb/MAINTAINERS#1 branch .. //depot/projects/arm/src/contrib/gdb/Makefile.in#1 branch .. //depot/projects/arm/src/contrib/gdb/config.guess#1 branch .. //depot/projects/arm/src/contrib/gdb/config.if#1 branch .. //depot/projects/arm/src/contrib/gdb/config.sub#1 branch .. //depot/projects/arm/src/contrib/gdb/configure#1 branch .. //depot/projects/arm/src/contrib/gdb/configure.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1990#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1991#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1992#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1993#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1994#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1995#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1996#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1997#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1998#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-1999#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-2000#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-2001#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-3.x#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-96#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-97#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ChangeLog-98#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/Makefile.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/arc-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/arm-linux-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/arm-linux-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ch-exp.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ch-lang.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ch-lang.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ch-typeprint.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ch-valprint.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/command.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/alpha-linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/alpha-linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/alpha-osf1.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/alpha-osf1.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/tm-alphalinux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/alpha/xm-alphalinux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/arm/linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/arm/linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/arm/nbsd.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/arm/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/arm/tm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/arm/xm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/cygwin.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/cygwin.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/gdbserve.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386aix.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386aix.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386bsd.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386bsd.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386dgux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386m3.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386m3.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386mach.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386mk.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386mk.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386os9k.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386sco5.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386v32.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386v4.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/i386v42mp.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nbsd.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nbsdelf.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-cygwin.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-gnu.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-i386aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-i386bsd.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-i386mach.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-m3.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-nbsdelf.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-ptx4.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-sun386.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-symmetry.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/nm-x86-64.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/ptx.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/ptx.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/ptx4.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/ptx4.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/sun386.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/sun386.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/symmetry.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/symmetry.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-cygwin.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386bsd.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386gnu.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386m3.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386mk.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386nw.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386os9k.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386sco5.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386v.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386v4.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-i386v42mp.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-nbsdelf.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-obsd.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-ptx.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-ptx4.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-sun386.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/tm-symmetry.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/x86-64linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/x86-64linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-cygwin.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386bsd.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386gnu.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386lynx.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386m3.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386mach.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386mk.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-i386v32.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-ptx.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-ptx4.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-sun386.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-symmetry.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/i386/xm-windows.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/aix.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/aix.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/nm-aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/tm-aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/tm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/xm-aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/ia64/xm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/none/nm-none.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/none/none.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/none/none.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/none/tm-none.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/none/xm-none.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/aix.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/aix.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/gdbserve.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/nm-aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/ppcle-eabi.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/ppcle-sim.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/tm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/tm-ppc-aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/tm-ppc-sim.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/xm-aix.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/xm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/linux.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/nbsd.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/nm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/nm-nbsdelf.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/nm-sparclynx.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/nm-sun4os4.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/nm-sun4sol2.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sp64.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sp64linux.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sp64sim.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sp64sol2.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sparc-em.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sparclet.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sparclite.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sparclynx.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sparclynx.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sun4os4.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sun4os4.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sun4sol2.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/sun4sol2.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sp64.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sp64linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sp64sim.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sparc.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sparclet.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sparclite.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sparclynx.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-spc-em.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sun4os4.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-sun4sol2.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/tm-vxsparc.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/vxsparc.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/xm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/xm-nbsd.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/sparc/xm-sun4sol2.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/tm-linux.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/configure#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/configure.host#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/configure.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/configure.tgt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/doc/ChangeLog#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/doc/Makefile.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/doc/annotate.texi#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/doc/configure#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/doc/configure.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/doc/libgdb.texinfo#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/dst.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/dstread.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/dwarf2cfi.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/dwarf2cfi.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdba.el#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/Makefile.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/acconfig.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/config.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/configure#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/configure.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/configure.srv#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/linux-arm-low.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/linux-i386-low.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/linux-ia64-low.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/linux-low.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/linux-low.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/linux-x86-64-low.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-hppabsd.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-linux.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-lynx.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-nbsd.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-sim.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-sparc.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gdbserver/low-sun3.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gnu-regex.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/gnu-regex.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/hp-psymtab-read.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/hp-symtab-read.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/hpread.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/hpux-thread.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/i386-linux-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/i386-linux-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/i386b-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/i386nbsd-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/i387-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/i387-nat.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ia64-aix-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ia64-aix-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ia64-linux-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ia64-linux-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/jv-exp.tab.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/linux-proc.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/mi/ChangeLog#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/mi/gdbmi.texinfo#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/Makefile.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/configure#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/configure.in#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/gdbserve.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/gdbserve.def#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/i386.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/i386.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/ppc.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/ppc.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/nlm/prelude.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/partial-stab.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ppc-linux-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ppc-linux-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/regformats/reg-i386-linux.dat#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/saber.suppress#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/signals.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/signals.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/sparc-linux-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/sparcl-stub.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/sparcl-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/sparclet-rom.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/sparclet-stub.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/x86-64-linux-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/x86-64-linux-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/x86-64-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/x86-64-tdep.h#1 branch .. //depot/projects/arm/src/contrib/gdb/include/gdb/ChangeLog#1 branch .. //depot/projects/arm/src/contrib/gnu-sort/README-alpha#1 branch .. //depot/projects/arm/src/contrib/gnu-sort/lib/getopt.c#1 branch .. //depot/projects/arm/src/contrib/gnu-sort/lib/getopt.h#1 branch .. //depot/projects/arm/src/contrib/gnu-sort/lib/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/gnu-sort/src/sys2.h#1 branch .. //depot/projects/arm/src/contrib/gperf/lib/getopt.c#1 branch .. //depot/projects/arm/src/contrib/gperf/lib/getopt.c.patch#1 branch .. //depot/projects/arm/src/contrib/gperf/lib/getopt.h#1 branch .. //depot/projects/arm/src/contrib/gperf/lib/getopt.h.patch#1 branch .. //depot/projects/arm/src/contrib/gperf/lib/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/groff/README.WIN32#1 branch .. //depot/projects/arm/src/contrib/groff/doc/Makefile#1 branch .. //depot/projects/arm/src/contrib/groff/doc/homepage.ms#1 branch .. //depot/projects/arm/src/contrib/groff/font/devdvi/B#1 branch .. //depot/projects/arm/src/contrib/groff/font/devdvi/BI#1 branch .. //depot/projects/arm/src/contrib/groff/font/devdvi/H#1 branch .. //depot/projects/arm/src/contrib/groff/font/devdvi/I#1 branch .. //depot/projects/arm/src/contrib/groff/font/devdvi/R#1 branch .. //depot/projects/arm/src/contrib/groff/font/devdvi/generate/cork.map#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grodvi/dvi.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grohtml/html-text.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grohtml/output.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grohtml/post-html.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grolbp/lbp.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grolj4/lj4.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grops/ps.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grops/psrm.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/devices/grotty/tty.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/include/getopt.h#1 branch .. //depot/projects/arm/src/contrib/groff/src/include/groff-getopt.h#1 branch .. //depot/projects/arm/src/contrib/groff/src/include/htmlindicate.h#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libbib/common.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libbib/index.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libbib/linear.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libbib/search.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libdriver/input.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libdriver/printer.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/assert.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/change_lf.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/cmap.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/cset.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/device.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/errarg.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/error.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/fatal.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/filename.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/font.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/fontfile.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/getopt.c#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/getopt1.c#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/htmlindicate.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/illegal.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/lf.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/lineno.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/macropath.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/maxfilename.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/nametoindex.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/new.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/prime.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/progname.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/ptable.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/searchpath.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/string.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/strsave.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/libs/libgroff/tmpfile.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/box.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/delim.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/lex.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/limit.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/list.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/main.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/mark.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/other.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/over.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/pile.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/script.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/special.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/sqrt.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/eqn/text.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/grn/hdb.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/grn/hgraph.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/grn/hpoint.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/grn/main.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/html/pre-html.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/html/pushbackbuffer.cc#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/html/pushbackbuffer.h#1 branch .. //depot/projects/arm/src/contrib/groff/src/preproc/pic/common.cc#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 06:20:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 291DA16A419; Fri, 28 Dec 2007 06:20:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9630816A469 for ; Fri, 28 Dec 2007 06:20:10 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4076B13C455 for ; Fri, 28 Dec 2007 06:20:10 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS6KA8t069660 for ; Fri, 28 Dec 2007 06:20:10 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS6Jlt0069595 for perforce@freebsd.org; Fri, 28 Dec 2007 06:19:47 GMT (envelope-from imp@freebsd.org) Date: Fri, 28 Dec 2007 06:19:47 GMT Message-Id: <200712280619.lBS6Jlt0069595@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 131856 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 06:20:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=131856 Change 131856 by imp@imp_paco-paco on 2007/12/28 06:19:27 IFC @131849 Affected files ... .. //depot/projects/mips2/src/Makefile#5 integrate .. //depot/projects/mips2/src/ObsoleteFiles.inc#12 integrate .. //depot/projects/mips2/src/bin/cp/cp.c#4 integrate .. //depot/projects/mips2/src/bin/ed/Makefile#3 integrate .. //depot/projects/mips2/src/bin/mv/mv.c#2 integrate .. //depot/projects/mips2/src/bin/sh/sh.1#5 integrate .. //depot/projects/mips2/src/contrib/amd/AUTHORS#2 integrate .. //depot/projects/mips2/src/contrib/amd/BUGS#2 integrate .. //depot/projects/mips2/src/contrib/amd/COPYING#2 integrate .. //depot/projects/mips2/src/contrib/amd/ChangeLog#2 integrate .. //depot/projects/mips2/src/contrib/amd/FAQ#1 branch .. //depot/projects/mips2/src/contrib/amd/FREEBSD-Xlist#2 integrate .. //depot/projects/mips2/src/contrib/amd/FREEBSD-upgrade#2 integrate .. //depot/projects/mips2/src/contrib/amd/INSTALL#2 integrate .. //depot/projects/mips2/src/contrib/amd/NEWS#2 integrate .. //depot/projects/mips2/src/contrib/amd/README.attrcache#1 branch .. //depot/projects/mips2/src/contrib/amd/README.ldap#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/am_ops.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amd.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amd.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amd.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_auto.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_direct.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_error.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_generic.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_host.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_inherit.c#2 delete .. //depot/projects/mips2/src/contrib/amd/amd/amfs_link.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_linkx.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_nfsl.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_nfsx.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_program.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_root.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_toplvl.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amfs_union.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amq_subr.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/amq_svc.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/autil.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/clock.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/conf.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/conf_parse.y#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/conf_tok.l#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/get_args.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_exec.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_file.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_hesiod.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_ldap.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_ndbm.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_nis.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_nisplus.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_passwd.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/info_union.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/map.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/mapc.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/mntfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/nfs_prot_svc.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/nfs_start.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/nfs_subr.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_TEMPLATE.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_cachefs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_cdfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_efs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_lofs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_mfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_nfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_nfs3.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_nullfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_pcfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_tfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_tmpfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_ufs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_umapfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_unionfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/ops_xfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/opts.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/readdir.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/restart.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/rpc_fwd.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/sched.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/srvr_amfs_auto.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amd/srvr_nfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amq/amq.8#3 integrate .. //depot/projects/mips2/src/contrib/amd/amq/amq.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amq/amq.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/amq/amq_clnt.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amq/amq_xdr.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/amq/pawd.1#2 integrate .. //depot/projects/mips2/src/contrib/amd/amq/pawd.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/aux_conf.h.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/bootstrap#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/checkmount/checkmount_bsd44.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/mtab/mtab_bsd.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/sa_dref/sa_dref_bsd44.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/transp/transp_sockets.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/trap/trap_default.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/conf/umount/umount_bsd44.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/doc/am-utils.texi#2 integrate .. //depot/projects/mips2/src/contrib/amd/doc/stamp-vti#1 branch .. //depot/projects/mips2/src/contrib/amd/doc/texinfo.tex#2 integrate .. //depot/projects/mips2/src/contrib/amd/doc/version.texi#2 integrate .. //depot/projects/mips2/src/contrib/amd/fixmount/fixmount.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/fixmount/fixmount.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_analyze.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_data.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_dict.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_gram.y#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_lex.l#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_util.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsinfo.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsinfo.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsinfo.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_atab.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_bparam.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_dumpset.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_exportfs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_fstab.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/hlfsd/hlfsd.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/hlfsd/hlfsd.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/hlfsd/hlfsd.h#3 integrate .. //depot/projects/mips2/src/contrib/amd/hlfsd/homedir.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/hlfsd/nfs_prot_svc.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/hlfsd/stubs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/am_compat.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/am_defs.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/am_utils.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/am_xdr_func.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/amq_defs.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/mount_headers1.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/include/mount_headers2.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/ldap-id.ms#2 integrate .. //depot/projects/mips2/src/contrib/amd/ldap.schema#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/alloca.c#2 delete .. //depot/projects/mips2/src/contrib/amd/libamu/amu.h#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/hasmntopt.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/misc_rpc.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/mount_fs.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/mtab.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/nfs_prot_xdr.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/strerror.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/strutil.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/util.c#2 delete .. //depot/projects/mips2/src/contrib/amd/libamu/wire.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/xdr_func.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/libamu/xutil.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/m4/GNUmakefile#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/amdgrep#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/amindent#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/autopat#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/chop-aclocal.pl#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/copy-if-newbig#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/macros/HEADER#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/macros/TRAILER#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/mk-aclocal#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/mkconf#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/rmtspc#2 delete .. //depot/projects/mips2/src/contrib/amd/m4/update_build_version#2 delete .. //depot/projects/mips2/src/contrib/amd/mk-amd-map/mk-amd-map.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/mk-amd-map/mk-amd-map.c#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/am-eject.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/amd.conf-sample#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/amd.conf.5#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/amd2ldif.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/amd2sun.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/automount2amd.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/automount2amd.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/ctl-amd.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/ctl-hlfsd.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/expn.1#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/expn.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/fix-amd-map.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/fixrmtab.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/redhat-ctl-amd.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/test-attrcache.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/wait4amd.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/scripts/wait4amd2die.in#2 integrate .. //depot/projects/mips2/src/contrib/amd/tasks#2 integrate .. //depot/projects/mips2/src/contrib/amd/vers.m4#1 branch .. //depot/projects/mips2/src/contrib/amd/wire-test/wire-test.8#2 integrate .. //depot/projects/mips2/src/contrib/amd/wire-test/wire-test.c#2 integrate .. //depot/projects/mips2/src/contrib/gcc/config/sparc/freebsd.h#3 integrate .. //depot/projects/mips2/src/contrib/gcc/fold-const.c#5 integrate .. //depot/projects/mips2/src/contrib/gdtoa/gdtoaimp.h#3 integrate .. //depot/projects/mips2/src/contrib/gdtoa/hexnan.c#3 integrate .. //depot/projects/mips2/src/contrib/gdtoa/strtod.c#3 integrate .. //depot/projects/mips2/src/contrib/gdtoa/strtof.c#3 integrate .. //depot/projects/mips2/src/contrib/gdtoa/strtorQ.c#3 integrate .. //depot/projects/mips2/src/contrib/gdtoa/strtorx.c#3 integrate .. //depot/projects/mips2/src/contrib/openpam/CREDITS#2 integrate .. //depot/projects/mips2/src/contrib/openpam/HISTORY#2 integrate .. //depot/projects/mips2/src/contrib/openpam/INSTALL#2 integrate .. //depot/projects/mips2/src/contrib/openpam/LICENSE#2 integrate .. //depot/projects/mips2/src/contrib/openpam/MANIFEST#2 delete .. //depot/projects/mips2/src/contrib/openpam/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/README#2 integrate .. //depot/projects/mips2/src/contrib/openpam/RELNOTES#2 integrate .. //depot/projects/mips2/src/contrib/openpam/aclocal.m4#2 integrate .. //depot/projects/mips2/src/contrib/openpam/autogen.sh#2 integrate .. //depot/projects/mips2/src/contrib/openpam/bin/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/bin/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/bin/su/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/bin/su/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/bin/su/su.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/compile#1 branch .. //depot/projects/mips2/src/contrib/openpam/config.h.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/configure#2 integrate .. //depot/projects/mips2/src/contrib/openpam/configure.ac#2 integrate .. //depot/projects/mips2/src/contrib/openpam/configure.in#2 delete .. //depot/projects/mips2/src/contrib/openpam/depcomp#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam.man#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_borrow_cred.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_free_data.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_free_envlist.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_get_option.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_log.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_nullconv.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_readline.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_restore_cred.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_set_option.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/openpam_ttyconv.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam.conf.5#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam.man#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_acct_mgmt.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_authenticate.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_chauthtok.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_close_session.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_conv.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_end.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_error.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_get_authtok.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_get_data.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_get_item.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_get_user.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_getenv.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_getenvlist.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_info.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_open_session.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_prompt.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_putenv.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_set_data.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_set_item.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_setcred.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_setenv.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_sm_acct_mgmt.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_sm_authenticate.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_sm_chauthtok.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_sm_close_session.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_sm_open_session.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_sm_setcred.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_start.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_strerror.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_verror.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_vinfo.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/doc/man/pam_vprompt.3#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/openpam.h#3 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/openpam_attr.h#1 branch .. //depot/projects/mips2/src/contrib/openpam/include/security/openpam_version.h#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/pam_appl.h#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/pam_constants.h#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/pam_modules.h#2 integrate .. //depot/projects/mips2/src/contrib/openpam/include/security/pam_types.h#2 integrate .. //depot/projects/mips2/src/contrib/openpam/install-sh#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_borrow_cred.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_configure.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_dispatch.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_dynamic.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_findenv.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_free_data.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_free_envlist.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_get_option.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_impl.h#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_load.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_log.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_nullconv.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_readline.c#3 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_restore_cred.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_set_option.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_static.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/openpam_ttyconv.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_acct_mgmt.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_authenticate.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_authenticate_secondary.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_chauthtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_close_session.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_end.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_error.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_get_authtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_get_data.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_get_item.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_get_mapped_authtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_get_mapped_username.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_get_user.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_getenv.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_getenvlist.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_info.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_open_session.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_prompt.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_putenv.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_set_data.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_set_item.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_set_mapped_authtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_set_mapped_username.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_setcred.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_setenv.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_acct_mgmt.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_authenticate.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_authenticate_secondary.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_chauthtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_close_session.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_get_mapped_authtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_get_mapped_username.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_open_session.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_set_mapped_authtok.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_set_mapped_username.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_sm_setcred.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_start.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_strerror.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_verror.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_vinfo.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/lib/pam_vprompt.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/ltconfig#2 delete .. //depot/projects/mips2/src/contrib/openpam/ltmain.sh#2 integrate .. //depot/projects/mips2/src/contrib/openpam/misc/gendoc.pl#2 integrate .. //depot/projects/mips2/src/contrib/openpam/missing#2 integrate .. //depot/projects/mips2/src/contrib/openpam/mkinstalldirs#2 delete .. //depot/projects/mips2/src/contrib/openpam/modules/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_deny/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_deny/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_deny/pam_deny.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_permit/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_permit/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_permit/pam_permit.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_unix/Makefile.am#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_unix/Makefile.in#2 integrate .. //depot/projects/mips2/src/contrib/openpam/modules/pam_unix/pam_unix.c#2 integrate .. //depot/projects/mips2/src/contrib/openpam/stamp-h.in#2 delete .. //depot/projects/mips2/src/etc/defaults/periodic.conf#6 integrate .. //depot/projects/mips2/src/etc/rc.d/DAEMON#2 integrate .. //depot/projects/mips2/src/etc/rc.d/LOGIN#2 integrate .. //depot/projects/mips2/src/etc/rc.d/Makefile#6 integrate .. //depot/projects/mips2/src/etc/rc.d/NETWORKING#4 integrate .. //depot/projects/mips2/src/etc/rc.d/SERVERS#2 integrate .. //depot/projects/mips2/src/etc/rc.d/accounting#3 integrate .. //depot/projects/mips2/src/etc/rc.d/amd#4 integrate .. //depot/projects/mips2/src/etc/rc.d/apmd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/bootconf.sh#3 delete .. //depot/projects/mips2/src/etc/rc.d/bootparams#2 integrate .. //depot/projects/mips2/src/etc/rc.d/ccd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/cron#2 integrate .. //depot/projects/mips2/src/etc/rc.d/dhclient#4 integrate .. //depot/projects/mips2/src/etc/rc.d/dmesg#2 integrate .. //depot/projects/mips2/src/etc/rc.d/fsck#3 integrate .. //depot/projects/mips2/src/etc/rc.d/ftp-proxy#2 integrate .. //depot/projects/mips2/src/etc/rc.d/inetd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/ipfilter#4 integrate .. //depot/projects/mips2/src/etc/rc.d/ipfs#2 integrate .. //depot/projects/mips2/src/etc/rc.d/ipmon#3 integrate .. //depot/projects/mips2/src/etc/rc.d/ipnat#3 integrate .. //depot/projects/mips2/src/etc/rc.d/ipsec#5 integrate .. //depot/projects/mips2/src/etc/rc.d/isdnd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/keyserv#2 integrate .. //depot/projects/mips2/src/etc/rc.d/ldconfig#3 integrate .. //depot/projects/mips2/src/etc/rc.d/local#2 integrate .. //depot/projects/mips2/src/etc/rc.d/lockd#4 integrate .. //depot/projects/mips2/src/etc/rc.d/lpd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/motd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/mountcritlocal#4 integrate .. //depot/projects/mips2/src/etc/rc.d/mountcritremote#4 integrate .. //depot/projects/mips2/src/etc/rc.d/mountd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/moused#3 integrate .. //depot/projects/mips2/src/etc/rc.d/mrouted#3 integrate .. //depot/projects/mips2/src/etc/rc.d/newsyslog#2 integrate .. //depot/projects/mips2/src/etc/rc.d/nfsd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/power_profile#3 integrate .. //depot/projects/mips2/src/etc/rc.d/pwcheck#2 integrate .. //depot/projects/mips2/src/etc/rc.d/quota#3 integrate .. //depot/projects/mips2/src/etc/rc.d/rarpd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/resolv#3 integrate .. //depot/projects/mips2/src/etc/rc.d/root#3 integrate .. //depot/projects/mips2/src/etc/rc.d/route6d#2 integrate .. //depot/projects/mips2/src/etc/rc.d/routed#2 integrate .. //depot/projects/mips2/src/etc/rc.d/rpcbind#2 integrate .. //depot/projects/mips2/src/etc/rc.d/rtadvd#2 integrate .. //depot/projects/mips2/src/etc/rc.d/rwho#2 integrate .. //depot/projects/mips2/src/etc/rc.d/savecore#2 integrate .. //depot/projects/mips2/src/etc/rc.d/securelevel#2 integrate .. //depot/projects/mips2/src/etc/rc.d/sendmail#3 integrate .. //depot/projects/mips2/src/etc/rc.d/sshd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/statd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/swap1#2 integrate .. //depot/projects/mips2/src/etc/rc.d/sysctl#2 integrate .. //depot/projects/mips2/src/etc/rc.d/syslogd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/timed#2 integrate .. //depot/projects/mips2/src/etc/rc.d/tmp#3 integrate .. //depot/projects/mips2/src/etc/rc.d/ugidfw#3 integrate .. //depot/projects/mips2/src/etc/rc.d/var#4 integrate .. //depot/projects/mips2/src/etc/rc.d/virecover#2 integrate .. //depot/projects/mips2/src/etc/rc.d/ypbind#3 integrate .. //depot/projects/mips2/src/etc/rc.d/yppasswdd#3 integrate .. //depot/projects/mips2/src/etc/rc.d/ypserv#3 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/Makefile#3 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/fortunes#7 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/fortunes-o.real#4 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/fortunes-o.sp.ok#2 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/fortunes.sp.ok#3 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/fortunes2-o#3 delete .. //depot/projects/mips2/src/games/fortune/datfiles/freebsd-tips#3 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/freebsd-tips.sp.ok#1 branch .. //depot/projects/mips2/src/games/fortune/datfiles/limerick#4 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/limerick.sp.ok#1 branch .. //depot/projects/mips2/src/games/fortune/datfiles/murphy#2 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/murphy-o#2 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/murphy.sp.ok#1 branch .. //depot/projects/mips2/src/games/fortune/datfiles/startrek#3 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/zippy#3 integrate .. //depot/projects/mips2/src/games/fortune/datfiles/zippy.sp.ok#2 integrate .. //depot/projects/mips2/src/include/complex.h#2 integrate .. //depot/projects/mips2/src/include/nsswitch.h#2 integrate .. //depot/projects/mips2/src/include/pthread_np.h#3 integrate .. //depot/projects/mips2/src/lib/Makefile#9 integrate .. //depot/projects/mips2/src/lib/libc/Versions.def#3 integrate .. //depot/projects/mips2/src/lib/libc/amd64/Symbol.map#3 integrate .. //depot/projects/mips2/src/lib/libc/amd64/gd_qnan.h#2 integrate .. //depot/projects/mips2/src/lib/libc/arm/gd_qnan.h#2 integrate .. //depot/projects/mips2/src/lib/libc/gdtoa/Symbol.map#4 integrate .. //depot/projects/mips2/src/lib/libc/gdtoa/_ldtoa.c#4 integrate .. //depot/projects/mips2/src/lib/libc/gen/getgrent.c#4 integrate .. //depot/projects/mips2/src/lib/libc/gen/getgrouplist.c#3 integrate .. //depot/projects/mips2/src/lib/libc/gen/sem_open.3#2 integrate .. //depot/projects/mips2/src/lib/libc/i386/Symbol.map#4 integrate .. //depot/projects/mips2/src/lib/libc/i386/gd_qnan.h#2 integrate .. //depot/projects/mips2/src/lib/libc/ia64/Symbol.map#4 integrate .. //depot/projects/mips2/src/lib/libc/ia64/gd_qnan.h#2 integrate .. //depot/projects/mips2/src/lib/libc/locale/localeconv.c#2 integrate .. //depot/projects/mips2/src/lib/libc/net/nsdispatch.c#3 integrate .. //depot/projects/mips2/src/lib/libc/sparc64/Symbol.map#3 integrate .. //depot/projects/mips2/src/lib/libc/sparc64/gd_qnan.h#2 integrate .. //depot/projects/mips2/src/lib/libc/stdio/Symbol.map#3 integrate .. //depot/projects/mips2/src/lib/libc/stdio/vfscanf.c#3 integrate .. //depot/projects/mips2/src/lib/libc/stdio/vfwprintf.c#3 integrate .. //depot/projects/mips2/src/lib/libc/stdio/vfwscanf.c#3 integrate .. //depot/projects/mips2/src/lib/libc/stdlib/grantpt.c#2 integrate .. //depot/projects/mips2/src/lib/libc/stdlib/malloc.3#5 integrate .. //depot/projects/mips2/src/lib/libc/stdlib/malloc.c#8 integrate .. //depot/projects/mips2/src/lib/libc/stdlib/rand.c#3 integrate .. //depot/projects/mips2/src/lib/libc/stdlib/strtod.3#3 integrate .. //depot/projects/mips2/src/lib/libc/stdtime/localtime.c#3 integrate .. //depot/projects/mips2/src/lib/libc/string/strtok.3#2 integrate .. //depot/projects/mips2/src/lib/libc/string/strtok.c#2 integrate .. //depot/projects/mips2/src/lib/libc/string/wcstok.c#2 integrate .. //depot/projects/mips2/src/lib/libc/sys/access.2#3 integrate .. //depot/projects/mips2/src/lib/libc/sys/select.2#3 integrate .. //depot/projects/mips2/src/lib/libfetch/Makefile#4 integrate .. //depot/projects/mips2/src/lib/libfetch/common.c#2 integrate .. //depot/projects/mips2/src/lib/libfetch/common.h#2 integrate .. //depot/projects/mips2/src/lib/libfetch/fetch.3#3 integrate .. //depot/projects/mips2/src/lib/libfetch/fetch.c#2 integrate .. //depot/projects/mips2/src/lib/libfetch/file.c#2 integrate .. //depot/projects/mips2/src/lib/libfetch/ftp.c#3 integrate .. //depot/projects/mips2/src/lib/libfetch/http.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/sys/thr_error.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_accept.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_aio_suspend.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_atfork.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_destroy.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_get_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getdetachstate.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getguardsize.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getinheritsched.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getschedparam.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getschedpolicy.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getscope.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getstack.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getstackaddr.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_getstacksize.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_init.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setcreatesuspend_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setdetachstate.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setguardsize.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setinheritsched.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setschedparam.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setschedpolicy.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setscope.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setstack.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setstackaddr.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_attr_setstacksize.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_barrier.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_barrierattr.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_cancel.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_clean.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_close.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_concurrency.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_cond.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_condattr_destroy.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_condattr_init.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_connect.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_creat.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_create.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_detach.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_equal.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_execve.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_exit.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_fork.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_fsync.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_getprio.c#2 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_getschedparam.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_info.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_init.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_join.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_kern.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_kill.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_main_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_mattr_init.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_mattr_kind_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_msync.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_multi_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_mutex.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_mutex_prioceiling.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_mutex_protocol.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_mutexattr_destroy.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_nanosleep.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_once.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_open.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_pause.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_poll.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_private.h#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_pselect.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_pspinlock.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_raise.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_read.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_readv.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_resume_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_rwlock.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_rwlockattr.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_select.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_self.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sem.c#2 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_setprio.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_setschedparam.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigaction.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigaltstack.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigmask.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigpending.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigprocmask.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigsuspend.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sigwait.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_single_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_sleep.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_spec.c#4 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_spinlock.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_suspend_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_switch_np.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_symbols.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_system.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_tcdrain.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_vfork.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_wait.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_wait4.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_waitpid.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_write.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_writev.c#3 integrate .. //depot/projects/mips2/src/lib/libkse/thread/thr_yield.c#3 integrate .. //depot/projects/mips2/src/lib/libpam/libpam/Makefile#2 integrate .. //depot/projects/mips2/src/lib/libpam/modules/pam_krb5/pam_krb5.c#2 integrate .. //depot/projects/mips2/src/lib/libpam/modules/pam_ssh/pam_ssh.c#3 integrate .. //depot/projects/mips2/src/lib/libpam/modules/pam_unix/pam_unix.c#3 integrate .. //depot/projects/mips2/src/lib/libpmc/libpmc.c#3 integrate .. //depot/projects/mips2/src/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/mips2/src/lib/libstand/gzipfs.c#2 integrate .. //depot/projects/mips2/src/lib/libthr/pthread.map#5 integrate .. //depot/projects/mips2/src/lib/libthr/thread/thr_exit.c#3 integrate .. //depot/projects/mips2/src/lib/libthr/thread/thr_mutex.c#8 integrate .. //depot/projects/mips2/src/lib/libthr/thread/thr_private.h#7 integrate .. //depot/projects/mips2/src/lib/libthr/thread/thr_syscalls.c#4 integrate .. //depot/projects/mips2/src/lib/libufs/Makefile#3 integrate .. //depot/projects/mips2/src/lib/libufs/block.c#2 integrate .. //depot/projects/mips2/src/lib/libufs/bread.3#2 integrate .. //depot/projects/mips2/src/lib/libufs/libufs.h#3 integrate .. //depot/projects/mips2/src/lib/libutil/pty.c#4 integrate .. //depot/projects/mips2/src/lib/msun/Makefile#4 integrate .. //depot/projects/mips2/src/lib/msun/Symbol.map#4 integrate .. //depot/projects/mips2/src/lib/msun/amd64/Makefile.inc#2 integrate .. //depot/projects/mips2/src/lib/msun/amd64/s_logbl.S#1 branch .. //depot/projects/mips2/src/lib/msun/i387/Makefile.inc#3 integrate .. //depot/projects/mips2/src/lib/msun/i387/s_logbl.S#1 branch .. //depot/projects/mips2/src/lib/msun/ld128/s_nanl.c#1 branch .. //depot/projects/mips2/src/lib/msun/ld80/s_nanl.c#1 branch .. //depot/projects/mips2/src/lib/msun/man/atan2.3#3 integrate .. //depot/projects/mips2/src/lib/msun/man/csqrt.3#1 branch .. //depot/projects/mips2/src/lib/msun/man/hypot.3#3 integrate .. //depot/projects/mips2/src/lib/msun/man/ilogb.3#3 integrate .. //depot/projects/mips2/src/lib/msun/man/math.3#3 integrate .. //depot/projects/mips2/src/lib/msun/man/nan.3#1 branch .. //depot/projects/mips2/src/lib/msun/man/sqrt.3#3 integrate .. //depot/projects/mips2/src/lib/msun/src/math.h#3 integrate .. //depot/projects/mips2/src/lib/msun/src/math_private.h#2 integrate .. //depot/projects/mips2/src/lib/msun/src/s_carg.c#1 branch .. //depot/projects/mips2/src/lib/msun/src/s_cargf.c#1 branch .. //depot/projects/mips2/src/lib/msun/src/s_csqrt.c#1 branch .. //depot/projects/mips2/src/lib/msun/src/s_csqrtf.c#1 branch .. //depot/projects/mips2/src/lib/msun/src/s_logb.c#2 integrate .. //depot/projects/mips2/src/lib/msun/src/s_logbl.c#1 branch .. //depot/projects/mips2/src/lib/msun/src/s_nan.c#1 branch .. //depot/projects/mips2/src/lib/msun/src/w_cabs.c#2 integrate .. //depot/projects/mips2/src/release/Makefile#9 integrate .. //depot/projects/mips2/src/release/doc/en_US.ISO8859-1/hardware/article.sgml#7 integrate .. //depot/projects/mips2/src/release/doc/share/misc/dev.archlist.txt#7 integrate .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/Makefile#2 integrate .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/errata/Makefile#2 integrate .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/Makefile#2 integrate .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/Makefile.inc#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/amd64/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/amd64/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/amd64/proc-amd64.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/article.sgml#1 branch .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/common/artheader.sgml#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/common/hw.ent#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/common/intro.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/i386/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/i386/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/hardware/i386/proc-i386.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/Makefile#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/Makefile.inc#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/amd64/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/amd64/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/abstract.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/artheader.sgml#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/install.ent#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/install.sgml#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/layout.sgml#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/trouble.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/common/upgrade.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/i386/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/i386/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/ia64/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/ia64/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/pc98/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/pc98/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/sparc64/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/sparc64/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/installation/sparc64/install.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/readme/article.sgml#2 integrate .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/Makefile#3 integrate .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/Makefile.inc#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/amd64/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/amd64/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/article.sgml#1 branch .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/common/new.sgml#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/common/relnotes.ent#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/i386/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/i386/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/ia64/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/ia64/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/pc98/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/pc98/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/powerpc/Makefile#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/powerpc/article.sgml#2 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/sparc64/Makefile#3 delete .. //depot/projects/mips2/src/release/doc/zh_CN.GB2312/relnotes/sparc64/article.sgml#2 delete .. //depot/projects/mips2/src/release/fixit.profile#2 integrate .. //depot/projects/mips2/src/sbin/Makefile#6 integrate .. //depot/projects/mips2/src/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/mips2/src/sbin/bsdlabel/bsdlabel.8#3 integrate .. //depot/projects/mips2/src/sbin/bsdlabel/bsdlabel.c#3 integrate .. //depot/projects/mips2/src/sbin/ddb/Makefile#1 branch .. //depot/projects/mips2/src/sbin/ddb/ddb.8#1 branch .. //depot/projects/mips2/src/sbin/ddb/ddb.c#1 branch .. //depot/projects/mips2/src/sbin/ddb/ddb.h#1 branch .. //depot/projects/mips2/src/sbin/ddb/ddb_script.c#1 branch .. //depot/projects/mips2/src/sbin/devd/devd.hh#2 integrate .. //depot/projects/mips2/src/sbin/dhclient/dispatch.c#2 integrate .. //depot/projects/mips2/src/sbin/growfs/growfs.c#3 integrate .. //depot/projects/mips2/src/sbin/ifconfig/ifconfig.8#8 integrate .. //depot/projects/mips2/src/sbin/ifconfig/ifconfig.c#6 integrate .. //depot/projects/mips2/src/sbin/ipfw/ipfw2.c#6 integrate .. //depot/projects/mips2/src/sbin/natd/natd.8#2 integrate .. //depot/projects/mips2/src/sbin/newfs/mkfs.c#3 integrate .. //depot/projects/mips2/src/sbin/newfs/newfs.8#4 integrate .. //depot/projects/mips2/src/sbin/newfs/newfs.c#4 integrate .. //depot/projects/mips2/src/sbin/newfs/newfs.h#4 integrate .. //depot/projects/mips2/src/sbin/newfs_msdos/newfs_msdos.8#2 integrate .. //depot/projects/mips2/src/sbin/savecore/savecore.8#2 integrate .. //depot/projects/mips2/src/sbin/savecore/savecore.c#3 integrate .. //depot/projects/mips2/src/share/colldef/Makefile#3 integrate .. //depot/projects/mips2/src/share/colldef/README#2 integrate .. //depot/projects/mips2/src/share/colldef/map.ISO8859-9#1 branch .. //depot/projects/mips2/src/share/colldef/tr_TR.ISO8859-9.src#1 branch .. //depot/projects/mips2/src/share/examples/cvsup/refuse#2 integrate .. //depot/projects/mips2/src/share/examples/cvsup/refuse.README#2 integrate .. //depot/projects/mips2/src/share/man/man3/tgmath.3#2 integrate .. //depot/projects/mips2/src/share/man/man4/Makefile#13 integrate .. //depot/projects/mips2/src/share/man/man4/aac.4#5 integrate .. //depot/projects/mips2/src/share/man/man4/bge.4#4 integrate .. //depot/projects/mips2/src/share/man/man4/ddb.4#4 integrate .. //depot/projects/mips2/src/share/man/man4/hptrr.4#1 branch .. //depot/projects/mips2/src/share/man/man4/hwpmc.4#5 integrate .. //depot/projects/mips2/src/share/man/man4/ng_car.4#3 integrate .. //depot/projects/mips2/src/share/man/man4/nve.4#3 integrate .. //depot/projects/mips2/src/share/man/man4/syncache.4#2 integrate .. //depot/projects/mips2/src/share/man/man4/textdump.4#1 branch .. //depot/projects/mips2/src/share/man/man5/hosts.equiv.5#3 integrate .. //depot/projects/mips2/src/share/man/man5/src.conf.5#6 integrate .. //depot/projects/mips2/src/share/man/man7/build.7#3 integrate .. //depot/projects/mips2/src/share/man/man7/ports.7#7 integrate .. //depot/projects/mips2/src/share/man/man9/BUS_SETUP_INTR.9#3 integrate .. //depot/projects/mips2/src/share/man/man9/VOP_LOCK.9#2 integrate .. //depot/projects/mips2/src/share/man/man9/lock.9#4 integrate .. //depot/projects/mips2/src/share/man/man9/sf_buf.9#2 integrate .. //depot/projects/mips2/src/share/misc/Makefile#3 integrate .. //depot/projects/mips2/src/share/misc/bsd-family-tree#7 integrate .. //depot/projects/mips2/src/share/mk/bsd.own.mk#6 integrate .. //depot/projects/mips2/src/share/mk/bsd.subdir.mk#2 integrate .. //depot/projects/mips2/src/share/mklocale/Makefile#3 integrate .. //depot/projects/mips2/src/share/mklocale/tr_TR.ISO8859-9.src#1 branch .. //depot/projects/mips2/src/share/timedef/tr_TR.ISO8859-9.src#2 integrate .. //depot/projects/mips2/src/share/timedef/tr_TR.UTF-8.src#2 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/exception.S#4 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/identcpu.c#5 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/machdep.c#7 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/mp_watchdog.c#3 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/pmap.c#13 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/trap.c#8 integrate .. //depot/projects/mips2/src/sys/amd64/conf/GENERIC#9 integrate .. //depot/projects/mips2/src/sys/amd64/conf/NOTES#8 integrate .. //depot/projects/mips2/src/sys/amd64/include/pmc_mdep.h#2 integrate .. //depot/projects/mips2/src/sys/amd64/include/specialreg.h#6 integrate .. //depot/projects/mips2/src/sys/amd64/include/vmparam.h#5 integrate .. //depot/projects/mips2/src/sys/arm/arm/pmap.c#9 integrate .. //depot/projects/mips2/src/sys/arm/at91/at91.c#3 integrate .. //depot/projects/mips2/src/sys/arm/at91/if_ate.c#6 integrate .. //depot/projects/mips2/src/sys/arm/at91/kb920x_machdep.c#7 integrate .. //depot/projects/mips2/src/sys/arm/at91/uart_dev_at91usart.c#4 integrate .. //depot/projects/mips2/src/sys/arm/include/pmc_mdep.h#2 integrate .. //depot/projects/mips2/src/sys/arm/include/vmparam.h#5 integrate .. //depot/projects/mips2/src/sys/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/mips2/src/sys/boot/arm/at91/libat91/spi_flash.c#2 integrate .. //depot/projects/mips2/src/sys/boot/forth/support.4th#3 integrate .. //depot/projects/mips2/src/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/mips2/src/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/mips2/src/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/mips2/src/sys/cam/cam_xpt.c#7 integrate .. //depot/projects/mips2/src/sys/cam/scsi/scsi_da.c#7 integrate .. //depot/projects/mips2/src/sys/cam/scsi/scsi_low.h#2 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32.h#3 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32_misc.c#7 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32_proto.h#5 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32_syscall.h#5 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32_syscalls.c#5 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/freebsd32_sysent.c#5 integrate .. //depot/projects/mips2/src/sys/compat/freebsd32/syscalls.master#6 integrate .. //depot/projects/mips2/src/sys/compat/ndis/subr_ntoskrnl.c#7 integrate .. //depot/projects/mips2/src/sys/conf/Makefile.amd64#3 integrate .. //depot/projects/mips2/src/sys/conf/NOTES#12 integrate .. //depot/projects/mips2/src/sys/conf/files#15 integrate .. //depot/projects/mips2/src/sys/conf/files.amd64#10 integrate .. //depot/projects/mips2/src/sys/conf/files.i386#11 integrate .. //depot/projects/mips2/src/sys/conf/files.powerpc#8 integrate .. //depot/projects/mips2/src/sys/conf/options#10 integrate .. //depot/projects/mips2/src/sys/conf/options.powerpc#2 integrate .. //depot/projects/mips2/src/sys/ddb/db_capture.c#1 branch .. //depot/projects/mips2/src/sys/ddb/db_command.c#4 integrate .. //depot/projects/mips2/src/sys/ddb/db_command.h#2 integrate .. //depot/projects/mips2/src/sys/ddb/db_input.c#2 integrate .. //depot/projects/mips2/src/sys/ddb/db_lex.c#2 integrate .. //depot/projects/mips2/src/sys/ddb/db_lex.h#2 integrate .. //depot/projects/mips2/src/sys/ddb/db_main.c#3 integrate .. //depot/projects/mips2/src/sys/ddb/db_output.c#4 integrate .. //depot/projects/mips2/src/sys/ddb/db_script.c#1 branch .. //depot/projects/mips2/src/sys/ddb/db_textdump.c#1 branch .. //depot/projects/mips2/src/sys/ddb/ddb.h#3 integrate .. //depot/projects/mips2/src/sys/dev/aac/aac.c#4 integrate .. //depot/projects/mips2/src/sys/dev/aac/aac_cam.c#7 integrate .. //depot/projects/mips2/src/sys/dev/aac/aac_pci.c#5 integrate .. //depot/projects/mips2/src/sys/dev/aac/aacreg.h#2 integrate .. //depot/projects/mips2/src/sys/dev/aac/aacvar.h#3 integrate .. //depot/projects/mips2/src/sys/dev/acpica/Osd/OsdDebug.c#3 integrate .. //depot/projects/mips2/src/sys/dev/acpica/acpi_thermal.c#5 integrate .. //depot/projects/mips2/src/sys/dev/amr/amr.c#5 integrate .. //depot/projects/mips2/src/sys/dev/amr/amr_cam.c#6 integrate .. //depot/projects/mips2/src/sys/dev/amr/amr_pci.c#4 integrate .. //depot/projects/mips2/src/sys/dev/amr/amrvar.h#2 integrate .. //depot/projects/mips2/src/sys/dev/arcmsr/arcmsr.c#6 integrate .. //depot/projects/mips2/src/sys/dev/arcmsr/arcmsr.h#3 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-all.h#6 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-chipset.c#10 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-dma.c#5 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-lowlevel.c#5 integrate .. //depot/projects/mips2/src/sys/dev/bge/if_bge.c#6 integrate .. //depot/projects/mips2/src/sys/dev/bge/if_bgereg.h#4 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/common/cxgb_t3_cpl.h#3 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_adapter.h#8 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_config.h#3 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_main.c#8 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_offload.c#4 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_offload.h#4 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_osdep.h#5 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/cxgb_sge.c#9 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/sys/mvec.h#3 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/sys/uipc_mvec.c#4 integrate .. //depot/projects/mips2/src/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/mips2/src/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/mips2/src/sys/dev/dcons/dcons_os.c#5 integrate .. //depot/projects/mips2/src/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/array.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/him.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/list.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/mips2/src/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_logging.c#4 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_mod.c#5 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_piv.c#3 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/mips2/src/sys/dev/hwpmc/hwpmc_x86.c#3 integrate .. //depot/projects/mips2/src/sys/dev/if_ndis/if_ndis.c#7 integrate .. //depot/projects/mips2/src/sys/dev/ipw/if_ipw.c#6 integrate .. //depot/projects/mips2/src/sys/dev/iwi/if_iwi.c#6 integrate .. //depot/projects/mips2/src/sys/dev/mfi/mfi.c#6 integrate .. //depot/projects/mips2/src/sys/dev/mfi/mfi_pci.c#6 integrate .. //depot/projects/mips2/src/sys/dev/ofw/ofw_console.c#3 integrate .. //depot/projects/mips2/src/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/mips2/src/sys/dev/pci/pci_user.c#4 integrate .. //depot/projects/mips2/src/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/mips2/src/sys/dev/re/if_re.c#10 integrate .. //depot/projects/mips2/src/sys/dev/sio/sio.c#6 integrate .. //depot/projects/mips2/src/sys/dev/snp/snp.c#5 integrate .. //depot/projects/mips2/src/sys/dev/sound/pci/hda/hdac.c#7 integrate .. //depot/projects/mips2/src/sys/dev/sound/pci/ich.c#5 integrate .. //depot/projects/mips2/src/sys/dev/sound/pci/maestro.c#4 integrate .. //depot/projects/mips2/src/sys/dev/syscons/syscons.c#5 integrate .. //depot/projects/mips2/src/sys/dev/uart/uart_core.c#3 integrate .. //depot/projects/mips2/src/sys/dev/uart/uart_cpu_powerpc.c#4 integrate .. //depot/projects/mips2/src/sys/dev/usb/umass.c#5 integrate .. //depot/projects/mips2/src/sys/dev/usb/ums.c#5 integrate .. //depot/projects/mips2/src/sys/dev/usb/uplcom.c#5 integrate .. //depot/projects/mips2/src/sys/dev/usb/usbdevs#10 integrate .. //depot/projects/mips2/src/sys/dev/utopia/utopia.c#3 integrate .. //depot/projects/mips2/src/sys/fs/tmpfs/tmpfs_subr.c#5 integrate .. //depot/projects/mips2/src/sys/fs/tmpfs/tmpfs_vfsops.c#6 integrate .. //depot/projects/mips2/src/sys/fs/udf/udf_vfsops.c#5 integrate .. //depot/projects/mips2/src/sys/fs/unionfs/union_subr.c#6 integrate .. //depot/projects/mips2/src/sys/fs/unionfs/union_vnops.c#6 integrate .. //depot/projects/mips2/src/sys/geom/geom_bsd.c#2 integrate .. //depot/projects/mips2/src/sys/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/mips2/src/sys/geom/geom_dev.c#4 integrate .. //depot/projects/mips2/src/sys/geom/geom_io.c#5 integrate .. //depot/projects/mips2/src/sys/geom/part/g_part.c#4 integrate .. //depot/projects/mips2/src/sys/geom/part/g_part.h#4 integrate .. //depot/projects/mips2/src/sys/geom/part/g_part_bsd.c#1 branch .. //depot/projects/mips2/src/sys/i386/bios/apm.c#5 integrate .. //depot/projects/mips2/src/sys/i386/conf/GENERIC#9 integrate .. //depot/projects/mips2/src/sys/i386/conf/GENERIC.hints#3 integrate .. //depot/projects/mips2/src/sys/i386/conf/NOTES#8 integrate .. //depot/projects/mips2/src/sys/i386/conf/PAE#5 integrate .. //depot/projects/mips2/src/sys/i386/i386/exception.s#3 integrate .. //depot/projects/mips2/src/sys/i386/i386/machdep.c#8 integrate .. //depot/projects/mips2/src/sys/i386/i386/mp_watchdog.c#3 integrate .. //depot/projects/mips2/src/sys/i386/i386/pmap.c#12 integrate .. //depot/projects/mips2/src/sys/i386/i386/trap.c#9 integrate .. //depot/projects/mips2/src/sys/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/mips2/src/sys/i386/include/vmparam.h#6 integrate .. //depot/projects/mips2/src/sys/i386/pci/pci_pir.c#3 integrate .. //depot/projects/mips2/src/sys/ia64/conf/DEFAULTS#5 integrate .. //depot/projects/mips2/src/sys/ia64/ia64/machdep.c#7 integrate .. //depot/projects/mips2/src/sys/ia64/include/pmc_mdep.h#2 integrate .. //depot/projects/mips2/src/sys/ia64/include/vmparam.h#6 integrate .. //depot/projects/mips2/src/sys/kern/Makefile#4 integrate .. //depot/projects/mips2/src/sys/kern/init_main.c#8 integrate .. //depot/projects/mips2/src/sys/kern/kern_clock.c#7 integrate .. //depot/projects/mips2/src/sys/kern/kern_event.c#5 integrate .. //depot/projects/mips2/src/sys/kern/kern_lock.c#7 integrate .. //depot/projects/mips2/src/sys/kern/kern_mbuf.c#7 integrate .. //depot/projects/mips2/src/sys/kern/kern_module.c#3 integrate .. //depot/projects/mips2/src/sys/kern/kern_mutex.c#8 integrate .. //depot/projects/mips2/src/sys/kern/kern_pmc.c#2 integrate .. //depot/projects/mips2/src/sys/kern/kern_proc.c#9 integrate .. //depot/projects/mips2/src/sys/kern/kern_resource.c#4 integrate .. //depot/projects/mips2/src/sys/kern/kern_rwlock.c#7 integrate .. //depot/projects/mips2/src/sys/kern/kern_shutdown.c#5 integrate .. //depot/projects/mips2/src/sys/kern/kern_sig.c#5 integrate .. //depot/projects/mips2/src/sys/kern/kern_sx.c#8 integrate .. //depot/projects/mips2/src/sys/kern/kern_thread.c#8 integrate .. //depot/projects/mips2/src/sys/kern/kern_umtx.c#5 integrate .. //depot/projects/mips2/src/sys/kern/sched_4bsd.c#7 integrate .. //depot/projects/mips2/src/sys/kern/sched_ule.c#9 integrate .. //depot/projects/mips2/src/sys/kern/subr_bus.c#7 integrate .. //depot/projects/mips2/src/sys/kern/subr_kdb.c#3 integrate .. //depot/projects/mips2/src/sys/kern/subr_lock.c#7 integrate .. //depot/projects/mips2/src/sys/kern/subr_trap.c#6 integrate .. //depot/projects/mips2/src/sys/kern/subr_witness.c#8 integrate .. //depot/projects/mips2/src/sys/kern/sys_generic.c#7 integrate .. //depot/projects/mips2/src/sys/kern/sys_pipe.c#6 integrate .. //depot/projects/mips2/src/sys/kern/tty_cons.c#4 integrate .. //depot/projects/mips2/src/sys/kern/uipc_sockbuf.c#5 integrate .. //depot/projects/mips2/src/sys/kern/vfs_bio.c#10 integrate .. //depot/projects/mips2/src/sys/kern/vfs_mount.c#9 integrate .. //depot/projects/mips2/src/sys/kern/vfs_subr.c#10 integrate .. //depot/projects/mips2/src/sys/modules/Makefile#10 integrate .. //depot/projects/mips2/src/sys/modules/cxgb/Makefile#5 integrate .. //depot/projects/mips2/src/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/mips2/src/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/mips2/src/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/mips2/src/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/mips2/src/sys/net/bpf.c#8 integrate .. //depot/projects/mips2/src/sys/net/bpf.h#4 integrate .. //depot/projects/mips2/src/sys/net/bpf_filter.c#3 integrate .. //depot/projects/mips2/src/sys/net/bridgestp.c#7 integrate .. //depot/projects/mips2/src/sys/net/bridgestp.h#4 integrate .. //depot/projects/mips2/src/sys/net/if.h#4 integrate .. //depot/projects/mips2/src/sys/net/if_bridge.c#9 integrate .. //depot/projects/mips2/src/sys/net/if_enc.c#6 integrate .. //depot/projects/mips2/src/sys/net/if_lagg.c#7 integrate .. //depot/projects/mips2/src/sys/net/if_var.h#5 integrate .. //depot/projects/mips2/src/sys/net/route.c#5 integrate .. //depot/projects/mips2/src/sys/net/route.h#2 integrate .. //depot/projects/mips2/src/sys/net80211/ieee80211.c#7 integrate .. //depot/projects/mips2/src/sys/net80211/ieee80211_output.c#8 integrate .. //depot/projects/mips2/src/sys/net80211/ieee80211_radiotap.h#4 integrate .. //depot/projects/mips2/src/sys/netgraph/ng_base.c#7 integrate .. //depot/projects/mips2/src/sys/netgraph/ng_car.c#2 integrate .. //depot/projects/mips2/src/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/mips2/src/sys/netgraph/ng_l2tp.c#4 integrate .. //depot/projects/mips2/src/sys/netgraph/ng_pppoe.c#4 integrate .. //depot/projects/mips2/src/sys/netgraph/ng_pppoe.h#3 integrate .. //depot/projects/mips2/src/sys/netinet/if_ether.c#6 integrate .. //depot/projects/mips2/src/sys/netinet/if_ether.h#2 integrate .. //depot/projects/mips2/src/sys/netinet/in_pcb.c#7 integrate .. //depot/projects/mips2/src/sys/netinet/in_pcb.h#7 integrate .. //depot/projects/mips2/src/sys/netinet/ip_dummynet.c#8 integrate .. //depot/projects/mips2/src/sys/netinet/ip_fw2.c#7 integrate .. //depot/projects/mips2/src/sys/netinet/libalias/alias_util.c#4 integrate .. //depot/projects/mips2/src/sys/netinet/sctp_bsd_addr.c#4 integrate .. //depot/projects/mips2/src/sys/netinet/sctp_output.c#10 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 06:37:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CAC3D16A419; Fri, 28 Dec 2007 06:37:29 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5B31416A417 for ; Fri, 28 Dec 2007 06:37:29 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3870D13C447 for ; Fri, 28 Dec 2007 06:37:29 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS6bTLj083235 for ; Fri, 28 Dec 2007 06:37:29 GMT (envelope-from zhouzhouyi@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS6bTtl083232 for perforce@freebsd.org; Fri, 28 Dec 2007 06:37:29 GMT (envelope-from zhouzhouyi@FreeBSD.org) Date: Fri, 28 Dec 2007 06:37:29 GMT Message-Id: <200712280637.lBS6bTtl083232@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zhouzhouyi@FreeBSD.org using -f From: Zhouyi ZHOU To: Perforce Change Reviews Cc: Subject: PERFORCE change 131859 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 06:37:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=131859 Change 131859 by zhouzhouyi@zhouzhouyi_mactest on 2007/12/28 06:37:17 style modification Affected files ... .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/02.t#2 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/03.t#2 edit Differences ... ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/02.t#2 (text+ko) ==== @@ -1,82 +1,76 @@ #!/bin/sh -# $FreeBSD: src/tools/regression/mactest/tests/netinet/02.t,v 1.2 2007/01/25 20:50:02 zhouzhouyi Exp $ +# $FreeBSD$ -desc="test of inpcb deliver" +desc="test mandatory access control for inpcb deliver" - dir=`dirname $0` . ${dir}/../misc.sh -echo "1..4" +case "${os}" in +FreeBSD) + + mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` + mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` + mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && + [ "${mac_test_support}" != "" ]; then #turn off all the switches -for i in `sysctl security.mac | grep "\.enabled"| - sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do -sysctl ${i}=0 -done + for i in `sysctl security.mac | grep "\.enabled"| + sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do + sysctl ${i}=0 >/dev/null + done -mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` -mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` -mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ -f ${mactest_conf} ]; then + rm ${mactest_conf} + fi + touch ${mactest_conf} + setfmac "mls/equal,biba/equal" ${mactest_conf} -if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && - [ "${mac_test_support}" != "" ]; then - dvplabel=`getfmac ".."| sed 's/\(\.\.:\ \)\([a-z\,\/]*\)/\2/`; - - - if [ -f ${mactest_conf} ]; then - rm ${mactest_conf} - fi - touch ${mactest_conf} + sysctl security.mac.test.pseudoinit=1 > /dev/null + ifconfig mac_test0 192.167.0.33 > /dev/null + ifconfig mac_test1 192.167.1.34 > /dev/null - t=`sysctl security.mac.test.pseudoinit=1` - t=`ifconfig mac_test0 192.167.0.33` - t=`ifconfig mac_test1 192.167.1.34` - echo "enabling mactest pseudo interface" - #ensuring there is no firewall thing - notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` - if [ "${#notreceived}" -eq 0 ]; then + notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` + + if [ "${#notreceived}" -eq 0 ]; then + echo "1..4" - - - -############################################################# - t=`sysctl security.mac.mls.enabled=1` - echo "enforcing mac/mls!" - t=`sysctl security.mac.biba.enabled=1` - echo "enforcing mac/biba!" - + sysctl security.mac.mls.enabled=1 > /dev/null + sysctl security.mac.biba.enabled=1 > /dev/null #case 1: set the maclabel of the interface # the subject should be priviledeged. - mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel \ - "mls/5\(4-7\),biba/5\(4-7\)" + mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ + -f ${mactest_conf} system ifconfig mac_test0 maclabel \ + "mls/5\(4-7\),biba/5\(4-7\)" #case 2: the packet's level must equal that of inpcb's - bizarretestexpect ${macping} "" \ - "" -m "biba/5(4-6),mls/5(4-6)" -f ${mactest_conf} -t 1 192.167.0.34 + bizarretestexpect ${macping} "" \ + "" -m "biba/5(4-6),mls/5(4-6)" -f ${mactest_conf} -t 1 192.167.0.34 #case 3: the packet's level must equal that of inpcb's - bizarretestexpect ${macping} "" \ - "not.received!" -m "biba/4(4-6),mls/5(4-6)" -f ${mactest_conf} -t 1 192.167.0.34 + bizarretestexpect ${macping} "" \ + "not.received!" -m "biba/4(4-6),mls/5(4-6)" -f ${mactest_conf} -t 1 192.167.0.34 #case 4: the packet's level must equal that of inpcb's - echo -n "pid = -2 mac_test_check_inpcb_deliver:" > ${mactest_conf} - echo "biba/5,mls/4 biba/5,mls/5" >> ${mactest_conf} - bizarretestexpect ${macping} "" \ - "not.received!" -m "biba/5(4-6),mls/4(4-6)" -f ${mactest_conf} -t 1 192.167.0.34 + echo -n "pid = -2 inpcb_check_deliver:" > ${mactest_conf} + echo "biba/5,mls/4 biba/5,mls/5" >> ${mactest_conf} + bizarretestexpect ${macping} "" \ + "not.received!" -m "biba/5(4-6),mls/4(4-6)" -f ${mactest_conf} -t 1 192.167.0.34 + #cleanup: - t=`sysctl security.mac.mls.enabled=0` - echo "disabling mac/mls!" - t=`sysctl security.mac.biba.enabled=0` - echo "disabling mac/biba!" - - - rm ${mactest_conf} - fi - -fi - + sysctl security.mac.mls.enabled=0 >/dev/null + sysctl security.mac.biba.enabled=0 > /dev/null + rm ${mactest_conf} +#ping received, no firewall + fi +#mac_mls mac_biba and mac_test support + fi + ;; +*) + quick_exit + ;; +esac ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/netinet/03.t#2 (text+ko) ==== @@ -1,84 +1,77 @@ #!/bin/sh -# $FreeBSD: src/tools/regression/mactest/tests/netinet/03.t,v 1.2 2007/01/25 20:50:02 zhouzhouyi Exp $ +# $FreeBSD$ -desc="test of socket relabel" +desc="test mandatory access control for socket relabel" - dir=`dirname $0` . ${dir}/../misc.sh -echo "1..4" +case "${os}" in +FreeBSD) + + mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` + mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` + mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && + [ "${mac_test_support}" != "" ]; then #turn off all the switches -for i in `sysctl security.mac | grep "\.enabled"| - sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do -sysctl ${i}=0 -done + for i in `sysctl security.mac | grep "\.enabled"| + sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do + sysctl ${i}=0 >/dev/null + done -mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` -mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` -mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ -f ${mactest_conf} ]; then + rm ${mactest_conf} + fi + touch ${mactest_conf} + setfmac "mls/equal,biba/equal" ${mactest_conf} -if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && - [ "${mac_test_support}" != "" ]; then - dvplabel=`getfmac ".."| sed 's/\(\.\.:\ \)\([a-z\,\/]*\)/\2/`; - + sysctl security.mac.test.pseudoinit=1 > /dev/null + ifconfig mac_test0 192.167.0.33 > /dev/null + ifconfig mac_test1 192.167.1.34 > /dev/null - if [ -f ${mactest_conf} ]; then - rm ${mactest_conf} - fi - touch ${mactest_conf} - - t=`sysctl security.mac.test.pseudoinit=1` - t=`ifconfig mac_test0 192.167.0.33` - t=`ifconfig mac_test1 192.167.1.34` - echo "enabling mactest pseudo interface" - #ensuring there is no firewall thing - notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` - if [ "${#notreceived}" -eq 0 ]; then + notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` + + if [ "${#notreceived}" -eq 0 ]; then + echo "1..4" - - + sysctl security.mac.mls.enabled=1 > /dev/null + sysctl security.mac.biba.enabled=1 > /dev/null -############################################################# - t=`sysctl security.mac.mls.enabled=1` - echo "enforcing mac/mls!" - t=`sysctl security.mac.biba.enabled=1` - echo "enforcing mac/biba!" - - #case 1: set the maclabel of the interface # the subject should be priviledeged. - mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ - -f ${mactest_conf} system ifconfig mac_test0 maclabel \ - "mls/5\(4-7\),biba/5\(4-7\)" + mactestexpect "" "" -m "biba/high(low-high),mls/low(low-high)" \ + -f ${mactest_conf} system ifconfig mac_test0 maclabel \ + "mls/5\(4-7\),biba/5\(4-7\)" #case 2: relabel the socket, at most effective, within subject's range - bizarretestexpect ${macping} "" "error.relabelling.socket!" \ - -m "biba/5(4-6),mls/7(low-high)" \ - -s "mls/low(low-high)" -f ${mactest_conf} -t 1 192.167.0.34 + bizarretestexpect ${macping} "" "error.relabelling.socket!" \ + -m "biba/5(4-6),mls/7(low-high)" \ + -s "mls/low(low-high)" -f ${mactest_conf} -t 1 192.167.0.34 #case 3: relabel the socket, at most effective, within subject's range - echo -n "pid = -2 mac_test_check_socket_relabel:" > ${mactest_conf} - echo "biba/5(4-6),mls/7(low-high) biba/5,mls/7 biba/equal,mls/" >> ${mactest_conf} - bizarretestexpect ${macping} "" "error.relabelling.socket!" \ - -m "biba/5(4-6),mls/7(low-high)" \ - -s "biba/equal" -f ${mactest_conf} -t 1 192.167.0.34 + echo -n "pid = -2 socket_check_relabel:" > ${mactest_conf} + echo "biba/5(4-6),mls/7(low-high) biba/5,mls/7 biba/equal,mls/" >> ${mactest_conf} + bizarretestexpect ${macping} "" "error.relabelling.socket!" \ + -m "biba/5(4-6),mls/7(low-high)" \ + -s "biba/equal" -f ${mactest_conf} -t 1 192.167.0.34 #case 4: relabel the socket, at most effective, ok this time - bizarretestexpect ${macping} "" "" \ - -m "biba/3(4-6),mls/3(4-6)" \ - -s "biba/5,mls/5" -f ${mactest_conf} -t 1 192.167.0.34 + bizarretestexpect ${macping} "" "" \ + -m "biba/3(4-6),mls/3(4-6)" \ + -s "biba/5,mls/5" -f ${mactest_conf} -t 1 192.167.0.34 #cleanup: - t=`sysctl security.mac.mls.enabled=0` - echo "disabling mac/mls!" - t=`sysctl security.mac.biba.enabled=0` - echo "disabling mac/biba!" - - - rm ${mactest_conf} - fi - -fi - + sysctl security.mac.mls.enabled=0 >/dev/null + sysctl security.mac.biba.enabled=0 > /dev/null + rm ${mactest_conf} +#ping received, no firewall + fi +#mac_mls mac_biba and mac_test support + fi + ;; +*) + quick_exit + ;; +esac From owner-p4-projects@FreeBSD.ORG Fri Dec 28 07:13:08 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2B6AC16A41A; Fri, 28 Dec 2007 07:13:08 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 916BC16A419 for ; Fri, 28 Dec 2007 07:13:07 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 694F013C457 for ; Fri, 28 Dec 2007 07:13:07 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS7D7lQ096667 for ; Fri, 28 Dec 2007 07:13:07 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS7D7t7096664 for perforce@freebsd.org; Fri, 28 Dec 2007 07:13:07 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 28 Dec 2007 07:13:07 GMT Message-Id: <200712280713.lBS7D7t7096664@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 131862 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 07:13:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=131862 Change 131862 by kmacy@pandemonium:kmacy:xen31 on 2007/12/28 07:12:28 move forward from crashing in pmap_pinit in create_init to crashing in start_init as a result of xen rejecting the page table that we're attempting to switch to Affected files ... .. //depot/projects/xen31/sys/i386/i386/genassym.c#4 edit .. //depot/projects/xen31/sys/i386/i386/machdep.c#8 edit .. //depot/projects/xen31/sys/i386/i386/swtch.s#2 edit .. //depot/projects/xen31/sys/i386/i386/sys_machdep.c#2 edit .. //depot/projects/xen31/sys/i386/i386/trap.c#5 edit .. //depot/projects/xen31/sys/i386/include/asmacros.h#3 edit .. //depot/projects/xen31/sys/i386/include/cpufunc.h#4 edit .. //depot/projects/xen31/sys/i386/include/pcpu.h#3 edit .. //depot/projects/xen31/sys/i386/include/pmap.h#7 edit .. //depot/projects/xen31/sys/i386/include/xen/xenpmap.h#4 edit .. //depot/projects/xen31/sys/i386/isa/npx.c#2 edit .. //depot/projects/xen31/sys/i386/pci/pci_cfgreg.c#4 edit .. //depot/projects/xen31/sys/i386/xen/locore.s#6 edit .. //depot/projects/xen31/sys/i386/xen/pmap.c#7 edit .. //depot/projects/xen31/sys/i386/xen/xen_machdep.c#7 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_comms.h#2 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#3 edit Differences ... ==== //depot/projects/xen31/sys/i386/i386/genassym.c#4 (text+ko) ==== @@ -234,5 +234,6 @@ #ifdef XEN #include +ASSYM(PC_CR3, offsetof(struct pcpu, pc_cr3)); ASSYM(HYPERVISOR_VIRT_START, __HYPERVISOR_VIRT_START); #endif ==== //depot/projects/xen31/sys/i386/i386/machdep.c#8 (text+ko) ==== @@ -2154,6 +2154,8 @@ } #ifdef XEN +extern vm_paddr_t *pdir_shadow; + void init386(int first) { @@ -2238,7 +2240,8 @@ PCPU_SET(curthread, &thread0); PCPU_SET(curpcb, thread0.td_pcb); PCPU_SET(pdir, (unsigned long)IdlePTD); - + PCPU_SET(pdir_shadow, pdir_shadow); + /* * Initialize mutexes. * @@ -2358,6 +2361,7 @@ dblfault_tss.tss_ldt = GSEL(GLDT_SEL, SEL_KPL); vm86_initialize(); + PCPU_SET(pdir_shadow, pdir_shadow); getmemsize(first); init_param2(physmem); ==== //depot/projects/xen31/sys/i386/i386/swtch.s#2 (text+ko) ==== @@ -88,7 +88,7 @@ movl 8(%esp),%ecx /* New thread */ movl TD_PCB(%ecx),%edx movl PCB_CR3(%edx),%eax - movl %eax,%cr3 /* new address space */ + LOAD_CR3(%eax) /* set bit in new pm_active */ movl TD_PROC(%ecx),%eax movl P_VMSPACE(%eax), %ebx @@ -181,10 +181,10 @@ cmpl %eax,IdlePTD /* Kernel address space? */ #endif je sw0 - movl %cr3,%ebx /* The same address space? */ + READ_CR3(%ebx) /* The same address space? */ cmpl %ebx,%eax je sw0 - movl %eax,%cr3 /* new address space */ + LOAD_CR3(%eax) /* new address space */ movl %esi,%eax movl PCPU(CPUID),%esi SETOP %eax,TD_LOCK(%edi) /* Switchout td_lock */ @@ -211,6 +211,18 @@ SETOP %esi,TD_LOCK(%edi) /* Switchout td_lock */ sw1: BLOCK_SPIN(%ecx) +#ifdef XEN + pushl %eax + pushl %ecx + pushl %edx + call xen_handle_thread_switch + popl %edx + popl %ecx + popl %eax + /* + * XXX set IOPL + */ +#else /* * At this point, we've switched address spaces and are ready * to load up the rest of the next context. @@ -259,7 +271,7 @@ movl 12(%esi), %ebx movl %eax, 8(%edi) movl %ebx, 12(%edi) - +#endif /* Restore context. */ movl PCB_EBX(%edx),%ebx movl PCB_ESP(%edx),%esp @@ -285,7 +297,7 @@ movl _default_ldt,%eax cmpl PCPU(CURRENTLDT),%eax je 2f - lldt _default_ldt + LLDT(_default_ldt) movl %eax,PCPU(CURRENTLDT) jmp 2f 1: @@ -389,7 +401,7 @@ * parent's npx state for forks by forgetting to reload. */ pushfl - cli + CLI movl PCPU(FPCURTHREAD),%eax testl %eax,%eax je 1f ==== //depot/projects/xen31/sys/i386/i386/sys_machdep.c#2 (text+ko) ==== @@ -58,6 +58,20 @@ #include + +#ifdef XEN +#include + +void i386_reset_ldt(struct proc_ldt *pldt); + +void +i386_reset_ldt(struct proc_ldt *pldt) +{ + xen_set_ldt((vm_offset_t)pldt->ldt_base, pldt->ldt_len); +} +#else +#define i386_reset_ldt(x) +#endif #include /* for kernel_map */ #define MAX_LD 8192 ==== //depot/projects/xen31/sys/i386/i386/trap.c#5 (text+ko) ==== @@ -102,6 +102,13 @@ #include #endif +#ifdef XEN +#include +#include +#include +#include +#endif + extern void trap(struct trapframe *frame); extern void syscall(struct trapframe *frame); @@ -130,7 +137,11 @@ "alignment fault", /* 14 T_ALIGNFLT */ "", /* 15 unused */ "", /* 16 unused */ +#ifdef XEN + "hypervisor callback", /* 17 T_HYPCALLBACK */ +#else "", /* 17 unused */ +#endif "integer divide fault", /* 18 T_DIVIDE */ "non-maskable interrupt trap", /* 19 T_NMI */ "overflow trap", /* 20 T_OFLOW */ @@ -218,6 +229,7 @@ goto out; #endif +#ifndef XEN if ((frame->tf_eflags & PSL_I) == 0) { /* * Buggy application or kernel code has disabled @@ -248,9 +260,18 @@ enable_intr(); } } - +#endif eva = 0; code = frame->tf_err; +#ifdef XEN + if (type == T_HYPCALLBACK) { + evtchn_do_upcall(frame); + if (ISPL(frame->tf_cs) == SEL_KPL) + goto out; + goto userout; + } else if (type == 0) + panic("invalid trap type/code %d/%d\n",type, code); +#endif if (type == T_PAGEFLT) { /* * For some Cyrix CPUs, %cr2 is clobbered by ==== //depot/projects/xen31/sys/i386/include/asmacros.h#3 (text+ko) ==== @@ -176,6 +176,35 @@ movl $KPSEL, %eax ; /* reload with per-CPU data segment */ \ movl %eax, %fs +#ifdef XEN +#define LOAD_CR3(reg) \ + movl reg,PCPU(CR3); \ + pushl %ecx ; \ + pushl %edx ; \ + pushl %esi ; \ + pushl reg ; \ + call xen_load_cr3 ; \ + addl $4,%esp ; \ + popl %esi ; \ + popl %edx ; \ + popl %ecx ; \ + +#define READ_CR3(reg) movl PCPU(CR3),reg; +#define LLDT(arg) \ + pushl %edx ; \ + pushl %eax ; \ + xorl %eax,%eax ; \ + movl %eax,%gs ; \ + call i386_reset_ldt ; \ + popl %eax ; \ + popl %edx +#define CLI call ni_cli +#else +#define LOAD_CR3(reg) movl reg,%cr3; +#define READ_CR3(reg) movl %cr3,reg; +#define LLDT(arg) lldt arg; +#define CLI cli +#endif #endif /* LOCORE */ ==== //depot/projects/xen31/sys/i386/include/cpufunc.h#4 (text+ko) ==== @@ -49,8 +49,6 @@ #include #include #include -#include -#include struct thread; #endif ==== //depot/projects/xen31/sys/i386/include/pcpu.h#3 (text+ko) ==== @@ -55,6 +55,7 @@ struct segment_descriptor pc_common_tssd; \ struct segment_descriptor *pc_tss_gdt; \ struct segment_descriptor *pc_fsgs_gdt; \ + vm_paddr_t *pc_pdir_shadow; \ int pc_currentldt; \ u_int pc_acpi_id; /* ACPI CPU id */ \ u_int pc_apic_id; \ ==== //depot/projects/xen31/sys/i386/include/pmap.h#7 (text+ko) ==== @@ -397,6 +397,9 @@ pdpt_entry_t *pm_pdpt; /* KVA of page director pointer table */ #endif +#ifdef XEN + vm_paddr_t *pm_pdir_shadow; +#endif }; typedef struct pmap *pmap_t; ==== //depot/projects/xen31/sys/i386/include/xen/xenpmap.h#4 (text+ko) ==== @@ -47,6 +47,8 @@ void xen_flush_queue(void); void pmap_ref(pt_entry_t *pte, vm_paddr_t ma); +#include +#include #ifdef PMAP_DEBUG #define PMAP_REF pmap_ref @@ -81,7 +83,24 @@ struct pmap; void pd_set(struct pmap *pmap, vm_paddr_t *ptr, vm_paddr_t val, int type); +#ifdef notyet +static vm_paddr_t +vptetomachpte(vm_paddr_t *pte) +{ + vm_offset_t offset, ppte; + vm_paddr_t pgoffset, retval, *pdir_shadow_ptr; + int pgindex; + ppte = (vm_offset_t)pte; + pgoffset = (ppte & PAGE_MASK); + offset = ppte - (vm_offset_t)PTmap; + pgindex = ppte >> PDRSHIFT; + + pdir_shadow_ptr = (vm_paddr_t *)PCPU_GET(pdir_shadow); + retval = (pdir_shadow_ptr[pgindex] & ~PAGE_MASK) + pgoffset; + return (retval); +} +#endif #define PT_GET(_ptp) \ (pmap_valid_entry(*(_ptp)) ? xpmap_mtop(*(_ptp)) : *(_ptp)) @@ -103,7 +122,7 @@ *(_ptp) = 0; \ } while (/*CONSTCOND*/0) -#define PD_SET_VA(_pmap, _ptp, _npte, sync) do { \ +#define PD_SET_VA(_pmap, _ptp, _npte, sync) do { \ PMAP_REF((_ptp), xpmap_ptom(_npte)); \ pd_set((_pmap),(_ptp),(_npte), SH_PD_SET_VA); \ if (sync || ALWAYS_SYNC) xen_flush_queue(); \ @@ -115,7 +134,7 @@ } while (/*CONSTCOND*/0) #define PD_CLEAR_VA(_pmap, _ptp, sync) do { \ PMAP_REF((pt_entry_t *)(_ptp), 0); \ - pd_set((_pmap),(_ptp), 0, SH_PD_SET_VA_CLEAR); \ + pd_set((_pmap),(_ptp), 0, SH_PD_SET_VA_CLEAR); \ if (sync || ALWAYS_SYNC) xen_flush_queue(); \ } while (/*CONSTCOND*/0) @@ -123,18 +142,18 @@ #define PT_SET_VA(_ptp,_npte,sync) do { \ PMAP_REF((_ptp), xpmap_ptom(_npte)); \ - xen_queue_pt_update(vtomach(_ptp), \ + xen_queue_pt_update(vtomach(_ptp), \ xpmap_ptom(_npte)); \ if (sync || ALWAYS_SYNC) xen_flush_queue(); \ } while (/*CONSTCOND*/0) #define PT_SET_VA_MA(_ptp,_npte,sync) do { \ PMAP_REF((_ptp), (_npte)); \ - xen_queue_pt_update(vtomach(_ptp), _npte); \ + xen_queue_pt_update(vtomach(_ptp), _npte); \ if (sync || ALWAYS_SYNC) xen_flush_queue(); \ } while (/*CONSTCOND*/0) #define PT_CLEAR_VA(_ptp, sync) do { \ PMAP_REF((pt_entry_t *)(_ptp), 0); \ - xen_queue_pt_update(vtomach(_ptp), 0); \ + xen_queue_pt_update(vtomach(_ptp), 0); \ if (sync || ALWAYS_SYNC) \ xen_flush_queue(); \ } while (/*CONSTCOND*/0) @@ -163,7 +182,7 @@ pte_t pte_t_ma; \ pte_t_ma.pte_high = (uint32_t)((_ma) >> 32); \ pte_t_ma.pte_low = (uint32_t)((_ma) & 0xFFFFFFFF); \ - PANIC_IF(HYPERVISOR_update_va_mapping(((unsigned long)_va), \ + PANIC_IF(HYPERVISOR_update_va_mapping(((unsigned long)(_va)),\ pte_t_ma, \ UVMF_INVLPG| UVMF_LOCAL) < 0); \ } while (/*CONSTCOND*/0) @@ -174,7 +193,7 @@ do { \ pte_t pte_t_ma; \ pte_t_ma.pte_low = (uint32_t)(_ma); \ - PANIC_IF(HYPERVISOR_update_va_mapping(((unsigned long)_va), \ + PANIC_IF(HYPERVISOR_update_va_mapping(((unsigned long)(_va)), \ pte_t_ma, \ UVMF_INVLPG| UVMF_LOCAL) < 0); \ } while (/*CONSTCOND*/0) ==== //depot/projects/xen31/sys/i386/isa/npx.c#2 (text+ko) ==== @@ -100,9 +100,14 @@ #define fxsave(addr) __asm __volatile("fxsave %0" : "=m" (*(addr))) #define ldmxcsr(__csr) __asm __volatile("ldmxcsr %0" : : "m" (__csr)) #endif +#ifdef XEN +#define start_emulating() (HYPERVISOR_fpu_taskswitch(1)) +#define stop_emulating() (HYPERVISOR_fpu_taskswitch(0)) +#else #define start_emulating() __asm("smsw %%ax; orb %0,%%al; lmsw %%ax" \ : : "n" (CR0_TS) : "ax") #define stop_emulating() __asm("clts") +#endif #else /* !(__GNUCLIKE_ASM && !lint) */ ==== //depot/projects/xen31/sys/i386/pci/pci_cfgreg.c#4 (text+ko) ==== @@ -135,7 +135,10 @@ int pci_cfgregopen(void) { -#ifndef XEN +#ifdef XEN + return (0); +#else + static int opened = 0; u_int16_t vid, did; u_int16_t v; @@ -177,8 +180,8 @@ pciereg_cfgopen(); } } + return (1); #endif - return(1); } /* ==== //depot/projects/xen31/sys/i386/xen/locore.s#6 (text+ko) ==== @@ -83,7 +83,7 @@ #ifdef notyet ELFNOTE(Xen, XEN_ELFNOTE_FEATURES, .asciz, "writable_page_tables|writable_descriptor_tables|auto_translated_physmap|pae_pgdir_above_4gb|supervisor_mode_kernel") #else - ELFNOTE(Xen, XEN_ELFNOTE_FEATURES, .asciz, "pae_pgdir_above_4gb|supervisor_mode_kernel") + ELFNOTE(Xen, XEN_ELFNOTE_FEATURES, .asciz, "pae_pgdir_above_4gb|supervisor_mode_kernel|writable_descriptor_tables") #endif #ifdef PAE ==== //depot/projects/xen31/sys/i386/xen/pmap.c#7 (text+ko) ==== @@ -295,7 +295,6 @@ static void pmap_pte_release(pt_entry_t *pte); static int pmap_unuse_pt(pmap_t, vm_offset_t, vm_page_t *); static vm_offset_t pmap_kmem_choose(vm_offset_t addr); -static void pmap_copy_ma_range(vm_paddr_t src, vm_paddr_t dst, uint32_t soff, uint32_t eoff); #ifdef PAE static void *pmap_pdpt_allocf(uma_zone_t zone, int bytes, u_int8_t *flags, int wait); @@ -386,6 +385,7 @@ #ifdef PAE kernel_pmap->pm_pdpt = (pdpt_entry_t *) (KERNBASE + (u_int)IdlePDPT); #endif + kernel_pmap->pm_pdir_shadow = PCPU_GET(pdir_shadow); kernel_pmap->pm_active = -1; /* don't allow deactivation */ TAILQ_INIT(&kernel_pmap->pm_pvchunk); LIST_INIT(&allpmaps); @@ -1365,9 +1365,8 @@ int pmap_pinit(pmap_t pmap) { - vm_page_t m, ptdpg[NPGPTD*2]; - vm_paddr_t ma, ma_shadow; - int npgptd = NPGPTD*2; + vm_page_t m, ptdpg[NPGPTD*2 + 1]; + int npgptd = NPGPTD*2 + 1; static int color; int i; @@ -1380,12 +1379,23 @@ if (pmap->pm_pdir == NULL) { pmap->pm_pdir = (pd_entry_t *)kmem_alloc_nofault(kernel_map, NBPTD); - + if (pmap->pm_pdir == NULL) { + PMAP_LOCK_DESTROY(pmap); + return (0); + } +#ifdef XEN + pmap->pm_pdir_shadow = (pd_entry_t *)kmem_alloc_nofault(kernel_map, + NBPTD); if (pmap->pm_pdir == NULL) { PMAP_LOCK_DESTROY(pmap); return (0); } #ifdef PAE + pmap->pm_pdpt = (pd_entry_t *)kmem_alloc_nofault(kernel_map, 1); +#endif +#endif + +#if defined(PAE) && !defined(XEN) pmap->pm_pdpt = uma_zalloc(pdptzone, M_WAITOK | M_ZERO); KASSERT(((vm_offset_t)pmap->pm_pdpt & ((NPGPTD * sizeof(pdpt_entry_t)) - 1)) == 0, @@ -1405,60 +1415,64 @@ if (m == NULL) VM_WAIT; else { -#ifdef XEN - pmap_zero_page(m); /* is this really needed? */ -#endif ptdpg[i++] = m; } } pmap_qenter((vm_offset_t)pmap->pm_pdir, ptdpg, NPGPTD); -#ifndef XEN + for (i = 0; i < NPGPTD; i++) { if ((ptdpg[i]->flags & PG_ZERO) == 0) bzero(pmap->pm_pdir + (i * NPDEPG), PAGE_SIZE); } -#endif + mtx_lock_spin(&allpmaps_lock); LIST_INSERT_HEAD(&allpmaps, pmap, pm_list); mtx_unlock_spin(&allpmaps_lock); /* Wire in kernel global address entries. */ - /* XXX copies current process */ - bcopy(kernel_pmap->pm_pdir + KPTDI, pmap->pm_pdir + KPTDI, - nkpt * sizeof(pd_entry_t)); + + bcopy(PTD + KPTDI, pmap->pm_pdir + KPTDI, nkpt * sizeof(pd_entry_t)); /* XXX need to copy global address entries to page directory's L1 shadow */ - ma = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[NPGPTD])); - /* L1 pin shadow page director{y,ies} */ +#ifdef PAE +#ifdef XEN + pmap_qenter((vm_offset_t)pmap->pm_pdpt, &ptdpg[NPGPTD*2], 1); +#endif for (i = 0; i < NPGPTD; i++) { + vm_paddr_t ma; + ma = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[NPGPTD + i])); - pmap_copy_ma_range(kernel_pmap->pm_pdir[PTDPTDI + i] & ~(PG_RW|PG_M), ma, - KPTDI*sizeof(pd_entry_t), nkpt*sizeof(pd_entry_t)); - xen_pt_pin(ma); + pmap->pm_pdpt[i] = ma | PG_V; + } +#endif +#ifdef XEN + pmap_qenter((vm_offset_t)pmap->pm_pdir_shadow, &ptdpg[NPGPTD], NPGPTD); - /* pin and install L1 shadow */ + for (i = 0; i < NPGPTD; i++) + if ((ptdpg[i + NPGPTD]->flags & PG_ZERO) == 0) + bzero(pmap->pm_pdir_shadow + (i * NPDEPG), PAGE_SIZE); + for (i = 0; i < NPGPTD; i++) + pmap->pm_pdir_shadow[PTDPTDI + i] = + xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[i])) | PG_V; + for (i = 0; i < NPGPTD; i++) + pmap->pm_pdir[PTDPTDI + i] = + xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[i + NPGPTD])) | PG_V; + + bcopy(PTD + KPTDI, pmap->pm_pdir_shadow + KPTDI, nkpt * sizeof(pd_entry_t)); for (i = 0; i < NPGPTD; i++) { - ma = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[i])); - ma_shadow = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[NPGPTD+i])); - /* re-map page directory read-only and pin */ - PT_SET_MA(pmap->pm_pdir + i*PAGE_SIZE, - (ma | PG_V | PG_A)); - PT_SET_MA(pmap->pm_pdpt + i*PAGE_SIZE, - (ma | PG_V | PG_A)); - xen_pgd_pin(ma); - /* add L1 shadow of L2 */ - xen_queue_pt_update(vtomach(&pmap->pm_pdir[PTDPTDI + i]), - ma_shadow | PG_V | PG_A); - xen_queue_pt_update(ma_shadow + PTDPTDI*sizeof(vm_paddr_t), - vtomach(pmap->pm_pdir) | PG_V | PG_A); + vm_paddr_t *pd; -#ifdef PAE - xen_queue_pt_update(vtomach(&pmap->pm_pdpt[i]), - ma_shadow | PG_V | PG_A); + pd = pmap->pm_pdir + (i * NPDEPG); + PT_SET_MA(pd, *vtopte((vm_offset_t)pd) & ~PG_RW); + pd = pmap->pm_pdir_shadow + (i * NPDEPG); + PT_SET_MA(pd, *vtopte((vm_offset_t)pd) & ~PG_RW); + } +#ifdef PAE + PT_SET_MA(pmap->pm_pdpt, *vtopte((vm_offset_t)pmap->pm_pdpt) & ~PG_RW); #endif - } xen_flush_queue(); - +#endif + pmap->pm_active = 0; TAILQ_INIT(&pmap->pm_pvchunk); bzero(&pmap->pm_stats, sizeof pmap->pm_stats); @@ -3197,36 +3211,6 @@ mtx_unlock(&sysmaps->lock); } - - -void -pmap_copy_ma_range(vm_paddr_t src, vm_paddr_t dst, uint32_t soff, uint32_t len) -{ - struct sysmaps *sysmaps; - - sysmaps = &sysmaps_pcpu[PCPU_GET(cpuid)]; - - mtx_lock(&sysmaps->lock); - if (*sysmaps->CMAP1) - panic("pmap_copy_ma: CMAP1 busy"); - if (*sysmaps->CMAP2) - panic("pmap_copy_ma: CMAP2 busy"); - sched_pin(); - - invlpg((u_int)sysmaps->CADDR1); - invlpg((u_int)sysmaps->CADDR2); - - PT_SET_VA_MA(sysmaps->CMAP1, PG_V | src | PG_A, FALSE); - PT_SET_VA_MA(sysmaps->CMAP2, PG_V | PG_RW | dst | PG_A | PG_M, TRUE); - - bcopy(sysmaps->CADDR1 + soff, sysmaps->CADDR2 + soff, len); - PT_CLEAR_VA(sysmaps->CMAP1, FALSE); - PT_CLEAR_VA(sysmaps->CMAP2, TRUE); - sched_unpin(); - mtx_unlock(&sysmaps->lock); -} - - /* * Returns true if the pmap's pv is one of the first * 16 pvs linked to from this page. This count may @@ -3628,7 +3612,7 @@ pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte_quick(pmap, pv->pv_va); - val = PT_GET(pte); + val = *pte; if ((val & PG_M) != 0) { /* @@ -3639,9 +3623,9 @@ #ifndef XEN atomic_clear_int((u_int *)pte, PG_M); #else - PT_SET_VA(pv->pv_va, val & ~PG_M, FALSE); + PT_SET_MA(pv->pv_va, val & ~PG_M); +#endif pmap_invalidate_page(pmap, pv->pv_va); -#endif } PMAP_UNLOCK(pmap); } @@ -3669,7 +3653,7 @@ pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte_quick(pmap, pv->pv_va); - val = PT_GET(pte); + val = *pte; if ((val & PG_A) != 0) { /* * Regardless of whether a pte is 32 or 64 bits @@ -3679,7 +3663,7 @@ #ifndef XEN atomic_clear_int((u_int *)pte, PG_A); #else - PT_SET_VA(pv->pv_va, val & ~PG_A, FALSE); + PT_SET_MA(pv->pv_va, val & ~PG_A); #endif pmap_invalidate_page(pmap, pv->pv_va); } @@ -3763,7 +3747,7 @@ { vm_offset_t base, offset, tmpva; pt_entry_t *pte; - u_int opte, npte; + vm_paddr_t opte, npte; pd_entry_t *pde; vm_paddr_t val; @@ -3810,10 +3794,10 @@ } while (npte != opte && !atomic_cmpset_int((u_int *)pte, opte, npte)); #else - opte = PT_GET(pte); + opte = *pte; npte = opte & ~(PG_PTE_PAT | PG_NC_PCD | PG_NC_PWT); npte |= pmap_cache_bits(mode, 0); - PT_SET_VA(tmpva, npte, FALSE); + PT_SET_MA(tmpva, npte); #endif tmpva += PAGE_SIZE; size -= PAGE_SIZE; ==== //depot/projects/xen31/sys/i386/xen/xen_machdep.c#7 (text+ko) ==== @@ -645,11 +645,7 @@ #endif -#ifdef PAE -static vm_paddr_t *pdir_shadow; -#else -static vm_paddr_t *pdir_shadow; -#endif +vm_paddr_t *pdir_shadow; #ifdef ADD_ISA_HOLE static void ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_comms.h#2 (text+ko) ==== @@ -37,17 +37,27 @@ int xs_input_avail(void); extern int xb_waitq; -static __inline int wait_event_interruptible(void *wchan, int condition) -{ - int ret = 0; - for (;;) { - if (condition) - break; - if ((ret = !tsleep(wchan, PWAIT | PCATCH, "waitev", hz/10))) - break; - } - return ret; -} +#define __wait_event_interruptible(wchan, condition, ret) \ +do { \ + for (;;) { \ + if (condition) \ + break; \ + if ((ret = !tsleep(wchan, PWAIT | PCATCH, "waitev", hz/10))) \ + break; \ + } \ +} while (0) + + +#define wait_event_interruptible(wchan, condition) \ +({ \ + int __ret = 0; \ + if (!(condition)) \ + __wait_event_interruptible(wchan, condition, __ret); \ + __ret; \ +}) + + + #define DECLARE_MUTEX(lock) struct sema lock #define semaphore sema #define rw_semaphore sema ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#3 (text+ko) ==== @@ -48,7 +48,7 @@ #include #include - +int xs_process_msg(void); #define EXPORT_SYMBOL(x) #define kmalloc(size, unused) malloc(size, M_DEVBUF, M_WAITOK) @@ -141,6 +141,9 @@ struct xs_stored_msg *msg; char *body; + if (HYPERVISOR_shared_info->evtchn_mask[curcpu] & 1) + xs_process_msg(); + spin_lock(&xs_state.reply_lock); while (list_empty(&xs_state.reply_list)) { @@ -737,7 +740,7 @@ } } -static int process_msg(void) +int xs_process_msg(void) { struct xs_stored_msg *msg; char *body; @@ -804,7 +807,7 @@ int err; for (;;) { - err = process_msg(); + err = xs_process_msg(); if (err) printf("XENBUS error %d while reading " "message\n", err); From owner-p4-projects@FreeBSD.ORG Fri Dec 28 07:57:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B576B16A420; Fri, 28 Dec 2007 07:57:55 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3DCC216A418 for ; Fri, 28 Dec 2007 07:57:55 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 10A8113C45A for ; Fri, 28 Dec 2007 07:57:55 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBS7vtMK014268 for ; Fri, 28 Dec 2007 07:57:55 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBS7vsBT014265 for perforce@freebsd.org; Fri, 28 Dec 2007 07:57:54 GMT (envelope-from pgj@FreeBSD.org) Date: Fri, 28 Dec 2007 07:57:54 GMT Message-Id: <200712280757.lBS7vsBT014265@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 131865 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 07:57:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=131865 Change 131865 by pgj@disznohal on 2007/12/28 07:57:38 Add initial Hungarian translation of Chapter 10: Linux Binary Compatibility. Raw translation of Part II is completed. Affected files ... .. //depot/projects/docproj_hu/books/handbook/linuxemu/chapter.sgml#2 edit Differences ... ==== //depot/projects/docproj_hu/books/handbook/linuxemu/chapter.sgml#2 (text+ko) ==== @@ -3,22 +3,26 @@ $FreeBSD: doc/en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml,v 1.134 2007/06/30 06:36:12 chinsan Exp $ --> + - + Jim Mock - Restructured and parts updated by + Újjászervezte és egyes + részeit aktualizálta: - Brian N. Handy - Originally contributed by + Eredetileg írta: Rich @@ -27,214 +31,298 @@ - Linux Binary Compatibility + Bináris Linux kompatibilitás - Synopsis - Linux binary compatibility + Áttekintés + Bináris Linux + kompatibilitás - binary compatibility + bináris kompatibilitás Linux - FreeBSD provides binary compatibility with several other - &unix; like operating systems, including Linux. At this point, - you may be asking yourself why exactly, does - FreeBSD need to be able to run Linux binaries? The answer to that - question is quite simple. Many companies and developers develop - only for Linux, since it is the latest hot thing in - the computing world. That leaves the rest of us FreeBSD users - bugging these same companies and developers to put out native - FreeBSD versions of their applications. The problem is, that most - of these companies do not really realize how many people would use - their product if there were FreeBSD versions too, and most continue - to only develop for Linux. So what is a FreeBSD user to do? This - is where the Linux binary compatibility of FreeBSD comes into - play. + A &os; számos más &unix;-szerû + operációs rendszerhez nyújt bináris + kompatibilitást, köztük a Linuxhoz is. + Elcsodálkozhatnánk rajta, hogy vajon miért + kell tudnia a &os;-nek Linux binárisokat futtatnia? A + válasz erre nagyon egyszerû. Rengeteg cég + és fejlesztõ kizárólag csak Linuxra + fejleszt, hiszen ez mostanság egy nagyon izgalmas + dolog az informatika világában. Emiatt + azonban a &os; közösségnek külön + gyõzködnie kell ezeket a cégeket és + fejlesztõket, hogy készítsék el a + termékeik natív &os; változatát. + Ezzel az a gond, a legtöbb ilyen cég egyszerûen + nem veszi észre, hogy ha létezne a + terméküknek &os;-re írt változata, akkor + még többen használnák. Így + továbbra is csak Linuxra fejlesztenek. Mit tudnak tenni + ilyenkor a &os; használói? Nos, ekkor jön + jól a &os; bináris szintû + kompatibilitása. - In a nutshell, the compatibility allows FreeBSD users to run - about 90% of all Linux applications without modification. This - includes applications such as &staroffice;, - the Linux version of &netscape;, + Dióhéjban úgy tudnánk + összefoglalni, hogy ennek köszönhetõen a &os; + felhasználók képesek a Linuxos + alkalmazások közel 90%-át mindenféle + további módosítás nélkül + futtatni. Így tehát használható a + &staroffice;, + &netscape; Linux változata, a &adobe; &acrobat;, &realplayer;, VMware, &oracle;, - &wordperfect;, Doom, - Quake, and more. It is also reported - that in some situations, Linux binaries perform better on FreeBSD - than they do under Linux. + &wordperfect;, + Doom, Quake, + és még sok minden más. Sõt, egyes + tapasztalatok szerint bizonyos helyzetekben a &os; által + futtatott Linux binárisok sokkal jobban + teljesítenek, mint Linux alatt. - There are, however, some Linux-specific operating system - features that are not supported under FreeBSD. Linux binaries will - not work on FreeBSD if they overly use &i386; specific - calls, such as enabling virtual 8086 mode. + Azonban vannak olyan Linuxra jellemzõ, az + operációs rendszer szintjén + meghúzódó eszközök, amelyek &os; + alatt nem használhatóak. &os;-n nem fognak + mûködni az olyan Linux binárisok, amelyek + túlzottan kihasználják az olyan &i386;-os + rendszerhívásokat, mint mondjuk a virtuális + 8086 mód. - After reading this chapter, you will know: + A fejezet elolvasása során + megismerjük: - How to enable Linux binary compatibility on your system. + hogyan engedélyezzük rendszerünkön a + Linux kompatibilitást - How to install additional Linux shared - libraries. - + hogyan telepítsünk Linuxos osztott + könyvtárakat + - How to install Linux applications on your FreeBSD system. + hogyan telepítsünk Linuxos + alkalmazásokat a &os; rendszerünkre - The implementation details of Linux compatibility in FreeBSD. + a &os; Linux kompatibilitásának + implementációs részleteit - Before reading this chapter, you should: + A fejezet elolvasásához ajánlott: - Know how to install additional third-party - software (). + külsõs szoftverek + telepítésének ismerete (). - Installation + Telepítés - KLD (kernel loadable object) + KLD (betölthetõ rendszermag + objektum) - Linux binary compatibility is not turned on by default. The - easiest way to enable this functionality is to load the - linux KLD object (Kernel LoaDable - object). You can load this module by typing the - following as root: + A bináris Linux kompatibilitás + alapértelmezés szerint nem engedélyezett. + Legkönnyebben úgy tudjuk elérhetõvé + tenni, ha betöltjük a linux nevû + KLD modult (Kernel LoaDable). Ehhez + root felhasználóként a + következõket kell begépelni: &prompt.root; kldload linux - If you would like Linux compatibility to always be enabled, - then you should add the following line to - /etc/rc.conf: + Ha minden egyes rendszerindítás során + engedélyezni szeretnénk a bináris + kompatibilitást, akkor tegyük bele az + /etc/rc.conf állományba ezt a + sort: linux_enable="YES" - The &man.kldstat.8; command can be used to verify that the - KLD is loaded: + A modul betöltõdését a &man.kldstat.8; + paranccsal tudjuk ellenõrizni: &prompt.user; kldstat Id Refs Address Size Name 1 2 0xc0100000 16bdb8 kernel 7 1 0xc24db000 d000 linux.ko - kernel options + a rendszermag beállításai COMPAT_LINUX - If for some reason you do not want to or cannot load the KLD, - then you may statically link Linux binary compatibility into the kernel - by adding options COMPAT_LINUX to your kernel - configuration file. Then install your new kernel as described in - . + Ha valamiért nem akarjuk vagy nem éppen nem + tudjuk betölteni a modult, akkor bináris Linux + kompatibilitást az options COMPAT_LINUX + beállítással be is tudjuk + építeni a rendszermagba. Ennek pontos + menetét a ben találjuk + meg. - Installing Linux Runtime Libraries + Linuxos futtatókönyvtárak + telepítése Linux - installing Linux libraries + Linuxos könyvtárak + telepítése - This can be done one of two ways, either by using the - linux_base port, or - by installing them manually. + Két módon is csinálhatjuk: + egyrészt a linux_base port + feltelepítésével, másrészt + manuálisan. - Installing Using the linux_base Port - Ports Collection + A könyvtárak telepítése a + linux_base porttal + Portgyûjtemény - This is by far the easiest method to use when installing the - runtime libraries. It is just like installing any other port - from the Ports Collection. - Simply do the following: + A futtatókönyvtárak + telepítésének ez a lehetõ + legegyszerûbb módja. Teljesen úgy + történik, mint a Portgyûjtemény + akármelyik másik portjának + telepítése. Csupán ennyit kell + beírnunk: &prompt.root; cd /usr/ports/emulators/linux_base-fc4 &prompt.root; make install distclean - You should now have working Linux binary compatibility. - Some programs may complain about incorrect minor versions of the - system libraries. In general, however, this does not seem to be - a problem. + A telepítés végeztével kaptunk + is egy mûködõ bináris Linux + kompatibilitást, habár egyes programok + még panaszkodhatnak a rendszerkönyvtárak + alverzióit illetõen. + Általánosságban véve ez azonban + nem kavar nagyobb port. - There may be multiple versions of the emulators/linux_base port available, - corresponding to different versions of various Linux distributions. - You should install the port most closely resembling the - requirements of the Linux applications you would like to - install. + + A emulators/linux_base portnak + több változata is használható, + melyek az egyes Linux disztribúcióknak + feleltethetõek meg. Ilyenkor mindig érdemes + közülük azt választani, amelyik a + leginkább megfelel a telepíteni + kívánt Linuxos alkalmazás + igényeinek. + - Installing Libraries Manually + A könyvtárak telepítése + manuálisan - If you do not have the ports collection - installed, you can install the libraries by hand instead. You - will need the Linux shared libraries that the program depends on - and the runtime linker. Also, you will need to create a - shadow root directory, - /compat/linux, for Linux libraries on your - FreeBSD system. Any shared libraries opened by Linux programs - run under FreeBSD will look in this tree first. So, if a Linux - program loads, for example, /lib/libc.so, - FreeBSD will first try to open - /compat/linux/lib/libc.so, and if that does - not exist, it will then try /lib/libc.so. - Shared libraries should be installed in the shadow tree - /compat/linux/lib rather than the paths - that the Linux ld.so reports. + Ha korábban nem telepítettük volna a + portgyûjteményt, akkor egyénileg kell + felraknunk az egyes könyvtárakat. + Közülük azokra lesz + szükségünk, amelyeket maga az + alkalmazás is használni akar, valamint a + futásidejû linkerre. Emellett még a &os; + rendszerükön levõ Linux binárisok + számára a /compat/linux + könyvtárban létre kell hoznunk a + gyökér ún. + árnyékkönyvtárát + is. A &os; alatt elindított Linux programok + elõször ebben a könyvtárban + fogják keresni a hozzájuk tartozó osztott + könyvtárakat. Így tehát, amikor egy + Linuxos program betölti mondjuk a + /lib/libc.so + függvénykönyvtárat, akkor a &os; + elõször a + /compat/linux/lib/libc.so + állományt próbálja meg megnyitni, + majd ha az nem létezik, akkor a + /lib/libc.so állományt. Az + osztott könyvtárak ezért a + /compat/linux/lib + árnyékkönyvtárba + telepítendõek, és nem oda, ahova a Linuxos + ld.so mutat. - Generally, you will need to look for the shared libraries - that Linux binaries depend on only the first few times that you - install a Linux program on your FreeBSD system. After a while, - you will have a sufficient set of Linux shared libraries on your - system to be able to run newly imported Linux binaries without - any extra work. + Általánosságban szólva eleinte + elég csak azokat az osztott könyvtárakat + megkeresni és felrakni, amelyekre a + telepítendõ Linuxos alkalmazásunknak + ténylegesen szüksége van. Egy idõ + után úgyis összegyûlnek azok a + fontosabb függvénykönyvtárak, amelyek + segítségével már minden + további ráfordítás + nélkül futtatni tudjuk a frissen importált + programokat. - How to Install Additional Shared Libraries - shared libraries + Hogyan telepítsünk újabb osztott + könyvtárakat? + osztott + könyvtárak - What if you install the linux_base port - and your application still complains about missing shared - libraries? How do you know which shared libraries Linux - binaries need, and where to get them? Basically, there are 2 - possibilities (when following these instructions you will need - to be root on your FreeBSD system). + Mit tegyünk, ha linux_base port + feltelepítése után az alkalmazás + még mindig követel néhány + hiányzó osztott könyvtárat? Honnan + tudhatjuk meg, hogy milyen osztott könyvtárak + kellenek majd egy Linux bináris + használatához és honnan szerezzük be + õket? Erre alapvetõn két + lehetõségünk van (és az + utasításokat root + felhasználóként kell majd + végrehajtanunk). - If you have access to a Linux system, see what shared - libraries the application needs, and copy them to your FreeBSD - system. Look at the following example: + Ha hozzáférünk egy Linux rendszerhez, + akkor szedjük össze az alkalmazásunk + futtatásához szükséges osztott + könyvtárakat és másoljuk õket a + &os; partíciójára. + Például: - Let us assume you used FTP to get the Linux binary of - Doom, and put it on a Linux system you have access to. You - then can check which shared libraries it needs by running - ldd linuxdoom, like so: + Tegyük fel, hogy FTP-n keresztül + leszedtük a Doom Linux + változatát és felraktuk egy + általunk elérhetõ Linux rendszerre. Az + ldd linuxdoom parancs + segítségével ki tudjuk deríteni, + milyen osztott könyvtárak kellenek majd + nekünk: &prompt.user; ldd linuxdoom libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0 libX11.so.3 (DLL Jump 3.1) => /usr/X11/lib/libX11.so.3.1.0 libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29 - symbolic links - You would need to get all the files from the last column, - and put them under /compat/linux, with - the names in the first column as symbolic links pointing to - them. This means you eventually have these files on your - FreeBSD system: + szimbolikus linkek + Az utolsó oszlopban levõ + állományokat másoljuk át, + tegyük õket a /compat/linux + könyvtárba, és hozzunk létre az + elsõ oszlopban szereplõ szimbolikus linkeket. + Így tehát a következõ + állományok kellenének: /compat/linux/usr/X11/lib/libXt.so.3.1.0 /compat/linux/usr/X11/lib/libXt.so.3 -> libXt.so.3.1.0 @@ -245,32 +333,44 @@
- Note that if you already have a Linux shared library - with a matching major revision number to the first column - of the ldd output, you will not need to - copy the file named in the last column to your system, the - one you already have should work. It is advisable to copy - the shared library anyway if it is a newer version, - though. You can remove the old one, as long as you make - the symbolic link point to the new one. So, if you have - these libraries on your system: + Vegyük észre, hogy ha már van + nekünk az ldd kimenetének + elsõ oszlopában szereplõ + fõverziószámú osztott + könyvtár, akkor nem kell + átmásolni az utolsó oszlopban + levõ állományokat, hiszen így + is mûködnie kellene mindennek. Habár + amennyiben egy újabb változattal + találkozunk, akkor érdemes mégis + inkább átmásolni. Miután a + szimbolikus linkeket átirányítottuk + az új változatra, a régit + akár törölhetjük is. Ha mondjuk + ezek a könyvtárak elérhetõek a + rendszerünkön: /compat/linux/lib/libc.so.4.6.27 /compat/linux/lib/libc.so.4 -> libc.so.4.6.27 - and you find a new binary that claims to require a - later version according to the output of - ldd: + és észrevesszük, hogy az + ldd kimenetében az új + bináris egy újabb változatot + igényel: libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29 - If it is only one or two versions out of date in the - trailing digit then do not worry about copying - /lib/libc.so.4.6.29 too, because the - program should work fine with the slightly older version. - However, if you like, you can decide to replace the - libc.so anyway, and that should leave - you with: + Ha csak az utolsó jegyében marad le + egy kicsivel a verziószám, akkor nem + különösebben aggódnunk a + /lib/libc.so.4.6.29 miatt sem, + hiszen a programnak egy picivel korábbi + verzióval is remekül kellene tudnia + mûködnie. Természetesen, ha akarjuk, + ettõl függetlnül + lecserélhetjük a + libc.so állományt, + ami ezt eredményezi: /compat/linux/lib/libc.so.4.6.29 /compat/linux/lib/libc.so.4 -> libc.so.4.6.29 @@ -279,11 +379,14 @@
- The symbolic link mechanism is - only needed for Linux binaries. The - FreeBSD runtime linker takes care of looking for matching - major revision numbers itself and you do not need to worry - about it. + A szimbolikus linkek karbantartása + csak a Linux binárisok + esetén szükséges. A &os; + saját futásidejû linkere + magától megkeresi a megfelelõ + fõverziószámú + könyvtárakat, ezért emiatt + általában nem kell aggódni.
@@ -291,55 +394,72 @@ - Installing Linux ELF Binaries + Linux ELF binárisok telepítése Linux - ELF binaries + ELF binárisok - ELF binaries sometimes require an extra step of - branding. If you attempt to run an unbranded ELF - binary, you will get an error message like the following: + Az ELF binárisok futtatása elõtt + néha még szükség van a + megbélyegzés (branding) + használatára is. Ha egy bélyegezetlen ELF + binárist akarunk elindítani, akkor a + következõ hibaüzenetet kapjuk: &prompt.user; ./my-linux-elf-binary ELF binary type not known Abort - To help the FreeBSD kernel distinguish between a FreeBSD ELF - binary from a Linux binary, use the &man.brandelf.1; - utility. + A &os; rendszermagjának a &man.brandelf.1; paranccsal + tudunk segíteni a &os; és a Linux + binárisainak + megkülönböztetésében. &prompt.user; brandelf -t Linux my-linux-elf-binary - GNU toolchain - The GNU toolchain now places the appropriate branding - information into ELF binaries automatically, so this step - should become increasingly unnecessary in the future. + GNU + eszköztár + A GNU eszköztára manapság már + automatikusan elhelyezi az ELF binárisok + azonosításához szükséges + bélyeget, ezért ez a lépés a + jövõben egyre inkább feleslegessé + válik. - Configuring the Hostname Resolver + A névfeloldó + beállítása - If DNS does not work or you get this message: + Ha a névfeloldás (DNS) valamiért nem + mûködne, vagy egy ehhez hasonló üzenetet + kapunk: resolv+: "bind" is an invalid keyword resolv+: "hosts" is an invalid keyword - You will need to configure a - /compat/linux/etc/host.conf file - containing: + Akkor az /compat/linux/etc/host.conf + állományba be kell illesztenünk a + következõ sorokat: order hosts, bind multi on - The order here specifies that /etc/hosts - is searched first and DNS is searched second. When - /compat/linux/etc/host.conf is not - installed, Linux applications find FreeBSD's - /etc/host.conf and complain about the - incompatible FreeBSD syntax. You should remove - bind if you have not configured a name server - using the /etc/resolv.conf file. + Az itt megszabott sorrend szerint elõször a + /etc/hosts állományt + nézi át, és majd csak ezután + próbálja meg feloldani a nevet. Ha a + /compat/linux/etc/host.conf + állomány nem létezik, akkor a Linuxos + alkalmazás a &os; /etc/host.conf + állományát találja meg, és + panaszkodni fog a &os; eltérõ + formátumára. Távolítsuk el a + bind szócskát, ha nem + állítottunk be névszervert az + /etc/resolv.conf + állományhoz. @@ -349,75 +469,104 @@ Boris Hollas - Updated for Mathematica 5.X by + A Mathematica 5.X verziójához + igazította: - Installing &mathematica; + A &mathematica; telepítése - applications + alkalmazások Mathematica - This document describes the process of installing the Linux - version of &mathematica; 5.X onto - a FreeBSD system. + Ebben a szakaszban megismerkedhetünk a + &mathematica; 5.X Linux + változatának &os; rendszerekre + történõ + telepítésével. - The Linux version of &mathematica; - or &mathematica; for Students can - be ordered directly from Wolfram at - . + A &mathematica; vagy + &mathematica; for Students Linuxos + változatai közvetlenül megrendelhetõek a + fejlesztõtõl: . - Running the &mathematica; Installer + A &mathematica; telepítõjének + elindítása - First, you have to tell &os; that - &mathematica;'s Linux - binaries use the Linux ABI. The easiest way to do so is to - set the default ELF brand - to Linux for all unbranded binaries with the command: + Elõször is jeleznünk kell a &os;-nek, hogy a + &mathematica; binárisai a + Linuxos ABI-t (Appplication Binary Interface) fogják + használni. Itt legkönnyebben úgy + járhatunk el, ha egyszerûen + beállítjuk, hogy a rendszer a bélyegezetlen + ELF binárisokat automatikusan Linux binárisoknak + tekintse: &prompt.root; sysctl kern.fallback_elf_brand=3 - This will make &os; assume that unbranded ELF binaries - use the Linux ABI and so you should be able to run the - installer straight from the CDROM. + Ennek köszönhetõen a &os; most már az + összes bélyegezetlen ELF bináris esetén + a Linuxos ABI-t fogja használni, és így a + telepítõt akár már + közvetlenül a CD-rõl is + indíthatjuk. - Now, copy the file MathInstaller to - your hard drive: + Most másoljuk át a + MathInstaller nevû + állományt a merevlemezünkre: &prompt.root; mount /cdrom &prompt.root; cp /cdrom/Unix/Installers/Linux/MathInstaller /localdir/ - and in this file, replace /bin/sh in - the first line by /compat/linux/bin/sh. - This makes sure that the installer is executed by the Linux - version of &man.sh.1;. Next, replace all occurrences of - Linux) by FreeBSD) with - a text editor or the script below in the next section. This - tells the &mathematica; installer, - who calls uname -s to determine the - operating system, to treat &os; as a Linux-like operating - system. Invoking MathInstaller will now - install &mathematica;. + Az állományban cseréljük az + elsõ sorban található + /bin/sh hivatkozást a + /compat/linux/bin/sh hivatkozásra. + Ezzel biztosíthatjuk be, hogy a telepítõt a + Linuxos &man.sh.1; fogja végrehajtani. Ezután a + kedvenc szövegszerkesztõnkkel vagy a + következõ szakaszban található szkript + segítségével helyettesítsük + benne a Linux) szöveg összes + elõfordulását + FreeBSD)-vel. Mivel a + &mathematica; telepítõje + az uname -s parancsra kapott + válaszból állapítja meg az + operációs rendszer típusát, + ezért ezzel a módosítással a &os;-t + is a Linuxhoz hasonló módon fogja kezelni. A + MathInstaller elindítása + után most már képesek leszünk + telepíteni a + &mathematica;-t. - Modifying the &mathematica; Executables + A &mathematica; állományainak + módosítása - The shell scripts that - &mathematica; created during - installation have to be modified before you can use them. If - you chose /usr/local/bin - as the directory to place the - &mathematica; executables in, you - will find symlinks in this directory to files called - math, mathematica, - Mathematica, and - MathKernel. In each of these, replace - Linux) by FreeBSD) with - a text editor or the following shell script: + A &mathematica; + telepítése során létrejött + szkripteket a használatuk elõtt át kell + írnunk. Amennyiben a + &mathematica;-hoz tartozó + programokat a /usr/local/bin + könyvtárba telepítettük, akkor itt + találunk kell a math, + mathematica, + Mathematica és + MathKernel állományokra + mutató szimbolikus linkeket. Ezek mindegyikében + cseréljük ki a Linux) + karakterláncot FreeBSD)-re a kedvenc + szövegszerkesztõnkkel vagy az alábbi + szkripttel: #!/bin/sh cd /usr/local/bin @@ -430,57 +579,84 @@ - Obtaining Your &mathematica; Password + A &mathematica; jelszavának + megszerzése Ethernet - MAC address + MAC-cím - When you start &mathematica; - for the first time, you will be asked for a password. If you - have not yet obtained a password from Wolfram, run the program - mathinfo in the installation directory to - obtain your machine ID. This machine ID is - based solely on the MAC address of your first Ethernet card, - so you cannot run your copy of - &mathematica; on different - machines. + A &mathematica; elsõ + indítása során kérni fog egy + jelszót. Ha még nem kértünk volna + jelszót a fejlesztõtõl, akkor a + számítógépünk + azonosítójának (machine ID) + megállapításához indítsuk el + a telepítés könyvtárában + található mathinfo nevû + programot. Ez az azonosító + lényegében az elsõdleges Ethernet + kártyánk MAC-címe lesz, ezért a + &mathematica; nem futtatható + több számítógépen. - When you register with Wolfram, either by email, phone or fax, - you will give them the machine ID and they will - respond with a corresponding password consisting of groups of - numbers. + Amikor e-mailen, telefonon vagy faxon keresztül + regisztráljuk a terméket a Wolframnál, + akkor meg kell adnunk nekik ezt az azonosítót + machine ID néven, amire õk + elküldik a hozzátartozó + jelszót. - Running the &mathematica; Frontend over a Network + A &mathematica; elõlapjának futtatása + hálózaton keresztül - &mathematica; uses some special - fonts to display characters not - present in any of the standard font sets (integrals, sums, Greek - letters, etc.). The X protocol requires these fonts to be install - locally. This means you will have to copy - these fonts from the CDROM or from a host with - &mathematica; - installed to your local machine. These fonts are normally stored - in /cdrom/Unix/Files/SystemFiles/Fonts on the - CDROM, or - /usr/local/mathematica/SystemFiles/Fonts on - your hard drive. The actual fonts are in the subdirectories - Type1 and X. There are - several ways to use them, as described below. + A &mathematica; a + szabványos betûkészletekkel meg nem + jeleníthetõ szimbólumokhoz + (integráljelek, szummák, görög + betûk, matematikai jelölések stb.) + használ néhány olyan speciális + betûtípust, amelyek nem minden esetben állnak + rendelkezésre. A X által használt + protokoll miatt ezeket a betûtípusokat + helyben kell telepíteni. Ennek + értelmében a + &mathematica; CD-jén + található betûtípusokat fel kell + telepítenünk a + számítógépünkre is. A CD-n + ezeket általában a + /cdrom/Unix/Files/SystemFiles/Fonts + könyvtárban találjuk meg, vagy a merevlemezen + a /usr/local/mathematica/SystemFiles/Fonts + könyvtárban. Itt pedig a Type1 + és X alkönyvtárakra van + szükségünk. Az alábbiakban + leírtak szerint több módon is + használhatjuk õket. - The first way is to copy them into one of the existing font - directories in /usr/X11R6/lib/X11/fonts. - This will require editing the fonts.dir file, - adding the font names to it, and changing the number of fonts on - the first line. Alternatively, you should also just be able to - run &man.mkfontdir.1; in the directory you have copied - them to. + Ezek közül az egyik lehetséges + módszer, ha átmásoljuk az imént + említett könyvtárakat a többi + mellé, vagyis a + /usr/X11R6/lib/X11/fonts + könyvtárba. Ekkor szükségünk lesz + még a fonts.dir + állomány átírására is, + ahova fel kell vennünk a betûtípusok neveit, + majd ennek megfelelõen az elsõ sorban + módosítanunk a könyvtárban + található betûtípusok + számát. De ugyanígy lefuttathatjuk ebben a + könyvtárban a &man.mkfontdir.1; parancsot is. - The second way to do this is to copy the directories to - /usr/X11R6/lib/X11/fonts: + Az a másik megoldás, ha a + könyvtárakat így másoljuk át a + /usr/X11R6/lib/X11/fonts helyre: &prompt.root; cd /usr/X11R6/lib/X11/fonts &prompt.root; mkdir X @@ -493,25 +669,36 @@ &prompt.root; cd ../MathType1 &prompt.root; mkfontdir - Now add the new font directories to your font path: + Most adjuk hozzá az új + könyvtárakat a betûtípusok + könyvtárait tartalmazó + felsoroláshoz: &prompt.root; xset fp+ /usr/X11R6/lib/X11/fonts/X &prompt.root; xset fp+ /usr/X11R6/lib/X11/fonts/MathType1 &prompt.root; xset fp rehash - If you are using the &xorg; server, you can have these font - directories loaded automatically by adding them to your - xorg.conf file. + Ha az &xorg; szervert + használjuk, akkor az xorg.conf + állományban megadhatjuk ezen + könyvtárak automatikus betöltését + is. - For &xfree86; servers, - the configuration file is XF86Config. - fonts + + Az &xfree86; + típusú szerverek esetén az + XF86Config konfigurációs + állományt kell + módosítanunk. + + betûk - If you do not already have a directory - called /usr/X11R6/lib/X11/fonts/Type1, you - can change the name of the MathType1 - directory in the example above to - Type1. + Ha még nincs + /usr/X11R6/lib/X11/fonts/Type1 nevû + könyvtárunk, akkor a példában + szereplõ MathType1 + könyvtárat nyugodtan átnevezhetjük + Type1-re. @@ -521,56 +708,71 @@ Aaron Kaplan - - Contributed by + Írta: Robert Getschmann - - Thanks to + Köszönet: - Installing &maple; + A &maple; telepítése - applications + alkalmazások Maple - &maple; is a commercial mathematics program similar to >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 10:20:10 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 38F7E16A4A0; Fri, 28 Dec 2007 10:20:10 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EEA2D16A49C for ; Fri, 28 Dec 2007 10:20:09 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D5F2413C44B for ; Fri, 28 Dec 2007 10:20:09 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSAK90w093329 for ; Fri, 28 Dec 2007 10:20:09 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSAJh5Z093264 for perforce@freebsd.org; Fri, 28 Dec 2007 10:19:43 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 28 Dec 2007 10:19:43 GMT Message-Id: <200712281019.lBSAJh5Z093264@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 131871 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 10:20:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131871 Change 131871 by rdivacky@rdivacky_witten on 2007/12/28 10:19:43 IFC Affected files ... .. //depot/projects/soc2007/rdivacky/linux_at/include/dirent.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/lib/libc/gen/Symbol.map#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/busdma_machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/db_trace.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/exception.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/genassym.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/identcpu.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/intr_machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/local_apic.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/mp_watchdog.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/msi.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/nexus.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/pmap.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/prof_machdep.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/stack_machdep.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/trap.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/amd64/vm_machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/conf/DEFAULTS#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/conf/GENERIC#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/conf/GENERIC.hints#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/conf/NOTES#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/clock.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/pc/bios.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/pci_cfgreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/specialreg.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/stack.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/include/vmparam.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/isa/clock.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/amd64/pci/pci_cfgreg.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/bcopy_page.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/bcopyinout.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/busdma_machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/cpufunc.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/cpufunc_asm_arm11.S#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/cpufunc_asm_armv5.S#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/cpufunc_asm_armv5_ec.S#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/db_trace.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/identcpu.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/in_cksum_arm.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/nexus_io.c#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/nexus_io_asm.S#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/pmap.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/stack_machdep.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/support.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/swtch.S#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/trap.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/arm/vm_machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/at91.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/at91_mcireg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/ohci_atmelarm.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/std.at91#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/std.kb920x#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/uart_cpu_at91rm9200usart.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/AVILA#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/BWCT#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/CRB#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/EP80219#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/HL200#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/KB920X#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/SIMICS#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/armreg.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/asm.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/asmacros.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/atomic.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/cpuconf.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/cpufunc.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/stack.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/include/vmparam.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/sa11x0/files.sa11x0#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/xscale/i80321/ep80219_machdep.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/xscale/i80321/iq31244_machdep.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/xscale/i8134x/crb_machdep.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/xscale/ixp425/avila_machdep.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/xscale/ixp425/if_npe.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/arm/xscale/ixp425/ixp425_qmgr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/boot2/boot2.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/boot2/bwct_board.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/libat91/eeprom.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/libat91/emac.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/libat91/emac_init.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/libat91/lib.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/arm/at91/libat91/spi_flash.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/common/loader.8#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/common/ufsread.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/ficl/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/forth/support.4th#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/Makefile#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/boot2/boot2.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/cdboot/cdboot.s#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/gptboot/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/gptboot/gptboot.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/gptboot/gptldr.S#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/bioscd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/biosmem.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/biossmap.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/devicename.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/libi386/pxe.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/loader/main.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/pmbr/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/i386/pmbr/pmbr.s#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/pc98/Makefile.inc#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/pc98/boot2/boot.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/pc98/cdboot/cdboot.s#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/pc98/libpc98/bioscd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/pc98/libpc98/biosdisk.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/pc98/loader/main.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/Makefile#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/conf.c#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/help.ofw#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/ldscript.powerpc#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/metadata.c#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/start.c#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/loader/version#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/bsm/audit.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/cam/cam_xpt.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/cam/scsi/scsi_da.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/cam/scsi/scsi_low.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32_ipc.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32_misc.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32_proto.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32_syscall.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32_syscalls.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/freebsd32_sysent.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/freebsd32/syscalls.master#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linprocfs/linprocfs.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_file.c#19 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_getcwd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_ioctl.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linux/linux_misc.c#10 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/ndis/ndis_var.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/ndis/subr_ndis.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/ndis/subr_ntoskrnl.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/kern/opensolaris_vfs.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/rpc/xdr.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/atomic.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/bitmap.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/cpupart.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/cpuvar.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/cyclic.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/elf.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/kcondvar.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/kmem.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/mman.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/modctl.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/mutex.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/objfs.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/param.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/pcpu.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/proc.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/rwlock.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/stat.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/time.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/opensolaris/sys/types.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/pecoff/imgact_pecoff.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/svr4/imgact_svr4.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/svr4/svr4_fcntl.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/svr4/svr4_misc.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/Makefile.amd64#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/NOTES#10 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files#11 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.amd64#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.arm#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.i386#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.ia64#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.pc98#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.powerpc#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.sparc64#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/files.sun4v#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/kmod.mk#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/newvers.sh#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/options#10 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/options.amd64#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/options.arm#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/options.i386#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/conf/options.powerpc#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/dev/wpi/LICENSE#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/dev/wpi/iwlwifi-3945-2.14.4.fw.uu#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/fil.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_auth.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_compat.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_fil.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_frag.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_htable.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_log.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_lookup.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_lookup.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_nat.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_nat.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_pool.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_pool.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_proxy.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_rpcb_pxy.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_scan.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_state.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_state.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ip_sync.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/ipl.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/ipfilter/netinet/mlfk_ipl.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/common/avl/avl.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/common/nvpair/nvpair.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/arc.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/vdev.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_fm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/zil.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/zio.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/fs/zfs/zvol.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/rpc/xdr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/rpc/xdr.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/sys/byteorder.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/sys/isa_defs.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/sys/procset.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/sys/sysmacros.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/sys/vfs.h#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/opensolaris/uts/common/sys/vmem.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/pf/net/pf.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/pf/net/pf_if.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/pf/net/pf_ioctl.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/contrib/pf/net/pf_table.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_capture.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_command.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_command.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_examine.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_input.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_lex.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_lex.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_main.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_output.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_ps.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_script.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/db_textdump.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/ddb/ddb.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aac/aac.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aac/aac_cam.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aac/aac_debug.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aac/aac_pci.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aac/aacreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aac/aacvar.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpi_support/acpi_ibm.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/Osd/OsdDebug.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_cpu.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_ec.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_hpet.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_pci.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_pci_link.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/acpica/acpivar.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_ali.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_amd.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_amd64.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_ati.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_i810.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_if.m#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_intel.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_nvidia.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_sis.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agp_via.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agppriv.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agpreg.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/agp/agpvar.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aic7xxx/aic_osm_lib.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/aic7xxx/aic_osm_lib.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/amr/amr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/amr/amr_cam.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/amr/amr_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/amr/amrvar.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/an/if_an.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/an/if_anreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/arcmsr/arcmsr.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/arcmsr/arcmsr.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/asmc/asmc.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/asmc/asmcvar.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-all.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-disk.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-dma.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/ata-pci.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/atapi-cd.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/atapi-fd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ata/atapi-tape.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ath/ath_rate/sample/sample.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ath/if_ath_pci.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/bce/if_bce.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/bge/if_bge.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/bge/if_bgereg.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/bktr/msp34xx.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ciss/ciss.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/coretemp/coretemp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ctau/if_ct.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cx/if_cx.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/common/cxgb_t3_cpl.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_adapter.h#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_config.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_include.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_l2t.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_l2t.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_main.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_offload.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_offload.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_osdep.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/cxgb_sge.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/sys/cxgb_support.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/sys/mbufq.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/sys/mvec.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/sys/uipc_mvec.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/t3cdev.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/toecore/toedev.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/toecore/toedev.h#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_defs.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_listen.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_tcp.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_tom.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_tom.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/dc/if_dc.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/dcons/dcons_os.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/drm/drmP.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/drm/drm_agpsupport.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_80003es2lan.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_80003es2lan.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82540.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82541.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82541.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82542.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82543.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82543.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82571.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82571.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82575.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_82575.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_api.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_api.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_defines.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_hw.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_ich8lan.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_ich8lan.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_mac.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_mac.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_manage.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_manage.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_nvm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_nvm.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_osdep.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_phy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_phy.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/e1000_regs.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/if_em.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/em/if_em.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/esp/esp_sbus.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/fdc/fdc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/firewire/firewire.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/flash/at45d.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/gem/if_gem.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptmv/entry.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/amd64-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/array.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/him.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/himfuncs.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/hptintf.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/hptrr_config.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/hptrr_config.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/hptrr_os_bsd.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/hptrr_osm_bsd.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/i386-elf.hptrr_lib.o.uu#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/ldm.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/list.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/os_bsd.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hptrr/osm.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_arm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_ia64.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_logging.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_mod.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_piv.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_powerpc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_sparc64.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/hwpmc/hwpmc_x86.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ichsmb/ichsmb_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ichwd/ichwd.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ichwd/ichwd.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/idt/idt_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/if_ndis/if_ndis.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/if_ndis/if_ndis_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/if_ndis/if_ndisvar.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ipmi/ipmi_kcs.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ipmi/ipmi_smic.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ipmi/ipmi_ssif.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ipw/if_ipw.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ipw/if_ipwreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/iscsi/initiator/isc_sm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/iscsi/initiator/isc_soc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/isp/isp_freebsd.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/isp/isp_sbus.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/isp/isp_target.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/iwi/if_iwi.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/lge/if_lge.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/md/md.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mfi/mfi.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mfi/mfi_cam.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mfi/mfi_pci.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/e1000phyreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/gentbi.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/miidevs#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/rgephyreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/rlphy.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mii/ukphy_subr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mmc/mmcsd.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mpt/mpt.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mpt/mpt.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mpt/mpt_cam.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/mpt/mpt_raid.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/msk/if_msk.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/msk/if_mskreg.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/my/if_my.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nfe/if_nfe.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nge/if_nge.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nve/if_nve.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nvram/nvram.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/if_nxge.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/if_nxge.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/build-version.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/version.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xge-debug.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xge-defs.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xge-list.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xge-os-pal.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xge-os-template.h#2 delete .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xge-queue.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-channel.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-config.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-device.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-driver.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-event.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-fifo.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-mgmt.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-mgmtaux.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-mm.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-regs.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-ring.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-stats.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal-types.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/include/xgehal.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xge-osdep.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xge-queue.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-channel-fp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-channel.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-config.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-device-fp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-device.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-driver.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-fifo-fp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-fifo.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-mgmt.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-mgmtaux.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-mm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-ring-fp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-ring.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgehal/xgehal-stats.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/nxge/xgell-version.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ofw/ofw_disk.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/pccard/pccard_cis_quirks.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/pccard/pccarddevs#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/pccbb/pccbb.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/pccbb/pccbb_pci.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/pci/pci.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/pci/pci_user.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/powermac_nvram/powermac_nvram.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/puc/puc_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ral/rt2560.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ral/rt2661.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/random/harvest.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/random/randomdev_soft.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/random/yarrow.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/re/if_re.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/safe/safe.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/si/si_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sio/sio.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sio/sio_isa.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sio/sio_puc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/snp/snp.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/isa/ad1816.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/isa/ad1816.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/midi/sequencer.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/atiixp.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/atiixp.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/emu10kx.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/envy24.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/envy24ht.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/hda/hdac.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/ich.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/maestro.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pci/t4dwave.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pcm/ac97.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pcm/ac97_patch.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/pcm/channel.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/sound/sbus/cs4231.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/stge/if_stge.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/syscons/syscons.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/ti/if_ti.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_cl_init.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_cl_intr.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_cl_io.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_cl_misc.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_cl_share.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_osl.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_osl_cam.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_osl_freebsd.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/twa/tw_osl_share.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/txp/if_txp.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/uart/uart_core.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/ehci_pci.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_axe.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_axereg.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_rum.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_ural.c#9 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_zyd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_zydfw.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/if_zydreg.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/uchcom.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/uhci_pci.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/uipaq.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/ukbd.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/umass.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/ums.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/uplcom.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/usb.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/usb_port.h#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/usb_quirks.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/usb/usbdevs#9 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/utopia/utopia.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/vge/if_vge.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/vx/if_vx_pci.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/wpi/if_wpi.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/wpi/if_wpireg.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/dev/wpi/if_wpivar.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/cd9660/cd9660_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/coda/coda_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/devfs/devfs_devs.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/devfs/devfs_vnops.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/fdescfs/fdesc_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/hpfs/hpfs_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/denode.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_denode.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_fat.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_lookup.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_vfsops.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_vnops.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/ntfs/ntfs_ihash.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/ntfs/ntfs_vfsops.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/nullfs/null_subr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/nullfs/null_vfsops.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/nullfs/null_vnops.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/nwfs/nwfs_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/portalfs/portal_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/pseudofs/pseudofs.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/smbfs/smbfs_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/tmpfs/tmpfs.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/tmpfs/tmpfs_subr.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/tmpfs/tmpfs_vfsops.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/tmpfs/tmpfs_vnops.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/unionfs/union.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/unionfs/union_subr.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/unionfs/union_vfsops.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/unionfs/union_vnops.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/bde/g_bde.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/bde/g_bde_work.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/eli/g_eli.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/eli/g_eli_crypto.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/geom_bsd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/geom_dev.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/geom_io.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/journal/g_journal.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/label/g_label_reiserfs.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/mirror/g_mirror.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/multipath/g_multipath.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/part/g_part.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/part/g_part.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/part/g_part_apm.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/part/g_part_bsd.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/part/g_part_gpt.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/raid3/g_raid3.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/vinum/geom_vinum_drive.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/vinum/geom_vinum_init.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/vinum/geom_vinum_plex.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/geom/vinum/geom_vinum_volume.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/gnu/fs/ext2fs/ext2_vfsops.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/bios/apm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/conf/DEFAULTS#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/conf/GENERIC#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/conf/GENERIC.hints#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/conf/NOTES#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/conf/PAE#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/conf/XBOX#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/busdma_machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/db_trace.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/exception.s#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/genassym.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/in_cksum.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/intr_machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/locore.s#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/mp_machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/mp_watchdog.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/msi.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/pmap.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/stack_machdep.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/trap.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/i386/vm_machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/ibcs2/imgact_coff.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/bootinfo.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/clock.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/in_cksum.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/pc/bios.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/pmap.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/stack.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/include/vmparam.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/isa/clock.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/isa/prof_machdep.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/linux/imgact_linux.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/linux/linux_machdep.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/pci/pci_cfgreg.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i386/pci/pci_pir.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_avm_a1.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_elsa_pcc16.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_isic.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_itk_ix1.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_tel_s016.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_tel_s0163.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/i4b/layer1/isic/i4b_tel_s08.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/conf/GENERIC#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/busdma_machdep.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/db_machdep.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/exception.S#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/interrupt.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/machdep.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/pmap.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/stack_machdep.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/support.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/trap.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/ia64/vm_machdep.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/include/atomic.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/include/pmc_mdep.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/ia64/include/vmparam.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/Makefile#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/imgact_aout.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/imgact_elf.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/imgact_gzip.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/init_main.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_acct.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_alq.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_clock.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_conf.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_cpu.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_descrip.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_environment.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_event.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_exec.c#17 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_exit.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_fork.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_idle.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_intr.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_jail.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_kse.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_kthread.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_ktrace.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_linker.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_lock.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_mbuf.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_mib.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_module.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_mutex.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_pmc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_proc.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_prot.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_resource.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_rmlock.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_rwlock.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_shutdown.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_sig.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_switch.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_sx.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_synch.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_sysctl.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_thr.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_thread.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_timeout.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_umtx.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/link_elf.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/link_elf_obj.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/linker_if.m#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/p1003_1b.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sched_4bsd.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sched_ule.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_bus.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_kdb.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_lock.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_param.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_pcpu.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_sleepqueue.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_smp.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_stack.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_taskqueue.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_trap.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_turnstile.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/subr_witness.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sys_generic.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sys_pipe.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sys_process.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sys_socket.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/syscalls.master#12 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sysv_msg.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sysv_sem.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/sysv_shm.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/tty_cons.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/tty_pty.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/uipc_mbuf2.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/uipc_sem.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/uipc_sockbuf.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/uipc_socket.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/uipc_syscalls.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/uipc_usrreq.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_acl.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_aio.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_bio.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_cache.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_extattr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_lookup.c#10 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_mount.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_subr.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#53 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_vnops.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/libkern/arm/ffs.S#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/Makefile#9 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/agp/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/amr/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/asmc/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/cxgb/Makefile#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/cxgb/cxgb/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/cxgb/toecore/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/cxgb/tom/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/geom/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/hptrr/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/nvram/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/nxge/Makefile#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/uchcom/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/wpi/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/wpifw/Makefile#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/modules/zfs/Makefile#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/bpf.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/bpf.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/bpf_filter.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/bridgestp.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/bridgestp.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/bsd_comp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/ethernet.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/ieee8023ad_lacp.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_atmsubr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_bridge.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_bridgevar.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_disc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_enc.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_ethersubr.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_fddisubr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_fwsubr.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_gif.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_iso88025subr.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_lagg.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_lagg.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_loop.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_ppp.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_stf.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_tun.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_var.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/if_vlan.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/pfil.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/pfil.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/route.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net/route.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_freebsd.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_freebsd.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_ht.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_ht.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_input.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_ioctl.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_ioctl.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_node.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_node.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_output.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_proto.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_proto.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_radiotap.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_scan.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_scan_ap.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_scan_sta.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/net80211/ieee80211_var.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netatalk/aarp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netatalk/ddp_input.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netatalk/ddp_output.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/netgraph.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_base.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_car.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_car.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_cisco.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_l2tp.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_pppoe.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_pppoe.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netgraph/ng_socket.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/accf_data.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/accf_http.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/if_ether.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/if_ether.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/igmp.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in_cksum.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in_gif.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in_pcb.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in_pcb.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in_proto.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/in_rmx.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_carp.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_divert.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_dummynet.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_dummynet.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_ecn.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_encap.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_fastfwd.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_fw2.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_fw_pfil.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_gre.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_icmp.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_id.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_input.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_ipsec.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_mroute.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_options.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/ip_output.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/libalias/alias_util.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/raw_ip.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp.h#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_bsd_addr.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_constants.h#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_indata.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_input.c#9 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_output.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_pcb.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_pcb.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_structs.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_timer.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_usrreq.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctp_var.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctputil.c#9 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/sctputil.h#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_debug.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_hostcache.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_input.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_offload.c#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_offload.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_output.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_reass.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_subr.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_syncache.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_syncache.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_timer.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_timewait.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_usrreq.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/tcp_var.h#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/toedev.h#1 branch .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet/udp_usrreq.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/dest6.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/frag6.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/icmp6.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_cksum.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_gif.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_gif.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_ifattach.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_ifattach.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_pcb.c#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_pcb.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_proto.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_rmx.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_src.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/in6_var.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_ecn.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_forward.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_id.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_input.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_ipsec.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_ipsec.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_mroute.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_mroute.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_output.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6_var.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/ip6protosw.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/mld6.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/mld6_var.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/nd6.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/nd6.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/nd6_nbr.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/nd6_rtr.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/pim6.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/pim6_var.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/raw_ip6.c#7 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/raw_ip6.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/route6.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/scope6.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/scope6_var.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/sctp6_usrreq.c#9 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/sctp6_var.h#6 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/tcp6_var.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/udp6_usrreq.c#8 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netinet6/udp6_var.h#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/ipsec.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/ipsec.h#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/ipsec_input.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/ipsec_output.c#5 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/keysock.c#3 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/xform.h#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netipsec/xform_ipip.c#4 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netncp/ncp_rq.c#2 integrate .. //depot/projects/soc2007/rdivacky/linux_at/sys/netncp/ncp_sock.c#3 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 14:24:23 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37D8F16A41A; Fri, 28 Dec 2007 14:24:23 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DE85316A418 for ; Fri, 28 Dec 2007 14:24:22 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BA6CF13C45D for ; Fri, 28 Dec 2007 14:24:22 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSEOMof005465 for ; Fri, 28 Dec 2007 14:24:22 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSEOMZG005462 for perforce@freebsd.org; Fri, 28 Dec 2007 14:24:22 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 28 Dec 2007 14:24:22 GMT Message-Id: <200712281424.lBSEOMZG005462@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 131878 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 14:24:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=131878 Change 131878 by rdivacky@rdivacky_witten on 2007/12/28 14:24:10 Implement the fd->vnode translation in the namei routine instead in the consumers. This is raceless and prefered method. Suggested by: jhb, kib Affected files ... .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linprocfs/linprocfs.c#5 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/compat/pecoff/imgact_pecoff.c#4 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/coda/coda_vfsops.c#3 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_vfsops.c#7 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/nullfs/null_vfsops.c#4 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/fs/unionfs/union_vfsops.c#3 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_jail.c#4 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_acl.c#3 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_extattr.c#3 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_lookup.c#11 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_mount.c#7 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#54 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/security/mac/mac_syscalls.c#4 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/sys/namei.h#7 edit .. //depot/projects/soc2007/rdivacky/linux_at/sys/ufs/ffs/ffs_snapshot.c#4 edit Differences ... ==== //depot/projects/soc2007/rdivacky/linux_at/sys/compat/linprocfs/linprocfs.c#5 (text+ko) ==== @@ -47,6 +47,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/compat/pecoff/imgact_pecoff.c#4 (text+ko) ==== @@ -45,6 +45,7 @@ #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/fs/coda/coda_vfsops.c#3 (text+ko) ==== @@ -46,6 +46,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/fs/msdosfs/msdosfs_vfsops.c#7 (text+ko) ==== @@ -52,6 +52,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/fs/nullfs/null_vfsops.c#4 (text+ko) ==== @@ -42,6 +42,7 @@ #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/fs/unionfs/union_vfsops.c#3 (text+ko) ==== @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/kern_jail.c#4 (text+ko) ==== @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_acl.c#3 (text+ko) ==== @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_extattr.c#3 (text+ko) ==== @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_lookup.c#11 (text+ko) ==== @@ -193,16 +193,43 @@ ndp->ni_rootdir = fdp->fd_rdir; ndp->ni_topdir = fdp->fd_jdir; - if (ndp->ni_startdir) - dp = ndp->ni_startdir; - else { + if (ndp->ni_dirfd != AT_FDCWD) { + struct vnode *dvp; + + error = fgetvp(td, ndp->ni_dirfd, &dvp); + /* XXX: should we check for relative path too? */ + if (error) { + FILEDESC_SUNLOCK(fdp); + uma_zfree(namei_zone, cnp->cn_pnbuf); +#ifdef DIAGNOSTIC + cnp->cn_pnbuf = NULL; + cnp->cn_nameptr = NULL; +#endif + return (error); + } + if (dvp->v_type != VDIR) { + vrele(dvp); + if (cnp->cn_pnbuf[0] != '/') { + FILEDESC_SUNLOCK(fdp); + uma_zfree(namei_zone, cnp->cn_pnbuf); +#ifdef DIAGNOSTIC + cnp->cn_pnbuf = NULL; + cnp->cn_nameptr = NULL; +#endif + return (ENOTDIR); + } else { + dvp = fdp->fd_cdir; + VREF(dvp); + } + } + dp = dvp; + } else { dp = fdp->fd_cdir; - /* we might have raced so check it */ - if ((cnp->cn_flags & ATBADF) && (cnp->cn_pnbuf[0] != '/')) - return (EBADF); } vfslocked = VFS_LOCK_GIANT(dp->v_mount); - VREF(dp); + /* the vnode for the other case was already referenced */ + if (ndp->ni_dirfd == AT_FDCWD) + VREF(dp); FILEDESC_SUNLOCK(fdp); for (;;) { /* @@ -1023,7 +1050,6 @@ char *ptr, *buf, *cp; size_t len, sz; int error; - struct vnode *dir_vn; buf = (char *) malloc(MAXPATHLEN, M_TEMP, M_WAITOK); *pathbuf = buf; @@ -1056,10 +1082,8 @@ goto keeporig; } - if (dirfd == AT_FDCWD) - dir_vn = NULL; - else { - /* + if (dirfd != AT_FDCWD) { + /* * we want the original because the "prefix" * is included in the already opened dirfd */ @@ -1067,7 +1091,6 @@ return (0); } - /* * We know that there is a / somewhere in this pathname. * Search backwards for it, to find the file's parent dir @@ -1080,13 +1103,13 @@ for (cp = &ptr[len] - 1; *cp != '/'; cp--); *cp = '\0'; - NDINIT_AT(&nd, LOOKUP, FOLLOW | MPSAFE, UIO_SYSSPACE, buf, td, dir_vn); + NDINIT(&nd, LOOKUP, FOLLOW | MPSAFE, UIO_SYSSPACE, buf, td); error = namei(&nd); *cp = '/'; if (error != 0) goto keeporig; } else { - NDINIT_AT(&nd, LOOKUP, FOLLOW | MPSAFE, UIO_SYSSPACE, buf, td, dir_vn); + NDINIT(&nd, LOOKUP, FOLLOW | MPSAFE, UIO_SYSSPACE, buf, td); error = namei(&nd); if (error != 0) ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_mount.c#7 (text+ko) ==== @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#54 (text+ko) ==== @@ -85,10 +85,8 @@ static int setfflags(struct thread *td, struct vnode *, int); static int setutimes(struct thread *td, struct vnode *, const struct timespec *, int, int); -static int kern_get_at(struct thread *td, int dirfd, struct vnode **dvpp); static int vn_access(struct vnode *vp, int user_flags, struct ucred *cred, struct thread *td); -static int kern_absolute_path(const char *path, enum uio_seg pathseg); /* * The module initialization routine for POSIX asynchronous I/O will @@ -1018,53 +1016,11 @@ return (kern_openat(td, AT_FDCWD, (const char *)path, pathseg, flags, mode)); } -static int -kern_get_at(struct thread *td, int dirfd, struct vnode **dvpp) -{ - int error; - - if (dirfd == AT_FDCWD) - *dvpp = NULL; - else { - error = fgetvp(td, dirfd, dvpp); - if (error) { - *dvpp = NULL; - return (error); - } - if ((*dvpp)->v_type != VDIR) { - vrele(*dvpp); - *dvpp = NULL; - return (ENOTDIR); - } - if (VFS_NEEDSGIANT((*dvpp)->v_mount)) - mtx_lock(&Giant); - } - - return (0); -} - -/* Check whether a path is an absolute path. */ -static int kern_absolute_path(const char *path, enum uio_seg pathseg) -{ - int error; - char buf[1]; - - if (pathseg == UIO_SYSSPACE) { - return (path[0] == '/'); - } else { - error = copyin(path, buf, 1); - if (error) - return 0; /* We want to fail. */ - return (buf[0] == '/'); - } -} - int kern_openat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, int flags, int mode) { struct nameidata nd; - struct vnode *dvp; struct proc *p = td->td_proc; struct filedesc *fdp = p->p_fd; struct file *fp; @@ -1081,12 +1037,8 @@ AUDIT_ARG(mode, mode); /* XXX: audit dirfd */ - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | AUDITVNODE1 | - MPSAFE, pathseg, path, td, dvp); + NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | AUDITVNODE1 | + MPSAFE, pathseg, path, td, fd); if ((flags & O_ACCMODE) == O_ACCMODE) { error = EINVAL; @@ -1198,21 +1150,11 @@ td->td_retval[0] = indx; return (0); out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); bad: VFS_UNLOCK_GIANT(vfslocked); fdclose(fdp, fp, indx, td); fdrop(fp, td); - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -1288,13 +1230,13 @@ kern_mknodat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, int mode, int dev) { - struct vnode *vp, *dvp = NULL; + struct vnode *vp; struct mount *mp; struct vattr vattr; int error; int whiteout = 0; struct nameidata nd; - int vfslocked, dvfslocked; + int vfslocked; AUDIT_ARG(mode, mode); AUDIT_ARG(dev, dev); @@ -1317,25 +1259,10 @@ return (error); bwillwrite(); restart: - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - bwillwrite(); - } - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) + NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | + SAVENAME | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); + if ((error = namei(&nd)) != 0) return (error); - NDINIT_AT(&nd, CREATE, ((error) ? ATBADF : 0) | LOCKPARENT | - SAVENAME | MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); - if ((error = namei(&nd)) != 0) { - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } - return (error); - } vfslocked = NDHASGIANT(&nd); vp = nd.ni_vp; if (vp != NULL) { @@ -1346,11 +1273,6 @@ vput(nd.ni_dvp); vrele(vp); VFS_UNLOCK_GIANT(vfslocked); - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } return (EEXIST); } else { VATTR_NULL(&vattr); @@ -1382,14 +1304,8 @@ NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_dvp); VFS_UNLOCK_GIANT(vfslocked); - if ((error = vn_start_write(NULL, &mp, V_XSLEEP | PCATCH)) != 0) { - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } + if ((error = vn_start_write(NULL, &mp, V_XSLEEP | PCATCH)) != 0) return (error); - } goto restart; } #ifdef MAC @@ -1408,11 +1324,6 @@ vput(nd.ni_vp); } } - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_dvp); vn_finished_write(mp); @@ -1468,31 +1379,15 @@ struct vattr vattr; int error; struct nameidata nd; - int vfslocked, dvfslocked; - struct vnode *dvp = NULL; + int vfslocked; AUDIT_ARG(mode, mode); bwillwrite(); restart: - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - bwillwrite(); - } - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) + NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | + SAVENAME | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); + if ((error = namei(&nd)) != 0) return (error); - NDINIT_AT(&nd, CREATE, ((error) ? ATBADF : 0) | LOCKPARENT | - SAVENAME | MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); - if ((error = namei(&nd)) != 0) { - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } - return (error); - } vfslocked = NDHASGIANT(&nd); if (nd.ni_vp != NULL) { NDFREE(&nd, NDF_ONLY_PNBUF); @@ -1502,25 +1397,14 @@ vput(nd.ni_dvp); vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } return (EEXIST); } if (vn_start_write(nd.ni_dvp, &mp, V_NOWAIT) != 0) { NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_dvp); VFS_UNLOCK_GIANT(vfslocked); - if ((error = vn_start_write(NULL, &mp, V_XSLEEP | PCATCH)) != 0) { - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } + if ((error = vn_start_write(NULL, &mp, V_XSLEEP | PCATCH)) != 0) return (error); - } goto restart; } VATTR_NULL(&vattr); @@ -1541,11 +1425,6 @@ #ifdef MAC out: #endif - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } vput(nd.ni_dvp); vn_finished_write(mp); VFS_UNLOCK_GIANT(vfslocked); @@ -1654,7 +1533,6 @@ enum uio_seg segflg, int follow) { struct nameidata nd; - struct vnode *pdvp = NULL, *ldvp = NULL; struct vnode *vp; struct mount *mp; int vfslocked; @@ -1662,22 +1540,8 @@ int error; bwillwrite(); - error = kern_get_at(td, fd1, &pdvp); - if (error && !kern_absolute_path(path1, segflg)) - return (error); - - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | follow | MPSAFE | - AUDITVNODE1, segflg, path1, td, pdvp); - - error = kern_get_at(td, fd2, &ldvp); - if (error && !kern_absolute_path(path2, segflg)) { - if (pdvp) { - vfslocked = VFS_NEEDSGIANT(pdvp->v_mount); - vrele(pdvp); - VFS_UNLOCK_GIANT(vfslocked); - } - return (error); - } + NDINIT_AT(&nd, LOOKUP, 0 | follow | MPSAFE | + AUDITVNODE1, segflg, path1, td, fd1); if ((error = namei(&nd)) != 0) goto out; @@ -1695,8 +1559,8 @@ VFS_UNLOCK_GIANT(vfslocked); goto out; } - NDINIT_AT(&nd, CREATE, ((error) ? ATBADF : 0) | LOCKPARENT | - SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, ldvp); + NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | + SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, fd2); if ((error = namei(&nd)) == 0) { lvfslocked = NDHASGIANT(&nd); if (nd.ni_vp != NULL) { @@ -1729,16 +1593,6 @@ VFS_UNLOCK_GIANT(vfslocked); out: - if (pdvp) { - vfslocked = VFS_NEEDSGIANT(pdvp->v_mount); - vrele(pdvp); - VFS_UNLOCK_GIANT(vfslocked); - } - if (ldvp) { - vfslocked = VFS_NEEDSGIANT(ldvp->v_mount); - vrele(ldvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -1792,8 +1646,7 @@ char *syspath; int error; struct nameidata nd; - int vfslocked, dvfslocked; - struct vnode *dvp = NULL; + int vfslocked; if (segflg == UIO_SYSSPACE) { syspath = __DECONST(char *, path1); @@ -1805,17 +1658,8 @@ AUDIT_ARG(text, syspath); bwillwrite(); restart: - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - bwillwrite(); - } - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path2, segflg)) - return (error); - NDINIT_AT(&nd, CREATE, ((error) ? ATBADF : 0) | LOCKPARENT | - SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, dvp); + NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | + SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, fd); if ((error = namei(&nd)) != 0) goto out; vfslocked = NDHASGIANT(&nd); @@ -1861,11 +1705,6 @@ vn_finished_write(mp); VFS_UNLOCK_GIANT(vfslocked); out: - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } if (segflg != UIO_SYSSPACE) uma_zfree(namei_zone, syspath); return (error); @@ -1977,32 +1816,17 @@ kern_unlinkat(struct thread *td, int fd, const char *path, enum uio_seg pathseg) { struct mount *mp; - struct vnode *vp, *dvp = NULL; + struct vnode *vp; int error; struct nameidata nd; - int vfslocked, dvfslocked; + int vfslocked; bwillwrite(); restart: - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - bwillwrite(); - } - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - NDINIT_AT(&nd, DELETE, ((error) ? ATBADF : 0) | LOCKPARENT | - LOCKLEAF | MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); - if ((error = namei(&nd)) != 0) { - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } + NDINIT_AT(&nd, DELETE, 0 | LOCKPARENT | + LOCKLEAF | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); + if ((error = namei(&nd)) != 0) return (error == EINVAL ? EPERM : error); - } vfslocked = NDHASGIANT(&nd); vp = nd.ni_vp; if (vp->v_type == VDIR) @@ -2026,14 +1850,8 @@ vput(vp); VFS_UNLOCK_GIANT(vfslocked); if ((error = vn_start_write(NULL, &mp, - V_XSLEEP | PCATCH)) != 0) { - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } + V_XSLEEP | PCATCH)) != 0) return (error); - } goto restart; } #ifdef MAC @@ -2051,11 +1869,6 @@ } NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_dvp); - if (dvp) { - dvfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(dvfslocked); - } if (vp == nd.ni_dvp) vrele(vp); else @@ -2279,19 +2092,14 @@ int flags) { struct nameidata nd; - struct vnode *dvp; struct ucred *cred, *tmpcred; struct vnode *vp; int vfslocked; int error; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); + NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | LOCKLEAF | + MPSAFE | AUDITVNODE1, pathseg, path, td, fd); - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | LOCKLEAF | - MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); - /* * Create and modify a temporary credential instead of one that * is potentially shared. This could also mess up socket @@ -2319,11 +2127,6 @@ out: td->td_ucred = cred; crfree(tmpcred); - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -2520,16 +2323,11 @@ struct stat *sbp) { struct nameidata nd; - struct vnode *dvp; struct stat sb; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | LOCKSHARED | - LOCKLEAF | AUDITVNODE1 | MPSAFE, pathseg, path, td, dvp); + NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | LOCKSHARED | + LOCKLEAF | AUDITVNODE1 | MPSAFE, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) goto out; @@ -2543,11 +2341,6 @@ if (error == 0) *sbp = sb; out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -2588,17 +2381,12 @@ struct stat *sbp) { struct nameidata nd; - struct vnode *dvp; struct vnode *vp; struct stat sb; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | NOFOLLOW | LOCKLEAF | - LOCKSHARED | MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); + NDINIT_AT(&nd, LOOKUP, 0 | NOFOLLOW | LOCKLEAF | + LOCKSHARED | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) goto out; vfslocked = NDHASGIANT(&nd); @@ -2610,11 +2398,6 @@ if (error == 0) *sbp = sb; out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -2795,18 +2578,13 @@ char *buf, enum uio_seg bufseg, int count) { struct nameidata nd; - struct vnode *dvp; struct vnode *vp; struct iovec aiov; struct uio auio; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | NOFOLLOW | LOCKLEAF | - MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); + NDINIT_AT(&nd, LOOKUP, 0 | NOFOLLOW | LOCKLEAF | + MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) goto out; @@ -2839,11 +2617,6 @@ VFS_UNLOCK_GIANT(vfslocked); td->td_retval[0] = count - auio.uio_resid; out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -3074,16 +2847,11 @@ mode_t mode) { struct nameidata nd; - struct vnode *dvp; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); + NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | MPSAFE | + AUDITVNODE1, pathseg, path, td, fd); - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | MPSAFE | - AUDITVNODE1, pathseg, path, td, dvp); - if ((error = namei(&nd)) != 0) goto out; vfslocked = NDHASGIANT(&nd); @@ -3092,11 +2860,6 @@ vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -3128,15 +2891,10 @@ int error; struct nameidata nd; int vfslocked; - struct vnode *dvp; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - AUDIT_ARG(mode, mode); NDINIT_AT(&nd, LOOKUP, NOFOLLOW | MPSAFE | AUDITVNODE1, pathseg, - path, td, dvp); + path, td, fd); if ((error = namei(&nd)) != 0) goto out; vfslocked = NDHASGIANT(&nd); @@ -3145,12 +2903,6 @@ vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } - return (error); } @@ -3278,15 +3030,10 @@ int uid, int gid) { struct nameidata nd; - struct vnode *dvp; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); - - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | MPSAFE | - AUDITVNODE1, pathseg, path, td, dvp); + NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | MPSAFE | + AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) goto out; @@ -3296,11 +3043,6 @@ vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -3339,16 +3081,11 @@ int uid, int gid) { struct nameidata nd; - struct vnode *dvp; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); + NDINIT_AT(&nd, LOOKUP, 0 | NOFOLLOW | MPSAFE | + AUDITVNODE1, pathseg, path, td, fd); - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | NOFOLLOW | MPSAFE | - AUDITVNODE1, pathseg, path, td, dvp); - if ((error = namei(&nd)) != 0) goto out; vfslocked = NDHASGIANT(&nd); @@ -3357,11 +3094,6 @@ vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -3526,17 +3258,12 @@ const struct timeval *tptr, enum uio_seg tptrseg) { struct nameidata nd; - struct vnode *dvp; struct timespec ts[2]; int error, vfslocked; - error = kern_get_at(td, fd, &dvp); - if (error && !kern_absolute_path(path, pathseg)) - return (error); + NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | MPSAFE | + AUDITVNODE1, pathseg, path, td, fd); - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | MPSAFE | - AUDITVNODE1, pathseg, path, td, dvp); - if ((error = getutimes(tptr, tptrseg, ts)) != 0) goto out; if ((error = namei(&nd)) != 0) @@ -3547,11 +3274,6 @@ vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); out: - if (dvp) { - vfslocked = VFS_NEEDSGIANT(dvp->v_mount); - vrele(dvp); - VFS_UNLOCK_GIANT(vfslocked); - } return (error); } @@ -3947,7 +3669,6 @@ const char *new, enum uio_seg pathseg) { struct nameidata fromnd, tond; - struct vnode *frdvp = NULL, *todvp = NULL; struct mount *mp = NULL; struct vnode *tvp, *fvp, *tdvp; int tvfslocked; @@ -3955,30 +3676,17 @@ int error; bwillwrite(); - error = kern_get_at(td, oldfd, &frdvp); - if (error && !kern_absolute_path(old, pathseg)) - return (error); - - error = kern_get_at(td, newfd, &todvp); - if (error && !kern_absolute_path(new, pathseg)) { - if (frdvp) { - fvfslocked = VFS_NEEDSGIANT(frdvp->v_mount); - vrele(frdvp); - VFS_UNLOCK_GIANT(fvfslocked); - } - return (error); - } #ifdef MAC - NDINIT_AT(&fromnd, DELETE, ((error) ? ATBADF : 0) | LOCKPARENT | - LOCKLEAF | SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, frdvp); + NDINIT_AT(&fromnd, DELETE, 0 | LOCKPARENT | + LOCKLEAF | SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, oldfd); #else - NDINIT_AT(&fromnd, DELETE, ((error) ? ATBADF : 0) | WANTPARENT | - SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, frdvp); + NDINIT_AT(&fromnd, DELETE, 0 | WANTPARENT | + SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, oldfd); #endif - NDINIT_AT(&tond, RENAME, ((error) ? ATBADF : 0) | LOCKPARENT | + NDINIT_AT(&tond, RENAME, 0 | LOCKPARENT | LOCKLEAF | NOCACHE | SAVESTART | MPSAFE | AUDITVNODE2, - pathseg, new, td, todvp); + pathseg, new, td, newfd); if ((error = namei(&fromnd)) != 0) goto out2; @@ -4071,16 +3779,6 @@ VFS_UNLOCK_GIANT(tvfslocked); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 14:50:50 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AED0016A421; Fri, 28 Dec 2007 14:50:50 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 43C8516A418 for ; Fri, 28 Dec 2007 14:50:50 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1E2CA13C447 for ; Fri, 28 Dec 2007 14:50:50 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSEoomD014255 for ; Fri, 28 Dec 2007 14:50:50 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSEondt014252 for perforce@freebsd.org; Fri, 28 Dec 2007 14:50:49 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 28 Dec 2007 14:50:49 GMT Message-Id: <200712281450.lBSEondt014252@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 131879 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 14:50:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=131879 Change 131879 by rdivacky@rdivacky_witten on 2007/12/28 14:49:50 Mostly cosmetic changes to shrink the diff a little. Affected files ... .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#55 edit Differences ... ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#55 (text+ko) ==== @@ -1020,7 +1020,6 @@ kern_openat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, int flags, int mode) { - struct nameidata nd; struct proc *p = td->td_proc; struct filedesc *fdp = p->p_fd; struct file *fp; @@ -1031,23 +1030,22 @@ struct file *nfp; int type, indx, error; struct flock lf; + struct nameidata nd; int vfslocked; AUDIT_ARG(fflags, flags); AUDIT_ARG(mode, mode); /* XXX: audit dirfd */ + if ((flags & O_ACCMODE) == O_ACCMODE) + return (EINVAL); NDINIT_AT(&nd, LOOKUP, 0 | FOLLOW | AUDITVNODE1 | MPSAFE, pathseg, path, td, fd); - if ((flags & O_ACCMODE) == O_ACCMODE) { - error = EINVAL; - goto out; - } flags = FFLAGS(flags); error = falloc(td, &nfp, &indx); if (error) - goto out; + return (error); /* An extra reference on `nfp' has been held for us by falloc(). */ fp = nfp; cmode = ((mode &~ fdp->fd_cmask) & ALLPERMS) &~ S_ISTXT; @@ -1062,8 +1060,7 @@ if (error == ENXIO && fp->f_ops != &badfileops) { fdrop(fp, td); td->td_retval[0] = indx; - error = 0; - goto out; + return (0); } /* @@ -1077,8 +1074,7 @@ dupfdopen(td, fdp, indx, td->td_dupfd, flags, error)) == 0) { td->td_retval[0] = indx; fdrop(fp, td); - error = 0; - goto out; + return (0); } /* * Clean up the descriptor, but only if another thread hadn't @@ -1089,7 +1085,7 @@ if (error == ERESTART) error = EINTR; - goto out; + return (error); } td->td_dupfd = 0; vfslocked = NDHASGIANT(&nd); @@ -1149,8 +1145,6 @@ fdrop(fp, td); td->td_retval[0] = indx; return (0); -out: - return (error); bad: VFS_UNLOCK_GIANT(vfslocked); fdclose(fdp, fp, indx, td); @@ -1257,8 +1251,8 @@ } if (error) return (error); +restart: bwillwrite(); -restart: NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | SAVENAME | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) @@ -1382,8 +1376,8 @@ int vfslocked; AUDIT_ARG(mode, mode); +restart: bwillwrite(); -restart: NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | SAVENAME | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) @@ -1532,9 +1526,9 @@ kern_linkat(struct thread *td, int fd1, int fd2, const char *path1, const char *path2, enum uio_seg segflg, int follow) { - struct nameidata nd; struct vnode *vp; struct mount *mp; + struct nameidata nd; int vfslocked; int lvfslocked; int error; @@ -1544,20 +1538,19 @@ AUDITVNODE1, segflg, path1, td, fd1); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); vp = nd.ni_vp; if (vp->v_type == VDIR) { vrele(vp); VFS_UNLOCK_GIANT(vfslocked); - error = EPERM; /* POSIX */ - goto out; + return (EPERM); /* POSIX */ } if ((error = vn_start_write(vp, &mp, V_WAIT | PCATCH)) != 0) { vrele(vp); VFS_UNLOCK_GIANT(vfslocked); - goto out; + return (error); } NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, fd2); @@ -1591,8 +1584,6 @@ vrele(vp); vn_finished_write(mp); VFS_UNLOCK_GIANT(vfslocked); - -out: return (error); } @@ -1656,8 +1647,8 @@ goto out; } AUDIT_ARG(text, syspath); +restart: bwillwrite(); -restart: NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | SAVENAME | MPSAFE | AUDITVNODE1, segflg, path2, td, fd); if ((error = namei(&nd)) != 0) @@ -1821,8 +1812,8 @@ struct nameidata nd; int vfslocked; +restart: bwillwrite(); -restart: NDINIT_AT(&nd, DELETE, 0 | LOCKPARENT | LOCKLEAF | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) @@ -2091,9 +2082,9 @@ kern_accessat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, int flags) { - struct nameidata nd; struct ucred *cred, *tmpcred; struct vnode *vp; + struct nameidata nd; int vfslocked; int error; @@ -2330,7 +2321,7 @@ LOCKLEAF | AUDITVNODE1 | MPSAFE, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); error = vn_stat(nd.ni_vp, &sb, td->td_ucred, NOCRED, td); NDFREE(&nd, NDF_ONLY_PNBUF); @@ -2340,7 +2331,6 @@ printf("stat(%d): %s\n", vfslocked, path); if (error == 0) *sbp = sb; -out: return (error); } @@ -2388,7 +2378,7 @@ NDINIT_AT(&nd, LOOKUP, 0 | NOFOLLOW | LOCKLEAF | LOCKSHARED | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); vp = nd.ni_vp; error = vn_stat(vp, &sb, td->td_ucred, NOCRED, td); @@ -2397,7 +2387,6 @@ VFS_UNLOCK_GIANT(vfslocked); if (error == 0) *sbp = sb; -out: return (error); } @@ -2577,17 +2566,18 @@ kern_readlinkat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, char *buf, enum uio_seg bufseg, int count) { - struct nameidata nd; struct vnode *vp; struct iovec aiov; struct uio auio; - int error, vfslocked; + int error; + struct nameidata nd; + int vfslocked; NDINIT_AT(&nd, LOOKUP, 0 | NOFOLLOW | LOCKLEAF | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); NDFREE(&nd, NDF_ONLY_PNBUF); vfslocked = NDHASGIANT(&nd); vp = nd.ni_vp; @@ -2596,7 +2586,7 @@ if (error) { vput(vp); VFS_UNLOCK_GIANT(vfslocked); - goto out; + return (error); } #endif if (vp->v_type != VLNK) @@ -2616,7 +2606,6 @@ vput(vp); VFS_UNLOCK_GIANT(vfslocked); td->td_retval[0] = count - auio.uio_resid; -out: return (error); } @@ -2853,13 +2842,12 @@ AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); error = setfmode(td, nd.ni_vp, mode); vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); -out: return (error); } @@ -2896,13 +2884,12 @@ NDINIT_AT(&nd, LOOKUP, NOFOLLOW | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); error = setfmode(td, nd.ni_vp, mode); vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); -out: return (error); } @@ -3036,13 +3023,12 @@ AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); error = setfown(td, nd.ni_vp, uid, gid); vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); -out: return (error); } @@ -3087,13 +3073,12 @@ AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); error = setfown(td, nd.ni_vp, uid, gid); vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); -out: return (error); } @@ -3265,15 +3250,14 @@ AUDITVNODE1, pathseg, path, td, fd); if ((error = getutimes(tptr, tptrseg, ts)) != 0) - goto out; + return (error); if ((error = namei(&nd)) != 0) - goto out; + return (error); vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); error = setutimes(td, nd.ni_vp, ts, 2, tptr == NULL); vrele(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); -out: return (error); } @@ -3668,15 +3652,14 @@ kern_renameat(struct thread *td, int oldfd, const char *old, int newfd, const char *new, enum uio_seg pathseg) { - struct nameidata fromnd, tond; struct mount *mp = NULL; struct vnode *tvp, *fvp, *tdvp; + struct nameidata fromnd, tond; int tvfslocked; int fvfslocked; int error; bwillwrite(); - #ifdef MAC NDINIT_AT(&fromnd, DELETE, 0 | LOCKPARENT | LOCKLEAF | SAVESTART | MPSAFE | AUDITVNODE1, pathseg, old, td, oldfd); @@ -3689,7 +3672,7 @@ pathseg, new, td, newfd); if ((error = namei(&fromnd)) != 0) - goto out2; + return (error); fvfslocked = NDHASGIANT(&fromnd); tvfslocked = 0; #ifdef MAC @@ -3777,8 +3760,6 @@ vrele(fromnd.ni_startdir); VFS_UNLOCK_GIANT(fvfslocked); VFS_UNLOCK_GIANT(tvfslocked); - -out2: /* Nothing to do, return success. */ if (error == -1) return (0); @@ -3837,8 +3818,8 @@ int vfslocked; AUDIT_ARG(mode, mode); +restart: bwillwrite(); -restart: NDINIT_AT(&nd, CREATE, 0 | LOCKPARENT | SAVENAME | MPSAFE | AUDITVNODE1, segflg, path, td, fd); nd.ni_cnd.cn_flags |= WILLBEDIR; @@ -3928,8 +3909,8 @@ struct nameidata nd; int vfslocked; +restart: bwillwrite(); -restart: NDINIT_AT(&nd, DELETE, 0 | LOCKPARENT | LOCKLEAF | MPSAFE | AUDITVNODE1, pathseg, path, td, fd); if ((error = namei(&nd)) != 0) From owner-p4-projects@FreeBSD.ORG Fri Dec 28 14:54:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 86B9316A420; Fri, 28 Dec 2007 14:54:55 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4AAC316A41B for ; Fri, 28 Dec 2007 14:54:55 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 266EF13C447 for ; Fri, 28 Dec 2007 14:54:55 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSEsstf016903 for ; Fri, 28 Dec 2007 14:54:54 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSEssoN016890 for perforce@freebsd.org; Fri, 28 Dec 2007 14:54:54 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 28 Dec 2007 14:54:54 GMT Message-Id: <200712281454.lBSEssoN016890@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 131880 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 14:54:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=131880 Change 131880 by rdivacky@rdivacky_witten on 2007/12/28 14:54:19 Two more. Affected files ... .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#56 edit Differences ... ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#56 (text+ko) ==== @@ -2370,9 +2370,9 @@ kern_lstatat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, struct stat *sbp) { - struct nameidata nd; struct vnode *vp; struct stat sb; + struct nameidata nd; int error, vfslocked; NDINIT_AT(&nd, LOOKUP, 0 | NOFOLLOW | LOCKLEAF | @@ -2750,7 +2750,6 @@ } /* - * * Common implementation code for chmod(), lchmod() and fchmod(). */ static int From owner-p4-projects@FreeBSD.ORG Fri Dec 28 17:12:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5750916A420; Fri, 28 Dec 2007 17:12:17 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1D5ED16A41A for ; Fri, 28 Dec 2007 17:12:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E7FCF13C45A for ; Fri, 28 Dec 2007 17:12:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSHCGhL080096 for ; Fri, 28 Dec 2007 17:12:16 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSHCG8b080092 for perforce@freebsd.org; Fri, 28 Dec 2007 17:12:16 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 17:12:16 GMT Message-Id: <200712281712.lBSHCG8b080092@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 131881 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 17:12:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131881 Change 131881 by hselasky@hselasky_laptop001 on 2007/12/28 17:11:49 Invalid actual length and actual frames can happen when we are cancelling an USB transfer. Only panic if this happens when the USB transfer is complete. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#95 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#95 (text+ko) ==== @@ -2674,12 +2674,14 @@ /* check actual number of frames */ if (xfer->aframes > xfer->nframes) { + if (error == 0) { panic("%s: actual number of frames, %d, is " "greater than initial number of frames, %d!\n", __FUNCTION__, xfer->aframes, xfer->nframes); - - /* XXX */ + } else { + /* just set some valid value */ xfer->aframes = xfer->nframes; + } } /* compute actual length */ xfer->actlen = 0; @@ -2699,11 +2701,14 @@ /* check actual length */ if (xfer->actlen > xfer->sumlen) { + if (error == 0) { panic("%s: actual length, %d, is greater than " "initial length, %d!\n", __FUNCTION__, xfer->actlen, xfer->sumlen); - /* XXX */ + } else { + /* just set some valid value */ xfer->actlen = xfer->sumlen; + } } PRINTFN(5, ("xfer=%p pipe=%p sts=%d alen=%d, slen=%d, afrm=%d, nfrm=%d\n", xfer, xfer->pipe, error, xfer->actlen, xfer->sumlen, From owner-p4-projects@FreeBSD.ORG Fri Dec 28 17:13:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4EC7116A420; Fri, 28 Dec 2007 17:13:18 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1419A16A41A for ; Fri, 28 Dec 2007 17:13:18 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DED5213C4E5 for ; Fri, 28 Dec 2007 17:13:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSHDHT8080560 for ; Fri, 28 Dec 2007 17:13:17 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSHDH5M080555 for perforce@freebsd.org; Fri, 28 Dec 2007 17:13:17 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 17:13:17 GMT Message-Id: <200712281713.lBSHDH5M080555@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 131882 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 17:13:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131882 Change 131882 by hselasky@hselasky_laptop001 on 2007/12/28 17:12:50 Style change by "usb_style.sh". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#96 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#96 (text+ko) ==== @@ -2674,14 +2674,14 @@ /* check actual number of frames */ if (xfer->aframes > xfer->nframes) { - if (error == 0) { - panic("%s: actual number of frames, %d, is " - "greater than initial number of frames, %d!\n", - __FUNCTION__, xfer->aframes, xfer->nframes); - } else { - /* just set some valid value */ - xfer->aframes = xfer->nframes; - } + if (error == 0) { + panic("%s: actual number of frames, %d, is " + "greater than initial number of frames, %d!\n", + __FUNCTION__, xfer->aframes, xfer->nframes); + } else { + /* just set some valid value */ + xfer->aframes = xfer->nframes; + } } /* compute actual length */ xfer->actlen = 0; @@ -2701,14 +2701,14 @@ /* check actual length */ if (xfer->actlen > xfer->sumlen) { - if (error == 0) { - panic("%s: actual length, %d, is greater than " - "initial length, %d!\n", - __FUNCTION__, xfer->actlen, xfer->sumlen); - } else { - /* just set some valid value */ - xfer->actlen = xfer->sumlen; - } + if (error == 0) { + panic("%s: actual length, %d, is greater than " + "initial length, %d!\n", + __FUNCTION__, xfer->actlen, xfer->sumlen); + } else { + /* just set some valid value */ + xfer->actlen = xfer->sumlen; + } } PRINTFN(5, ("xfer=%p pipe=%p sts=%d alen=%d, slen=%d, afrm=%d, nfrm=%d\n", xfer, xfer->pipe, error, xfer->actlen, xfer->sumlen, From owner-p4-projects@FreeBSD.ORG Fri Dec 28 19:01:10 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 594F216A468; Fri, 28 Dec 2007 19:01:10 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1F17C16A41B for ; Fri, 28 Dec 2007 19:01:10 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E807C13C442 for ; Fri, 28 Dec 2007 19:01:09 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSJ19El023531 for ; Fri, 28 Dec 2007 19:01:09 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSJ19VQ023528 for perforce@freebsd.org; Fri, 28 Dec 2007 19:01:09 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 19:01:09 GMT Message-Id: <200712281901.lBSJ19VQ023528@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 131885 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 19:01:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=131885 Change 131885 by hselasky@hselasky_laptop001 on 2007/12/28 19:00:13 Correctly initialise the "alt_next" field when receiving data using multi sub-framing. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#66 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.c#55 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.c#56 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#66 (text+ko) ==== @@ -122,6 +122,7 @@ uint8_t shortpkt; uint8_t auto_data_toggle; uint8_t setup_alt_next; + uint8_t short_frames_ok; }; void @@ -1692,12 +1693,16 @@ precompute = 0; /* setup alt next pointer, if any */ - if (td_next) { - td_alt_next = td_next; + if (temp->short_frames_ok) { if (temp->setup_alt_next) { - qtd_altnext = td_alt_next->qtd_self; + td_alt_next = td_next; + qtd_altnext = td_next->qtd_self; } + } else { + /* we use this field internally */ + td_alt_next = td_next; } + /* restore */ temp->shortpkt = shortpkt_old; temp->len = len_old; @@ -1740,6 +1745,7 @@ temp.td_next = td; temp.qtd_status = 0; temp.setup_alt_next = xfer->flags_int.short_frames_ok; + temp.short_frames_ok = xfer->flags_int.short_frames_ok; if (xfer->flags_int.control_xfr) { if (xfer->pipe->toggle_next) { ==== //depot/projects/usb/src/sys/dev/usb/ohci.c#55 (text+ko) ==== @@ -138,6 +138,7 @@ uint16_t max_frame_size; uint8_t shortpkt; uint8_t setup_alt_next; + uint8_t short_frames_ok; }; static struct ohci_hcca * @@ -1413,7 +1414,14 @@ precompute = 0; /* setup alt next pointer, if any */ - td_alt_next = td_next; + if (temp->short_frames_ok) { + if (temp->setup_alt_next) { + td_alt_next = td_next; + } + } else { + /* we use this field internally */ + td_alt_next = td_next; + } /* restore */ temp->shortpkt = shortpkt_old; @@ -1455,6 +1463,7 @@ temp.td = NULL; temp.td_next = td; temp.setup_alt_next = xfer->flags_int.short_frames_ok; + temp.short_frames_ok = xfer->flags_int.short_frames_ok; methods = xfer->pipe->methods; ==== //depot/projects/usb/src/sys/dev/usb/uhci.c#56 (text+ko) ==== @@ -147,6 +147,7 @@ uint16_t max_frame_size; uint8_t shortpkt; uint8_t setup_alt_next; + uint8_t short_frames_ok; }; extern struct usbd_bus_methods uhci_bus_methods; @@ -1664,8 +1665,15 @@ if (precompute) { precompute = 0; - /* store alt next pointer */ - td_alt_next = td_next; + /* setup alt next pointer, if any */ + if (temp->short_frames_ok) { + if (temp->setup_alt_next) { + td_alt_next = td_next; + } + } else { + /* we use this field internally */ + td_alt_next = td_next; + } /* restore */ temp->shortpkt = shortpkt_old; @@ -1703,6 +1711,7 @@ temp.td = NULL; temp.td_next = td; temp.setup_alt_next = xfer->flags_int.short_frames_ok; + temp.short_frames_ok = xfer->flags_int.short_frames_ok; uhci_mem_layout_init(&(temp.ml), xfer); From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:06:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 085CD16A46C; Fri, 28 Dec 2007 21:06:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C270D16A469 for ; Fri, 28 Dec 2007 21:06:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B6F7D13C4F8 for ; Fri, 28 Dec 2007 21:06:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSL6ONr085275 for ; Fri, 28 Dec 2007 21:06:24 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSL6OBf085272 for perforce@freebsd.org; Fri, 28 Dec 2007 21:06:24 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:06:24 GMT Message-Id: <200712282106.lBSL6OBf085272@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 131900 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:06:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131900 Change 131900 by jb@jb_freebsd1 on 2007/12/28 21:06:18 Change some #if to #ifdef so that DEBUG doesn't have to be defined. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/debug.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/debug.h#3 (text+ko) ==== @@ -49,7 +49,7 @@ #if defined(__STDC__) extern int assfail(const char *, const char *, int); #define VERIFY(EX) ((void)((EX) || assfail(#EX, __FILE__, __LINE__))) -#if DEBUG +#ifdef DEBUG #define ASSERT(EX) VERIFY(EX) #else #define ASSERT(x) ((void)0) @@ -57,7 +57,7 @@ #else /* defined(__STDC__) */ extern int assfail(); #define VERIFY(EX) ((void)((EX) || assfail("EX", __FILE__, __LINE__))) -#if DEBUG +#ifdef DEBUG #define ASSERT(EX) VERIFY(EX) #else #define ASSERT(x) ((void)0) @@ -97,7 +97,7 @@ #define VERIFY3S(x, y, z) VERIFY3_IMPL(x, y, z, int64_t) #define VERIFY3U(x, y, z) VERIFY3_IMPL(x, y, z, uint64_t) #define VERIFY3P(x, y, z) VERIFY3_IMPL(x, y, z, uintptr_t) -#if DEBUG +#ifdef DEBUG #define ASSERT3S(x, y, z) VERIFY3S(x, y, z) #define ASSERT3U(x, y, z) VERIFY3U(x, y, z) #define ASSERT3P(x, y, z) VERIFY3P(x, y, z) From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:08:27 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 779C716A419; Fri, 28 Dec 2007 21:08:27 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3D4F416A417 for ; Fri, 28 Dec 2007 21:08:27 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 328EA13C448 for ; Fri, 28 Dec 2007 21:08:27 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSL8Reg085519 for ; Fri, 28 Dec 2007 21:08:27 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSL8R7R085515 for perforce@freebsd.org; Fri, 28 Dec 2007 21:08:27 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:08:27 GMT Message-Id: <200712282108.lBSL8R7R085515@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 131902 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:08:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=131902 Change 131902 by jb@jb_freebsd1 on 2007/12/28 21:07:59 The resolution passed into cyclic_init is only used in Solaris, so we don't need to bother setting it. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/amd64/cyclic_machdep.c#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/amd64/cyclic_machdep.c#4 (text+ko) ==== @@ -54,7 +54,6 @@ NULL /* cyb_arg_t cyb_arg */ }; -static hrtime_t resolution; static void *cyclic_lock_ih; static void *cyclic_low_ih; @@ -100,9 +99,6 @@ static void cyclic_machdep_init(void) { - /* Default the resolution. */ - resolution = ticks * 1000000; - /* * Add a software interrupt handlers for low priority cyclic * events. @@ -112,8 +108,11 @@ swi_add(&clk_intr_event, "lock cyclic", cyclic_swi_lock, NULL, SWI_TQ_FAST, 0, &cyclic_lock_ih); - /* Register the cyclic backend. */ - cyclic_init(&be, resolution); + /* + * Register the cyclic backend. Note that the resolution argument + * is only used on Solaris, so we don't bother with that. + */ + cyclic_init(&be, 0); } static void From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:11:31 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4771F16A468; Fri, 28 Dec 2007 21:11:31 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0D18D16A418 for ; Fri, 28 Dec 2007 21:11:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EADC813C45A for ; Fri, 28 Dec 2007 21:11:30 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLBUL9086464 for ; Fri, 28 Dec 2007 21:11:30 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLBU8A086461 for perforce@freebsd.org; Fri, 28 Dec 2007 21:11:30 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:11:30 GMT Message-Id: <200712282111.lBSLBU8A086461@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 131903 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:11:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=131903 Change 131903 by jb@jb_freebsd1 on 2007/12/28 21:10:37 Make cpu_lock global since users of cyclic timers need to lock it before calling the API. We probably should move this to an opensolaris module which would contain the memory and atomic functions that ported OpenSolaris kernel modules need to share. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#11 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/os/cyclic.c#11 (text) ==== @@ -569,7 +569,7 @@ #include #define gethrtime_unscaled dtrace_gethrtime static cyclic_cpu_t cyclic_cpu[SMP_MAXCPU]; -static kmutex_t cpu_lock; +kmutex_t cpu_lock; #endif #ifdef CYCLIC_TRACE From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:18:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0FC6216A46C; Fri, 28 Dec 2007 21:18:39 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C99ED16A421 for ; Fri, 28 Dec 2007 21:18:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A8ED613C4FB for ; Fri, 28 Dec 2007 21:18:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLIcG8090137 for ; Fri, 28 Dec 2007 21:18:38 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLIc3l090134 for perforce@freebsd.org; Fri, 28 Dec 2007 21:18:38 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:18:38 GMT Message-Id: <200712282118.lBSLIc3l090134@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 131904 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:18:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=131904 Change 131904 by jb@jb_freebsd1 on 2007/12/28 21:17:43 Add a compatibility header for the cyclic to get the extra includes. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/cyclic_impl.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:21:42 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5CC3316A46B; Fri, 28 Dec 2007 21:21:42 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 22AA716A418 for ; Fri, 28 Dec 2007 21:21:42 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 029E313C442 for ; Fri, 28 Dec 2007 21:21:42 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLLf1b090829 for ; Fri, 28 Dec 2007 21:21:41 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLLfiJ090826 for perforce@freebsd.org; Fri, 28 Dec 2007 21:21:41 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:21:41 GMT Message-Id: <200712282121.lBSLLfiJ090826@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 131905 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:21:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=131905 Change 131905 by jb@jb_freebsd1 on 2007/12/28 21:20:53 Add a simple test kernel module for the cyclic device. At the moment is does just one simple test to add a cyclic and report that it fired. More to come later when the timer code is revved up. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/kern/cyclic_test.c#1 add .. //depot/projects/dtrace/src/sys/modules/cyclic_test/Makefile#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:25:47 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F303316A418; Fri, 28 Dec 2007 21:25:46 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B8D4016A41B for ; Fri, 28 Dec 2007 21:25:46 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B266513C4DD for ; Fri, 28 Dec 2007 21:25:46 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLPk3P093888 for ; Fri, 28 Dec 2007 21:25:46 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLPkxw093885 for perforce@freebsd.org; Fri, 28 Dec 2007 21:25:46 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:25:46 GMT Message-Id: <200712282125.lBSLPkxw093885@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 131907 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:25:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=131907 Change 131907 by jb@jb_freebsd1 on 2007/12/28 21:24:55 Hook in the cyclic_test module. We probably should have a way to optionally build test modules. They aren't required all the time and we probably shouldn't ship them in /boot/kernel. Affected files ... .. //depot/projects/dtrace/src/sys/modules/Makefile#32 edit Differences ... ==== //depot/projects/dtrace/src/sys/modules/Makefile#32 (text+ko) ==== @@ -66,6 +66,7 @@ ${_cx} \ cxgb \ ${_cyclic} \ + ${_cyclic_test} \ dc \ dcons \ dcons_crom \ @@ -506,6 +507,7 @@ _coretemp= coretemp _cpufreq= cpufreq _cyclic= cyclic +_cyclic_test= cyclic_test _digi= digi _drm= drm _ed= ed From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:38:00 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 86AE416A419; Fri, 28 Dec 2007 21:38:00 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4C50416A417 for ; Fri, 28 Dec 2007 21:38:00 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 487BF13C468 for ; Fri, 28 Dec 2007 21:38:00 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLbxbW097818 for ; Fri, 28 Dec 2007 21:37:59 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLbx7K097815 for perforce@freebsd.org; Fri, 28 Dec 2007 21:37:59 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 21:37:59 GMT Message-Id: <200712282137.lBSLbx7K097815@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 131910 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:38:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=131910 Change 131910 by hselasky@hselasky_laptop001 on 2007/12/28 21:37:27 AT91 bugfix. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#8 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#8 (text+ko) ==== @@ -648,11 +648,19 @@ bus_space_write_4(td->io_tag, td->io_hdl, td->status_reg, csr); +#if 0 + /* + * XXX The AT91 USB chip does not generate a second interrupt + * when we do double bufring, so there is no way of telling + * when the peer has actually received the data. Usually this + * is not a big problem. XXX + */ if (td->did_multi_buffer) { /* wait for the second and final interrupt */ td->did_multi_buffer = 0; goto repeat; } +#endif return (0); /* complete */ not_complete: From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:39:03 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E17E216A421; Fri, 28 Dec 2007 21:39:02 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9900C16A418 for ; Fri, 28 Dec 2007 21:39:02 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 91FB413C4CC for ; Fri, 28 Dec 2007 21:39:02 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLd1H3097917 for ; Fri, 28 Dec 2007 21:39:01 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLd15C097914 for perforce@freebsd.org; Fri, 28 Dec 2007 21:39:01 GMT (envelope-from jb@freebsd.org) Date: Fri, 28 Dec 2007 21:39:01 GMT Message-Id: <200712282139.lBSLd15C097914@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 131911 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:39:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=131911 Change 131911 by jb@jb_freebsd1 on 2007/12/28 21:38:02 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#35 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/geom/chapter.sgml#9 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/serialcomms/chapter.sgml#8 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#27 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/cutting-edge/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/geom/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/introduction/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/mirrors/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/serialcomms/chapter.sgml#3 integrate .. //depot/projects/dtrace/ports/Mk/bsd.php.mk#11 integrate .. //depot/projects/dtrace/src/bin/mv/mv.c#5 integrate .. //depot/projects/dtrace/src/games/fortune/datfiles/fortunes#28 integrate .. //depot/projects/dtrace/src/lib/libc/gen/sem_open.3#4 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/malloc.3#8 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/malloc.c#14 integrate .. //depot/projects/dtrace/src/sbin/savecore/savecore.c#6 integrate .. //depot/projects/dtrace/src/share/man/man3/tree.3#4 integrate .. //depot/projects/dtrace/src/share/man/man9/VOP_LOCK.9#4 integrate .. //depot/projects/dtrace/src/share/man/man9/lock.9#6 integrate .. //depot/projects/dtrace/src/sys/amd64/include/vmparam.h#5 integrate .. //depot/projects/dtrace/src/sys/arm/include/vmparam.h#7 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#37 integrate .. //depot/projects/dtrace/src/sys/conf/options#36 integrate .. //depot/projects/dtrace/src/sys/dev/pci/pci_user.c#8 integrate .. //depot/projects/dtrace/src/sys/fs/unionfs/union_vnops.c#11 integrate .. //depot/projects/dtrace/src/sys/i386/include/vmparam.h#5 integrate .. //depot/projects/dtrace/src/sys/ia64/include/vmparam.h#6 integrate .. //depot/projects/dtrace/src/sys/kern/kern_lock.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/kern_proc.c#15 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_bio.c#14 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_mount.c#21 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_subr.c#25 integrate .. //depot/projects/dtrace/src/sys/net/route.c#12 integrate .. //depot/projects/dtrace/src/sys/net/route.h#6 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/vmparam.h#6 integrate .. //depot/projects/dtrace/src/sys/sparc64/include/vmparam.h#5 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/pmap.c#14 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/tsb.c#6 integrate .. //depot/projects/dtrace/src/sys/sun4v/include/vmparam.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/lockmgr.h#9 integrate .. //depot/projects/dtrace/src/sys/sys/param.h#29 integrate .. //depot/projects/dtrace/src/sys/sys/tree.h#5 integrate .. //depot/projects/dtrace/src/sys/vm/vm.h#5 integrate .. //depot/projects/dtrace/src/sys/vm/vm_object.h#6 integrate .. //depot/projects/dtrace/src/tools/tools/nanobsd/nanobsd.sh#13 integrate .. //depot/projects/dtrace/src/usr.bin/fetch/fetch.1#5 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/main.c#6 integrate .. //depot/projects/dtrace/www/en/developers.sgml#25 integrate .. //depot/projects/dtrace/www/share/sgml/news.xml#30 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#35 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -2248,7 +2248,7 @@ by setting firewall_type variable to absolute path of file, which contains firewall rules without any command-line options for &man.ipfw.8; itself. A - simple examble of ruleset file can be following: + simple example of ruleset file can be following: add block in all add block out all ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/geom/chapter.sgml#9 (text+ko) ==== @@ -1,6 +1,6 @@ @@ -556,11 +556,6 @@ &prompt.root; mount /home - The following command can be used to destroy the - label: - - &prompt.root; glabel destroy home - From this point on, so long as the geom_label.ko kernel module is loaded at boot with /boot/loader.conf or the @@ -572,6 +567,11 @@ by using the flag with newfs. See the &man.newfs.8; manual page for more information. + + The following command can be used to destroy the + label: + + &prompt.root; glabel destroy home @@ -622,7 +622,7 @@ disk: &prompt.root; gjournal label /dev/da4 - gjournal load +&prompt.root; gjournal load At this point, there should be a /dev/da4 device node and a @@ -638,13 +638,13 @@ Effectively mount the device at the desired point with: - &prompt.root mount /dev/da4.journal /mnt + &prompt.root; mount /dev/da4.journal /mnt In the case of several slices, a journal will be created - for each individual slice. For instance, if ad4s1 and ad4s2 + for each individual slice. For instance, if ad4s1 and ad4s2 are both slices, then gjournal will create - ad4s1.journal and ad4s2.journal. In the case of the command + ad4s1.journal and ad4s2.journal. In the case of the command being run twice, the result will be journals. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/serialcomms/chapter.sgml#8 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -2655,7 +2655,7 @@ - Enable the options comconsole_speed + Enable the comconsole_speed option in your /boot/loader.conf file. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#27 (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.434 2007/12/26 18:46:52 raj Exp $ + $FreeBSD: doc/en_US.ISO8859-1/share/sgml/authors.ent,v 1.435 2007/12/28 06:11:21 weongyo Exp $ --> aaron@FreeBSD.org"> @@ -1054,6 +1054,8 @@ vsevolod@FreeBSD.org"> +weongyo@FreeBSD.org"> + wes@FreeBSD.org"> whiteside@acm.org"> ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/cutting-edge/chapter.sgml#3 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -740,8 +740,7 @@ Controleer /usr/share/examples/etc/make.conf - (/etc/defaults/make.conf in - &os; 4.X) en /etc/make.conf. Het + en /etc/make.conf. Het eerste bestand bevat standaard definities, waarvan de meeste uitgecommentarieerd zijn. Om hiervan gebruik te maken als het systeem opnieuw opgebouwd wordt vanuit de broncode, moeten ze @@ -752,10 +751,8 @@ daar redelijke waardes in te vullen voor een systeem. Een typische gebruiker wil waarschijnlijk de regels - CFLAGS en NO_PROFILE (of - NOPROFILE in &os; 5.X en ouder) uit + CFLAGS en NO_PROFILE uit /usr/share/examples/etc/make.conf - (/etc/defaults/make.conf in &os; 4.X) kopieren naar /etc/make.conf en het commentaar verwijderen. @@ -791,15 +788,6 @@ /var/spool/clientmqueue te creëren. - De oplossing is om /usr/src/etc/group - te controleren en de lijst met groepen te vergelijken met die - van het bij te werken systeem. Als daar groepen bestaan die - nog niet op een systeem staan, moeten deze worden gekopieerd. - Hetzelfde geldt voor het hernoemen van groepen in - /etc/group die hetzelfde GID hebben maar - een andere naam dan in - /usr/src/etc/group. - &man.mergemaster.8; kan in voorbereidende modus gedraaid worden als de optie wordt meegegeven. Dan worden alleen de bestanden vergeleken die essentieel zijn voor @@ -852,7 +840,7 @@ &prompt.root; shutdown now Als alternatief kan tijdens het opstarten de optie - worden meegegeven. Het systeem start dan + worden gekozen. Het systeem start dan in single-user modus. Op de shell prompt moet dan worden ingegeven: @@ -904,8 +892,8 @@ &prompt.root; rm -rf * - - Broncode hercompileren + + Broncode van het basis systeem hercompileren Uitvoer bewaren @@ -1003,20 +991,18 @@ &prompt.root; make doel - Het world doel is opgesplitst in - twee delen: buildworld en - installworld. Vanaf versie - 5.3 van &os; verandert world - dusdanig dat het helemaal niet meer werkt omdat het - gevaarlijk is voor de meeste gebruikers. + Waar doel een van de vele + bouw opties is. De eerste target moet echter altijd + buildworld zijn. Zoals de namen impliceren bouwt buildworld een compleet nieuwe boom onder /usr/obj en - installworld installeert deze boom - op de huidige machine. + installworld, een andere target, + installeert deze boom op de huidige machine. - Dit is erg handig om twee redenen. Als eerste biedt het + Het hebben van verschillende opties is handig om twee + redenen. Als eerste biedt het de mogelijkheid om de bouw veilig te doen met de wetenschap dat geen enkel draaiend onderdeel van een systeem geraakt wordt. De bouw is zelf ondersteunend. @@ -1048,7 +1034,7 @@ &prompt.root; make buildworld - Het is nu mogelijk om de optie mee te + Het is mogelijk om de optie mee te geven aan make, wat resulteert in meerdere processen die tegelijkertijd draaien. Dit heeft het meeste effect op machines met meerdere processoren. Echter, omdat @@ -1068,12 +1054,6 @@ Als er meerdere processoren in een systeem zitten en gebruik gemaakt wordt van een SMP kernel, probeer dan waardes tussen de 6 en 10 en bekijk hoe het systeem reageert. - - Deze mogelijkheid is nog steeds fragiel en commits in de - broncode verbreken deze mogelijkheid vaak. Als het opnieuw - bouwen van de wereld mislukt, probeer dan nogmaals te - compileren zonder deze opties alvorens een probleemrapport - aan te maken. @@ -1085,9 +1065,9 @@ doorlooptijd - De doorlooptijd wordt door veel factoren beïnvloed. - Een 500 MHz &pentium; III met 128 MB ram doet - er ongeveer 2 uur over om de &os.stable; boom te bouwen + Veel factoren bepalen de doorlooptijd van het bouwen van + een boom, maar redelijk recente machines doen er maar 1 tot + 2 uur over om de &os.stable; boom te bouwen. zonder extra trucjes. Een &os.current; boom kan wat langer duren. @@ -1119,7 +1099,7 @@ een systeemcontrole kan erna een nieuwe kernel gebouwd worden gebaseerd op een aangepast kernelinstellingenbestand. - Op moderne versies van &os; is het belangrijk om de + Op &os; is het belangrijk om de wereld opnieuw te bouwen voordat een nieuwe kernel gebouwd wordt. @@ -1194,7 +1174,7 @@
- + Bestanden bijwerken die niet bijgewerkt zijn door <command>make installworld</command> @@ -1288,9 +1268,8 @@ Zodra &man.mergemaster.8; klaar is met de systeembestanden worden er andere opties getoond. &man.mergemaster.8; kan - vragen of het wachtwoordbestand opnieuw gebouwd moet worden - en/of &man.MAKEDEV.8; gestart moet worden als er een versie van - &os; voor 5.0 draait. Als laatste wordt een optie getoond om + vragen of het wachtwoordbestand opnieuw gebouwd moet worden. + Als laatste wordt een optie getoond om alle overgebleven tijdelijke bestanden te verwijderen. @@ -1309,7 +1288,7 @@ Als &man.mergemaster.8; gebruikt wordt (zoals aangeraden), kan doorgegaan worden met het volgende onderdeel. + linkend="cutting-edge-rebooting">volgende onderdeel. De simpelste manier om met de hand bij te werken, is de bestanden in een nieuwe map installeren en daarna naar @@ -1467,108 +1446,7 @@ - - <filename>/dev</filename> bijwerken - - - DEVFS - - Als &os; 5.0 of later wordt gebruikt kan deze sectie - veilig overgeslagen worden. Deze versies gebruiken - &man.devfs.5; om apparaatnodes transparant aan te maken voor - gebruikers. - - - In veel gevallen herkent &man.mergemaster.8; dat het nodig - is om apparaatnodes bij te werken en aan te bieden en doet dat - automatisch. Hieronder wordt beschreven hoe apparaatnodes - handmatig bijgewerkt kunnen worden. - - Om veiligheidsredenen bestaat dit proces uit meerdere - stappen. - - - - Kopieer /var/tmp/root/dev/MAKEDEV - naar /dev: - - &prompt.root; cp /var/tmp/root/dev/MAKEDEV /dev - - MAKEDEV - - Als &man.mergemaster.8; is gebruikt om - /etc bij te werken is het script - MAKEDEV al aangepast. Het kan echter - geen kwaad om dit te controleren (met &man.diff.1;) en het - script indien nodig handmatig te kopieren. - - - - Maak een afdruk van de huidige - /dev. Deze snapshot moet de - permissies, eigenaarschappen, grote en kleine nummers van - ieder bestand bevatten, maar niet de timestamps. De - makkelijkste manier om dit te doen is door &man.awk.1; te - gebruiken om er informatie uit te halen: - - &prompt.root; cd /dev -&prompt.root; ls -l | awk '{print $1, $2, $3, $4, $5, $6, $NF}' > /var/tmp/dev.out - - - - Creeër alle apparaatnodes opnieuw: - - &prompt.root; sh MAKEDEV all - - - - Maak een tweede afdruk van de map, deze keer naar - /var/tmp/dev2.out. Bekijk nu door de - twee bestanden te vergelijken of er apparaatnodes niet zijn - aangemaakt. Dit hoort niet voor te komen, maar het kan - maar beter gecontroleerd zijn. - - &prompt.root; diff /var/tmp/dev.out /var/tmp/dev2.out - - Als er verschillen zijn is het waarschijnlijk dat deze - in diskslices zitten. Om deze apparaatnodes opnieuw aan te - maken kan iets als het onderstaande commando gebruikt - worden: - - &prompt.root; sh MAKEDEV sd0s1 - - De precieze afwijkingen kunnen variëren. - - - - - - <filename>/stand</filename> bijwerken - - - Deze stap is opgenomen om het proces compleet te maken. - Hij kan zonder problemen overgeslagen worden. Als - &os; 5.2 of later wordt gebruikt, wordt de map - /rescue automatisch bijgewerkt met de - nieuwste, statisch gecompileerde binaire bestanden tijdens - make installworld, waardoor het overbodig - wordt om /stand bij te werken (bestaat - helemaal niet in &os; 6.0 en later). - - - Volledigheidshalve is het misschien wenselijk de bestanden - in de map /stand bij te werken. Deze - bestanden bestaan uit harde links naar het binaire bestand - /stand/sysinstall. Dit bestand moet - statisch gelinkt zijn zodat het zonder tussenkomst van andere - bestandssystemen kan werken (in het bijzonder - /usr). - - &prompt.root; cd /usr/src/release/sysinstall -&prompt.root; make all install - - - + Herstarten Dit was het. Na een controle of alles op de juiste plaats @@ -1731,11 +1609,6 @@ &prompt.root; cd /usr/src &prompt.root; make -DNO_CLEAN all - - Gebruik in &os; 5.X en ouder - -DNOCLEAN. - - Dit maakt het werk van de vorige make buildworld niet ongedaan. ==== //depot/projects/dtrace/doc/nl_NL.ISO8859-1/books/handbook/geom/chapter.sgml#3 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -162,13 +162,13 @@ Laad de module geom_stripe: - &prompt.root; kldload geom_stripe.ko + &prompt.root; kldload geom_stripe - Zorg ervoor dat er een mountpunt beschikbaar is. Als dit + Zorg ervoor dat er een koppelpunt beschikbaar is. Als dit volume een rootpartitie wordt, gebruikt dan tijdelijk een - ander mountpunt zoals /mnt: &prompt.root; mkdir /mnt @@ -176,11 +176,10 @@ Stel de apparaatnamen voor de schijven vast die aaneen - worden geschakeld en maak het nieuwe apparaat aan. Het - volgende commando kan bijvoorbeeld gebruikt worden om twee + worden geschakeld en maak het nieuwe apparaat aan. Om twee ongebruikte, ongepartitioneerde ATA schijven aaneen te schakelen (/dev/ad2 - en /dev/ad3). + en /dev/ad3): &prompt.root; gstripe label -v st0 /dev/ad2 /dev/ad3 @@ -192,8 +191,9 @@ - Er moet een partitietabel gemaakt worden op het nieuwe - volume: + Schrijf een standaard label naar de nieuwe partitie, ook + wel bekend als een partitietabel en installeer de standaard + opstart code: &prompt.root; bsdlabel -wB /dev/stripe/st0 @@ -203,9 +203,9 @@ in de map /dev/stripe naast het apparaat st0, te weten st0a en - st0c. Nu kan er een bestandssysteem - gemaakt worden op het apparaat st0a - met newfs: + st0c. Vanaf nu kan er een + bestandssysteem op st0a worden + gezet met behulp van de newfs applicatie: &prompt.root; newfs -U /dev/stripe/st0a @@ -216,8 +216,8 @@ - Mount een nieuw gemaakte aaneengeschakelde schijf handmatig - met het volgende commando: + Om de nieuwe aaneengeschakelde schijf handmatig te koppelen + moet het volgende gedaan worden: &prompt.root; mount /dev/stripe/st0a /mnt @@ -228,7 +228,7 @@ &prompt.root; echo "/dev/stripe/st0a /mnt ufs rw 2 2" \ >> /etc/fstab - Laadt de module geom ook automatisch + Laadt de module geom_stripe ook automatisch bij het initialiseren van een systeem door de volgende regel toe te voegen aan /boot/loader.conf: @@ -263,7 +263,7 @@ keer de grootte van het RAM-geheugen is en de rest van de ruimte moet toegewezen worden aan het root bestandssysteem (/). Er zouden eigen partities - gemaakt kunnen worden voor andere mountpunten, maar hierdoor + gemaakt kunnen worden voor andere koppelpunten, maar hierdoor wordt de moeilijkheidsgraad wel tien keer hoger doordat de instellingen voor &man.bsdlabel.8; and &man.fdisk.8; handmatig gewijzigd moeten worden. @@ -312,15 +312,16 @@ andere schijf. - Gebruik &man.newfs.8; om een standaard bestandssysteem te - maken op de apparaatnode gm0s1a: + Gebruik &man.newfs.8; om een standaard UFS + bestandssysteem te maken op de apparaatnode + gm0s1a: &prompt.root; newfs -U /dev/mirror/gm0s1a Door het bovenstaande commando spuugt een systeem wat informatie uit en wat getalletjes. Dat is goed. Bekijk de - uitvoer op het voorkomen van foutmeldingen en mount het apparaat - op het mountpunt /mnt: &prompt.root; mount /dev/mirror/gm0s1a /mnt @@ -348,16 +349,16 @@ informatie. Wijzig de informatie voor de andere bestandssystemen zodat ze de - nieuwe schijf gebruiken. Zie het volgende voorbeeld: + nieuwe schijf gebruiken, zie daarvoor het volgende voorbeeld: # Device Mountpoint FStype Options Dump Pass# #/dev/da0s2b none swap sw 0 0 /dev/mirror/gm0s1a / ufs rw 1 1 - Maak nu een bestand boot.conf op zowel + Maak nu een bestand boot.config aan op zowel de huidige als de nieuwe rootpartitie. Dit bestand helpt het BIOS van een systeem - op te starten van de juiste schijf: + op te starten vanaf de juiste schijf: &prompt.root; echo "1:da(1,a)/boot/loader" > /boot.config &prompt.root; echo "1:da(1,a)/boot/loader" > /mnt/boot.config @@ -369,8 +370,9 @@ dan is een achtervang beschikbaar. - Voeg de volgende regel toe aan de nieuwe - /boot/loader.conf: + Zorg ervoor dat de geom_mirror.ko + module automatisch geladen wordt tijdens het opstarten van het + systeem: &prompt.root; echo 'geom_mirror_load="YES"' >> /mnt/boot/loader.conf @@ -418,7 +420,7 @@ Hierdoor komt een systeem in een &man.loader.8; prompt. Laad de kernelmodules handmatig: - OK? load geom_mirror.ko + OK? load geom_mirror OK? boot Als dit werkt werd de module om welke reden dan ook niet @@ -431,6 +433,261 @@ + + + GEOM Gate netwerk apparaten + + GEOM ondersteund het op afstand gebruiken van apparaten, zoals + schijven, CD-ROMs, bestanden, etc. door het gebruik van de gate + applicaties. Dit is vergelijkbaar met NFS. + + Om te beginnen moet er een exports bestand gemaakt worden. + Dit bestand specificeert wie de geexporteerde bron mag benaderen + en welke rechten er op dat moment verleend worden. Bijvoorbeeld + om de vierde slice te exporteren van de eerste + SCSI schijf, moet het volgende in + /etc/gg.exports gezet worden: + + 192.168.1.0/24 RW /dev/da0s4d + + Dit staat alle machines in het prive netwerk toe om het + bestandssysteem op da0s4d te benaderen. + + Om dit apparaat te kunnen exporteren is het van belang dat de + schijf nog niet gekoppeld is en moet de &man.ggated.8; dienst + gestart worden. + + &prompt.root; ggated + + Om vervolgens het apparaat aan een client machine te koppelen + moet het volgende gedaan worden: + + &prompt.root; ggatec create -o rw 192.168.1.1 /dev/da0s4d +ggate0 +&prompt.root; mount /dev/ggate0 /mnt + + Vanaf dit moment kan de schijf benaderd worden via het + /mnt koppelpunt. + + + Let op, dit mislukt als de schijf reeds gekoppeld is op + de server machine of als deze reeds gekoppeld is aan een andere + machine op het netwerk. + + + Zodra het apparaat niet langer nodig is, kan het veilig + ontkoppeld worden met behulp van &man.umount.8; net zoals met + elke andere schijf. + + + + Het labelen van schijven + + GEOM + + Disk Labels + + Tijdens het initialiseren van het systeem zal de &os; kernel + apparaatnodes creeeren nadat het een apparaat gevonden heeft. + Deze manier om te zoeken naar apparaten levert wat problemen op + bijvoorbeeld wanneer er een nieuwe schijf wordt toegevoegd via + USB. Het is hoogst waarschijnlijk dat een + flash apparaat een apparaatnode krijgt van + da0, waarna de originele + da0 op schuift naar + da1. Dit levert problemen op als + bestandssystemen worden gekoppeld als ze gedefinieerd zijn in + /etc/fstab, dit kan zelfs ertoe leiden dat + het systeem niet opstart. + + Een mogelijke oplossing hiervoor is om de + SCSI schijven een vaste plek te geven op + een bepaalde volgorde, zodat zodra er een nieuwe schijf geplaatst + wordt, deze een ongebruikt apparaatnode toegewezen krijgt. Maar + wat als er USB apparaten zijn die de primaire + SCSI disk vervangt? Dit gebeurd omdat + USB apparaten meestal eerder gevonden worden + dan een SCSI kaart. Een oplossing hiervoor + is om de apparaten pas toe te voegen als het systeem reeds + gestart is, een andere methode kan zijn om alleen een enkele + ATA schijf te koppelen en nooit + SCSI schijven door middel van + /etc/fstab. + + Maar er is een betere oplossing beschikbaar. Door het gebruik + van glabel kunnen beheerders en gebruikers een + label toevoegen aan een schijf, en deze labels gebruiken in + /etc/fstab. Omdat glabel + het label bewaard in de laatste sector van de schijf, kan het + label bewaard blijven ook na een reboot en kan het + bestandssysteem altijd gekoppeld worden ongeacht welke apparaatnode + toegekend is aan het apparaat. + + + Uiteraard hoeft een label niet permanent te zijn, het + glabel programma kan zowel tijdelijke als + permanente labels aanmaken. Alleen een permanent label blijft + beschikbaar ook na een reboot. Zie de &man.glabel.8; handleiding + voor meer informatie over de verschillen tussen de + labeltypes. + + + + Label types en voorbeelden + + Er zijn twee type labels: een generiek label en een + tijdelijk label. Het verschil tussen de labels zit hem in + de automatische herkennen die gekoppeld zijn aan permanente + labels en het feit dat dit type label ook beschikbaar blijft + na een herstart van het systeem. Deze labels krijgen een + speciale directory toegewezen in + /dev, welke genoemd + wordt naar het bestandssysteem type. Bijvoorbeeld + UFS2 labels worden geplaatst in de + /dev/ufs2 directory. + + Een generiek label verdwijnt na een herstart van het systeem. + Deze labels worden gecreeerd in + /dev/label en zijn + perfect voor experimenten. + + + Permanente labels kunnen op het bestandssysteem gezet worden + door gebruik van het tunefs of + newfs commando. Om een permanent label te + schrijven voor een UFS2 bestandssysteem + zonder de huidige data te vernietigen: + + &prompt.root; tunefs -L home /dev/da3 + + + Als het bestandssyteem vol is kan dit leiden tot data + corruptie; echter als het bestandssysteem vol is zou het + hoofddoel moeten zijn om oude achtergebleven bestanden weg + te halen in plaats van het toevoegen van labels. + + + Er zou nu een label moeten bestaan in + /dev/ufs2, welke + toegevoegd kan worden aan het /etc/fstab + bestand: + + /dev/ufs2/home /home ufs rw 2 2 + + + Het bestandssysteem mag niet gekoppeld zijn op het moment + dat tunefs gebruikt wordt. + + + Nu kan het bestandssysteem net als normaal worden gekoppeld: + + &prompt.root; mount /home + + Vanaf dit moment is het mogelijk om, zolang de + geom_label.ko geladen wordt tijdens het + opstarten van het systeem, of als deze is meegecompileerd door + middel van de GEOM_LABEL optie in de kernel, + de apparaatnode te wijzigen zonder ernstige gevolgen voor het + systeem. + + Bestandssystemen kunnen ook een standaard label mee krijgen + door gebruik te maken van de optie met het + newfs commando. Zie de &man.newfs.8; + handleiding voor meer informatie. + + Het volgende commando kan worden gebruikt om een label te + verwijderen: + + &prompt.root; glabel destroy home + + + + + UFS logboeken door middel van GEOM + + GEOM + + Journaling + + Met de komst van &os; 7.0 komt ook de langverwachte + optie van UFS logboeken. De implementatie + zelf is gedaan door middel van het GEOM subsysteem, welke + makkelijk geconfigureerd kan worden met behulp van de + &man.gjournal.8; applicatie. + + Wat is logboeken? Logboek mogelijkheden betekend het opslaan + van bestandssysteem transacties, zoals wijzigingen die een + complete schrijf actie zijn, voor er meta-data wordt toegevoegd + en voor de wijzigingen op schijf worden gezet. Deze transactie + log kan later opnieuw afgespeeld worden om te voorkomen dat er + bestandssysteem inconsistenties voorkomen. + + Deze methode is een extra manier om te beschermen tegen + data verlies en inconsistenties van het bestandssysteem. In + tegenstelling tot Soft Updates, welke bijhoud welke meta-data + wijzigingen er worden uitgevoerd en Snapshots, wat een beeld + bestand is van het bestandssysteem, wordt er een complete log + bewaard in de laatste sector, of zoals in sommige gevallen op + een compleet andere schijf. + + In tegenstelling tot andere logboek implementaties is de + gjournal methode blok gebaseerd en niet + geimplementeerd als onderdeel van het bestandssysteem maar als + uitbreiding op GEOM. + + Om ondersteuning in te schakelen voor + gjournal, moet de kernel over de volgende optie + beschikken, welke standaard is op 7.x systemen: + + options UFS_GJOURNAL + + Het creeeren van een logboek op een vrij en beschikbaar + bestandssysteem kan nu gedaan worden met behulp van de volgende + stappen, ervanuit gaande dat da4 de + nieuwe beschikbare SCSI schijf is: + + &prompt.root; gjournal label /dev/da4 +&prompt.root; gjournal load + + Op dit moment zou er een ad4 + apparaatnode en een ad4.journal + apparaatnode moeten zijn. Nu kan er een bestandssysteem op + gezet worden: + + &prompt.root; newfs -O 2 -J /dev/da4.journal + + Het hiervoor ingevoerde commando zal een + UFS2 bestandssysteem met logboek + ondersteuning aanmaken. + + Koppel het apparaat op een gewenst koppelpunt met: + + &prompt.root; mount /dev/da4.journal /mnt + + + In het geval dat er meerdere slices zijn, zal er een logboek + voor elke slice gecreeerd worden. Bijvoorbeeld, als + ad4s1 en ad4s2 + allebei slices zijn, dan zal gjournal een + ad4s1.journal en een + ad4s2.journal creeeren. In het geval + dat het commando twee keer gestart wordt, wordt het resultaat + journals. + + + In sommige gevallen kan het gewenst zijn om het logboek op een + andere schijf te bewaren. Voor deze gevallen moet de + logboekleverancier of het opslagapparaat gespecificeerd worden + achter het apparaat waarop de logboek functionaliteit aangebracht + moet worden. De logboek functionaliteit kan ook worden ingeschakeld + op een reeds bestaand systeem met behulp van + tunefs. Maak echter altijd een backup voor dat + dit soort dingen uitgeprobeerd worden. In de meeste gevallen zal + gjournal falen als het geen actueel logboek + kan maken, maar het voorkomt geen dataverlies als gevolg van + verkeerd gebruik van tunefs. + @@ -117,12 +117,13 @@ Krachtige mogelijkheden voor TCP/IP netwerken met ondersteuning voor - industriestandaarden als SLIP, PPP, NFS, DHCP en NIS. Dit - betekent dat een &os;-systeem makkelijk kan samenwerken - met andere systemen en dat het kan functioneren als - bedrijfsserver, waarbij het belangrijke functies als NFS - (bestandsdeling over het netwerk), email, web services, - FTP, routing en firewall-diensten kan aanbieden. + industriestandaarden als SCTP, DHCP, NFS, NIS, PPP, SLIP, + IPsec en IPv6. Dit betekent dat een &os;-systeem makkelijk + kan samenwerken met andere systemen en dat het kan + functioneren als bedrijfsserver, waarbij het belangrijke + functies als NFS (bestandsdeling over het netwerk), email, + web services, FTP, routing en firewall-diensten kan + aanbieden. Geheugenbeveiliging @@ -149,7 +150,7 @@ Het X Window systeem - (X11R6), een industriële standaard, biedt een + (X11R7), een industriële standaard, biedt een grafische gebruikersinterface (GUI) met als enige benodigdheden een VGA-kaart en een beeldscherm. @@ -334,6 +335,10 @@ [SSL]); + + IPv4 en IPv6 routering + + firewall NAT @@ -426,9 +431,7 @@ X Window werkstation: &os; is een prima keuze als goedkope X terminal oplossing, door - gebruik te maken van de gratis beschikbare X11 server of - een van de commerciële servers aangeboden door Xi Graphics. In + gebruik te maken van de gratis beschikbare X11 server. In tegenstelling tot een pure X terminal kan &os; ook applicaties lokaal draaien, wat een verlichting van de centrale server tot gevolg kan hebben. &os; heeft zelfs de @@ -749,8 +752,8 @@ De RELENG_5 tak is gemaakt in augustus 2004 en werd gevolgd door 5.3-RELEASE, die het begin van de 5-STABLE tak markeert. De meest recente &rel2.current;-RELEASE is uitgekomen - op &rel2.current.date;. Er staan nog andere versies gepland - in de RELENG_5 tak. + op &rel2.current.date;. Er staan geen nieuwe versies geplanned + voor de RELENG_5 tak. De RELENG_6 tak is gemaakt in juli 2005, de eerste release van de 6.X tak werd vrijgegeven in november 2005. De meest >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:48:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E5E9216A46E; Fri, 28 Dec 2007 21:48:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AB32E16A421 for ; Fri, 28 Dec 2007 21:48:11 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A988D13C4CE for ; Fri, 28 Dec 2007 21:48:11 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLmBON001996 for ; Fri, 28 Dec 2007 21:48:11 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLmBBi001993 for perforce@freebsd.org; Fri, 28 Dec 2007 21:48:11 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 28 Dec 2007 21:48:11 GMT Message-Id: <200712282148.lBSLmBBi001993@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 131913 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:48:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131913 Change 131913 by kmacy@pandemonium:kmacy:xen31 on 2007/12/28 21:47:40 use PTDPTDI rather than explicit value give other domain time to run before calling xs_process_msg put pdir ma in pdpt not pdir shadow ma Affected files ... .. //depot/projects/xen31/sys/i386/xen/pmap.c#8 edit .. //depot/projects/xen31/sys/i386/xen/xen_machdep.c#8 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#4 edit Differences ... ==== //depot/projects/xen31/sys/i386/xen/pmap.c#8 (text+ko) ==== @@ -1432,7 +1432,6 @@ /* Wire in kernel global address entries. */ bcopy(PTD + KPTDI, pmap->pm_pdir + KPTDI, nkpt * sizeof(pd_entry_t)); - /* XXX need to copy global address entries to page directory's L1 shadow */ #ifdef PAE #ifdef XEN pmap_qenter((vm_offset_t)pmap->pm_pdpt, &ptdpg[NPGPTD*2], 1); @@ -1440,7 +1439,7 @@ for (i = 0; i < NPGPTD; i++) { vm_paddr_t ma; - ma = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[NPGPTD + i])); + ma = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[i])); pmap->pm_pdpt[i] = ma | PG_V; } @@ -1457,15 +1456,15 @@ for (i = 0; i < NPGPTD; i++) pmap->pm_pdir[PTDPTDI + i] = xpmap_ptom(VM_PAGE_TO_PHYS(ptdpg[i + NPGPTD])) | PG_V; - - bcopy(PTD + KPTDI, pmap->pm_pdir_shadow + KPTDI, nkpt * sizeof(pd_entry_t)); + for (i = KPTDI; i < KPTDI + nkpt; i++) + pmap->pm_pdir_shadow[i] = PTD[i] & ~(PG_RW|PG_M|PG_A); for (i = 0; i < NPGPTD; i++) { vm_paddr_t *pd; pd = pmap->pm_pdir + (i * NPDEPG); - PT_SET_MA(pd, *vtopte((vm_offset_t)pd) & ~PG_RW); + PT_SET_MA(pd, *vtopte((vm_offset_t)pd) & ~(PG_M|PG_A|PG_U|PG_RW)); pd = pmap->pm_pdir_shadow + (i * NPDEPG); - PT_SET_MA(pd, *vtopte((vm_offset_t)pd) & ~PG_RW); + PT_SET_MA(pd, *vtopte((vm_offset_t)pd) & ~(PG_M|PG_A|PG_U|PG_RW)); } #ifdef PAE PT_SET_MA(pmap->pm_pdpt, *vtopte((vm_offset_t)pmap->pm_pdpt) & ~PG_RW); ==== //depot/projects/xen31/sys/i386/xen/xen_machdep.c#8 (text+ko) ==== @@ -798,13 +798,13 @@ * L2 */ for (i = 0; i < 4; i++) - IdlePTDnew[1532 + i] = pdir_shadow_ma[i] | PG_V; + IdlePTDnew[PTDPTDI + i] = pdir_shadow_ma[i] | PG_V; /* * Map IdlePTD at PTD */ for (i = 0; i < 4; i++) - pdir_shadow[1532 + i] = IdlePTDnewma[i] | PG_V; + pdir_shadow[PTDPTDI + i] = IdlePTDnewma[i] | PG_V; PT_SET_MA(IdlePDPTnew, IdlePDPTnewma | PG_V); xen_pt_unpin(IdlePDPTma); ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#4 (text+ko) ==== @@ -140,10 +140,17 @@ { struct xs_stored_msg *msg; char *body; - - if (HYPERVISOR_shared_info->evtchn_mask[curcpu] & 1) + int i; + + if (HYPERVISOR_shared_info->evtchn_mask[curcpu] & 1) { + /* + * Give other domain time to run :-/ + */ + for (i = 0; i < 1000; i++) + HYPERVISOR_sched_op(SCHEDOP_yield, NULL); xs_process_msg(); - + } + spin_lock(&xs_state.reply_lock); while (list_empty(&xs_state.reply_list)) { From owner-p4-projects@FreeBSD.ORG Fri Dec 28 21:56:20 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9BF0216A41B; Fri, 28 Dec 2007 21:56:20 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 48F3116A418 for ; Fri, 28 Dec 2007 21:56:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 47AD813C455 for ; Fri, 28 Dec 2007 21:56:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSLuKrg005585 for ; Fri, 28 Dec 2007 21:56:20 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSLuKKw005582 for perforce@freebsd.org; Fri, 28 Dec 2007 21:56:20 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 21:56:20 GMT Message-Id: <200712282156.lBSLuKKw005582@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 131914 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 21:56:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=131914 Change 131914 by hselasky@hselasky_laptop001 on 2007/12/28 21:55:58 This commit introduces multi sub-framing and zero copy to the USB CDC Ethernet driver in Host Mode and Device Mode. The implementation is backwards compatible with existing CDC implementations, only that you will not get any acceleration on the downlink unless the USB CDC Ethernet adapters supports it by sending number of frames ahead messages. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#40 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdcereg.h#15 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#40 (text+ko) ==== @@ -113,14 +113,15 @@ .type = UE_BULK, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_OUT, - .bufsize = (MCLBYTES + 4), + .frames = CDCE_ETH_FRAMES_MAX, + .bufsize = (MCLBYTES * CDCE_ETH_FRAMES_MAX), .if_index = 0, /* Host Mode */ - .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .mh.flags = {.pipe_bof = 1,.force_short_xfer = 1,.ext_buffer = 1,}, .mh.callback = &cdce_bulk_write_callback, .mh.timeout = 10000, /* 10 seconds */ /* Device Mode */ - .md.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .md.flags = {.pipe_bof = 1,.short_xfer_ok = 1,.ext_buffer = 1,.short_frames_ok = 1,}, .md.callback = &cdce_bulk_read_callback, .md.timeout = 0, /* no timeout */ }, @@ -129,14 +130,15 @@ .type = UE_BULK, .endpoint = UE_ADDR_ANY, .direction = UE_DIR_IN, - .bufsize = (MCLBYTES + 4), + .frames = CDCE_ETH_FRAMES_MAX, + .bufsize = (MCLBYTES * CDCE_ETH_FRAMES_MAX), .if_index = 0, /* Host Mode */ - .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .mh.flags = {.pipe_bof = 1,.short_xfer_ok = 1,.ext_buffer = 1,.short_frames_ok = 1,}, .mh.callback = &cdce_bulk_read_callback, .mh.timeout = 0, /* no timeout */ /* Device Mode */ - .md.flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .md.flags = {.pipe_bof = 1,.force_short_xfer = 1,.ext_buffer = 1,}, .md.callback = &cdce_bulk_write_callback, .md.timeout = 10000, /* 10 seconds */ }, @@ -442,8 +444,8 @@ ifp->if_start = cdce_start_cb; ifp->if_init = cdce_init_cb; ifp->if_baudrate = 11000000; - IFQ_SET_MAXLEN(&ifp->if_snd, IFQ_MAXLEN); - ifp->if_snd.ifq_drv_maxlen = IFQ_MAXLEN; + IFQ_SET_MAXLEN(&ifp->if_snd, CDCE_IFQ_MAXLEN); + ifp->if_snd.ifq_drv_maxlen = CDCE_IFQ_MAXLEN; IFQ_SET_READY(&ifp->if_snd); /* no IFM type for 11Mbps USB, so go with 10baseT */ @@ -456,6 +458,11 @@ /* start the interrupt transfer, if any */ mtx_lock(&(sc->sc_mtx)); +#ifdef CDCE_DO_BENCHMARK + usbd_transfer_start(sc->sc_xfer[0]); + usbd_transfer_start(sc->sc_xfer[1]); + device_printf(dev, "benchmarking enabled\n"); +#endif usbd_transfer_start(sc->sc_xfer[4]); mtx_unlock(&(sc->sc_mtx)); @@ -539,16 +546,43 @@ } static void +cdce_free_mbufs(struct mbuf **ppm) +{ + struct mbuf *m; + uint16_t x; + + /* free all previous mbufs */ + for (x = 0; x != CDCE_ETH_FRAMES_MAX; x++) { + m = ppm[x]; + if (m) { + m_freem(m); + ppm[x] = NULL; + } else { + if (x != 0) { + break; + } + } + } + return; +} + +static void cdce_bulk_write_callback(struct usbd_xfer *xfer) { struct cdce_softc *sc = xfer->priv_sc; struct ifnet *ifp = sc->sc_ifp; struct mbuf *m; uint32_t crc; + uint32_t x; + + /* free all previous mbufs */ + cdce_free_mbufs(sc->sc_tx_mbufs); switch (USBD_GET_STATE(xfer)) { case USBD_ST_TRANSFERRED: - DPRINTF(sc, 10, "transfer complete\n"); + DPRINTF(sc, 10, "transfer complete: " + "%u bytes in %u frames\n", xfer->actlen, + xfer->aframes); ifp->if_opackets++; @@ -559,36 +593,100 @@ usbd_transfer_start(sc->sc_xfer[2]); goto done; } + +#ifdef CDCE_MF_ENABLE + x = 1; +#else + x = 0; +#endif + while (x != CDCE_ETH_FRAMES_MAX) { + IFQ_DRV_DEQUEUE(&(ifp->if_snd), m); if (m == NULL) { - goto done; +#ifdef CDCE_DO_BENCHMARK + /* send dummy ethernet frames */ + usbd_set_frame_data(xfer, &(sc->sc_rx_dump), x); + xfer->frlengths[x] = (sizeof(sc->sc_rx_dump) / 2) + + (x & 63) - 1; + x++; + continue; +#else + break; +#endif + } + + if (m->m_pkthdr.len < sizeof(struct ether_header)) { + /* frames of this size have special meaning - filter away */ + m_freem(m); + ifp->if_oerrors++; + continue; + } + + if (sc->sc_flags & CDCE_FLAG_ZAURUS) { + /* Zaurus wants a 32-bit CRC appended to every frame */ + + crc = cdce_m_crc32(m, 0, m->m_pkthdr.len); + crc = htole32(crc); + + if (!m_append(m, 4, (void *)&crc)) { + m_freem(m); + ifp->if_oerrors++; + continue; + } + + m->m_pkthdr.len += 4; } + if (m->m_pkthdr.len > MCLBYTES) { m->m_pkthdr.len = MCLBYTES; } - xfer->frlengths[0] = m->m_pkthdr.len; - usbd_m_copy_in(xfer->frbuffers + 0, 0, - m, 0, m->m_pkthdr.len); + m = m_pullup(m, m->m_pkthdr.len); + if (m == NULL) { + ifp->if_oerrors++; + continue; + } - if (sc->sc_flags & CDCE_FLAG_ZAURUS) { - /* Zaurus wants a 32-bit CRC appended to every frame */ + sc->sc_tx_mbufs[x] = m; - crc = htole32(cdce_m_crc32(m, 0, m->m_pkthdr.len)); + xfer->frlengths[x] = m->m_len; - usbd_copy_in(xfer->frbuffers + 0, - m->m_pkthdr.len, &crc, 4); + usbd_set_frame_data(xfer, m->m_data, x); - xfer->frlengths[0] += 4; - } /* * if there's a BPF listener, bounce a copy * of this frame to him: */ BPF_MTAP(ifp, m); - m_freem(m); + x++; + } + + xfer->nframes = x; + +#ifdef CDCE_MF_ENABLE + if (x == 1) { + /* nothing to do */ + goto done; + } + /* fill out the Multi Frame header */ + usbd_set_frame_data(xfer, &(sc->sc_tx_eth.hdr), 0); + xfer->frlengths[0] = sizeof(sc->sc_tx_eth.hdr); + sc->sc_tx_eth.hdr.bSig0[0] = 'M'; + sc->sc_tx_eth.hdr.bSig0[1] = 'F'; + x--; + /* tell the peer how many frames are coming */ + x += ifp->if_snd.ifq_drv_len; + USETDW(sc->sc_tx_eth.hdr.dwFramesAhead, x); + x = ~x; + USETDW(sc->sc_tx_eth.hdr.dwFramesAheadInverse, x); +#else + if (x == 0) { + /* nothing to do */ + goto done; + } +#endif usbd_start_hardware(xfer); @@ -753,63 +851,172 @@ static void cdce_bulk_read_callback(struct usbd_xfer *xfer) { + struct cdce_mq mq = { NULL, NULL, 0 }; struct cdce_softc *sc = xfer->priv_sc; struct ifnet *ifp = sc->sc_ifp; - struct mbuf *m = NULL; + struct mbuf *m; + usb_cdc_mf_eth_header_t *mf_hdr; + uint32_t x; + uint32_t ta; + uint32_t tb; switch (USBD_GET_STATE(xfer)) { case USBD_ST_TRANSFERRED: - DPRINTF(sc, 0, "received %u bytes\n", xfer->actlen); + DPRINTF(sc, 0, "received %u bytes in %u frames\n", + xfer->actlen, xfer->aframes); + + for (x = 0; x != xfer->nframes; x++) { if (sc->sc_flags & CDCE_FLAG_ZAURUS) { /* Strip off CRC added by Zaurus */ - if (xfer->actlen >= 4) { - xfer->actlen -= 4; + if (xfer->frlengths[x] >= MAX(4,14)) { + xfer->frlengths[x] -= 4; } } - if (xfer->actlen < sizeof(struct ether_header)) { - ifp->if_ierrors++; - goto tr_setup; - } - m = usbd_ether_get_mbuf(); + m = sc->sc_rx_mbufs[x]; + sc->sc_rx_mbufs[x] = NULL; if (m == NULL) { - ifp->if_ierrors++; - goto tr_setup; + continue; } - xfer->actlen = min(xfer->actlen, m->m_len); + + if (xfer->frlengths[x] < sizeof(struct ether_header)) { + +#ifdef CDCE_MF_ENABLE + if (xfer->frlengths[x] >= CDC_MF_ETH_HEADER_SIZE) { + + mf_hdr = (void *)(m->m_data); + + /* decode and verify multi frame header */ + + ta = UGETDW(mf_hdr->dwFramesAhead); + tb = UGETDW(mf_hdr->dwFramesAheadInverse); + tb ^= ta; + + DPRINTF(sc, 0, "ta = 0x%08x, tb = 0x%08x\n", ta, tb); + + /* check if we have a multi frame header */ + if ((tb == 0xFFFFFFFF) && + (mf_hdr->bSig0[0] == 'M') && + (mf_hdr->bSig0[1] == 'F')) { + + DPRINTF(sc, 0, "frames ahead " + "= %u\n", ta); + + sc->sc_rx_frames_ahead = ta; + } + } +#endif - usbd_copy_out(xfer->frbuffers + 0, 0, m->m_data, xfer->actlen); + m_freem(m); + continue; + } else { + /* we received a frame - decrement frames ahead */ + if (sc->sc_rx_frames_ahead) { + sc->sc_rx_frames_ahead--; + } + } ifp->if_ipackets++; m->m_pkthdr.rcvif = ifp; - m->m_pkthdr.len = m->m_len = xfer->actlen; + m->m_pkthdr.len = m->m_len = xfer->frlengths[x]; + + /* enqueue */ + _IF_ENQUEUE(&(mq), m); + } case USBD_ST_SETUP: tr_setup: - if (xfer->flags.stall_pipe && - (xfer->flags_int.usb_mode == USB_MODE_HOST)) { + if (xfer->flags.stall_pipe) { + + /* reset number of frames ahead */ + sc->sc_rx_frames_ahead = 0; + + if (xfer->flags_int.usb_mode == USB_MODE_HOST) { usbd_transfer_start(sc->sc_xfer[3]); - } else { - xfer->frlengths[0] = xfer->max_data_length; + /* + * In case the "stall_pipe" flag was set + * while transferring data, we need to go + * to the "tr_if_input" afterwards! + */ + goto tr_if_input; + } + } + + /* setup a new USB transfer chain */ + + ta = sc->sc_rx_frames_ahead; + + if (ta == 0) { + /* always receive at least one frame */ + ta = 1; + } + + if (ta > CDCE_ETH_FRAMES_MAX) { + ta = CDCE_ETH_FRAMES_MAX; + } + + for (x = 0; x != ta; x++) { + m = usbd_ether_get_mbuf(); + if (m == NULL) { + break; + } + + usbd_set_frame_data(xfer, m->m_data, x); + + xfer->frlengths[x] = m->m_len; + sc->sc_rx_mbufs[x] = m; + } + + for ( ; x != ta; x++) { + + /* + * We are out of mbufs and need to dump all + * the received data ! + */ + usbd_set_frame_data(xfer, &(sc->sc_rx_dump), x); + xfer->frlengths[x] = sizeof(sc->sc_rx_dump); + } + xfer->nframes = ta; usbd_start_hardware(xfer); - } /* * At the end of a USB callback it is always safe to unlock * the private mutex of a device! That is why we do the * "if_input" here, and not some lines up! + * + * By safe we mean that if "usbd_transfer_stop()" is + * called, we will get a callback having the error + * code USBD_CANCELLED. */ - if (m) { +tr_if_input: + if (mq.ifq_head) { + mtx_unlock(&(sc->sc_mtx)); - (ifp->if_input) (ifp, m); + + while (1) { + + _IF_DEQUEUE(&(mq), m); + + if (m == NULL) + break; + + (ifp->if_input) (ifp, m); + } + mtx_lock(&(sc->sc_mtx)); } return; default: /* Error */ + /* free all received data, if any */ + cdce_free_mbufs(sc->sc_rx_mbufs); + + /* reset number of frames ahead */ + sc->sc_rx_frames_ahead = 0; + if (xfer->error != USBD_CANCELLED) { /* try to clear stall first */ xfer->flags.stall_pipe = 1; ==== //depot/projects/usb/src/sys/dev/usb/if_cdcereg.h#15 (text+ko) ==== @@ -35,26 +35,48 @@ #ifndef _USB_IF_CDCEREG_H_ #define _USB_IF_CDCEREG_H_ -#define CDCE_N_TRANSFER 6 +#define CDCE_N_TRANSFER 6 /* units */ #define CDCE_IND_SIZE_MAX 32 /* bytes */ +#define CDCE_ETH_FRAMES_MAX 64 /* USB ethernet acceleration factor */ +#define CDCE_IFQ_MAXLEN MAX((2*CDCE_ETH_FRAMES_MAX), IFQ_MAXLEN) +#define CDCE_MF_ENABLE /* enable multi framing */ struct cdce_type { struct usb_devno cdce_dev; uint16_t cdce_flags; }; +struct cdce_eth_hdr { /* multiframe header */ + usb_cdc_mf_eth_header_t hdr; +} __aligned(USB_HOST_ALIGN); + +struct cdce_eth_dump { /* dump buffer */ + uint8_t data[MCLBYTES]; +} __aligned(USB_HOST_ALIGN); + +struct cdce_mq { /* mini-queue */ + struct mbuf *ifq_head; + struct mbuf *ifq_tail; + uint16_t ifq_len; +}; + struct cdce_softc { void *sc_evilhack; /* XXX this pointer must be first */ struct ifmedia sc_ifmedia; struct mtx sc_mtx; + struct cdce_eth_hdr sc_tx_eth; + struct cdce_eth_dump sc_rx_dump; struct ifnet *sc_ifp; struct usbd_xfer *sc_xfer[CDCE_N_TRANSFER]; struct usbd_device *sc_udev; device_t sc_dev; + struct mbuf *sc_rx_mbufs[CDCE_ETH_FRAMES_MAX]; + struct mbuf *sc_tx_mbufs[CDCE_ETH_FRAMES_MAX]; uint32_t sc_unit; + uint32_t sc_rx_frames_ahead; uint16_t sc_flags; #define CDCE_FLAG_ZAURUS 0x0001 From owner-p4-projects@FreeBSD.ORG Fri Dec 28 22:01:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0ED4816A477; Fri, 28 Dec 2007 22:01:26 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C884316A475 for ; Fri, 28 Dec 2007 22:01:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C8C2B13C4CC for ; Fri, 28 Dec 2007 22:01:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSM1POB006381 for ; Fri, 28 Dec 2007 22:01:25 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSM1PxI006378 for perforce@freebsd.org; Fri, 28 Dec 2007 22:01:25 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 22:01:25 GMT Message-Id: <200712282201.lBSM1PxI006378@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 131915 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 22:01:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131915 Change 131915 by hselasky@hselasky_laptop001 on 2007/12/28 22:00:38 Style change by "usb_style.sh" and some manual editing. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#41 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#41 (text+ko) ==== @@ -340,21 +340,25 @@ /* * - * The Data Class interface of a networking device shall have a minimum - * of two interface settings. The first setting (the default interface - * setting) includes no endpoints and therefore no networking traffic is - * exchanged whenever the default interface setting is selected. One or - * more additional interface settings are used for normal operation, and - * therefore each includes a pair of endpoints (one IN, and one OUT) to - * exchange network traffic. Select an alternate interface setting to - * initialize the network aspects of the device and to enable the - * exchange of network traffic. + * + * The Data Class interface of a networking device shall have + * a minimum of two interface settings. The first setting + * (the default interface setting) includes no endpoints and + * therefore no networking traffic is exchanged whenever the + * default interface setting is selected. One or more + * additional interface settings are used for normal + * operation, and therefore each includes a pair of endpoints + * (one IN, and one OUT) to exchange network traffic. Select + * an alternate interface setting to initialize the network + * aspects of the device and to enable the exchange of + * network traffic. + * * * - * Some devices, most notably cable modems, include interface settings - * that have no IN or OUT endpoint, therefore loop through the list of all - * available interface settings looking for one with both IN and OUT - * endpoints. + * Some devices, most notably cable modems, include interface + * settings that have no IN or OUT endpoint, therefore loop + * through the list of all available interface settings + * looking for one with both IN and OUT endpoints. */ alloc_transfers: @@ -581,7 +585,7 @@ switch (USBD_GET_STATE(xfer)) { case USBD_ST_TRANSFERRED: DPRINTF(sc, 10, "transfer complete: " - "%u bytes in %u frames\n", xfer->actlen, + "%u bytes in %u frames\n", xfer->actlen, xfer->aframes); ifp->if_opackets++; @@ -593,99 +597,99 @@ usbd_transfer_start(sc->sc_xfer[2]); goto done; } - #ifdef CDCE_MF_ENABLE - x = 1; + x = 1; #else - x = 0; + x = 0; #endif while (x != CDCE_ETH_FRAMES_MAX) { - IFQ_DRV_DEQUEUE(&(ifp->if_snd), m); + IFQ_DRV_DEQUEUE(&(ifp->if_snd), m); - if (m == NULL) { + if (m == NULL) { #ifdef CDCE_DO_BENCHMARK - /* send dummy ethernet frames */ - usbd_set_frame_data(xfer, &(sc->sc_rx_dump), x); - xfer->frlengths[x] = (sizeof(sc->sc_rx_dump) / 2) + - (x & 63) - 1; - x++; - continue; + /* send dummy ethernet frames */ + usbd_set_frame_data(xfer, + &(sc->sc_rx_dump), x); + xfer->frlengths[x] = + (sizeof(sc->sc_rx_dump) / 2) + (x & 63) - 1; + x++; + continue; #else - break; + break; #endif - } + } + if (m->m_pkthdr.len < sizeof(struct ether_header)) { + /* + * frames of this size have special meaning + * - filter away + */ + m_freem(m); + ifp->if_oerrors++; + continue; + } + if (sc->sc_flags & CDCE_FLAG_ZAURUS) { + /* + * Zaurus wants a 32-bit CRC appended to + * every frame + */ - if (m->m_pkthdr.len < sizeof(struct ether_header)) { - /* frames of this size have special meaning - filter away */ - m_freem(m); - ifp->if_oerrors++; - continue; - } + crc = cdce_m_crc32(m, 0, m->m_pkthdr.len); + crc = htole32(crc); - if (sc->sc_flags & CDCE_FLAG_ZAURUS) { - /* Zaurus wants a 32-bit CRC appended to every frame */ - - crc = cdce_m_crc32(m, 0, m->m_pkthdr.len); - crc = htole32(crc); - - if (!m_append(m, 4, (void *)&crc)) { - m_freem(m); - ifp->if_oerrors++; - continue; + if (!m_append(m, 4, (void *)&crc)) { + m_freem(m); + ifp->if_oerrors++; + continue; + } + m->m_pkthdr.len += 4; + } + if (m->m_pkthdr.len > MCLBYTES) { + m->m_pkthdr.len = MCLBYTES; + } + m = m_pullup(m, m->m_pkthdr.len); + if (m == NULL) { + ifp->if_oerrors++; + continue; } + sc->sc_tx_mbufs[x] = m; - m->m_pkthdr.len += 4; - } + xfer->frlengths[x] = m->m_len; - if (m->m_pkthdr.len > MCLBYTES) { - m->m_pkthdr.len = MCLBYTES; - } + usbd_set_frame_data(xfer, m->m_data, x); - m = m_pullup(m, m->m_pkthdr.len); - if (m == NULL) { - ifp->if_oerrors++; - continue; - } + /* + * if there's a BPF listener, bounce a copy + * of this frame to him: + */ + BPF_MTAP(ifp, m); - sc->sc_tx_mbufs[x] = m; - - xfer->frlengths[x] = m->m_len; - - usbd_set_frame_data(xfer, m->m_data, x); - - /* - * if there's a BPF listener, bounce a copy - * of this frame to him: - */ - BPF_MTAP(ifp, m); - - x++; + x++; } xfer->nframes = x; #ifdef CDCE_MF_ENABLE - if (x == 1) { - /* nothing to do */ - goto done; - } - /* fill out the Multi Frame header */ - usbd_set_frame_data(xfer, &(sc->sc_tx_eth.hdr), 0); - xfer->frlengths[0] = sizeof(sc->sc_tx_eth.hdr); - sc->sc_tx_eth.hdr.bSig0[0] = 'M'; - sc->sc_tx_eth.hdr.bSig0[1] = 'F'; - x--; - /* tell the peer how many frames are coming */ - x += ifp->if_snd.ifq_drv_len; - USETDW(sc->sc_tx_eth.hdr.dwFramesAhead, x); - x = ~x; - USETDW(sc->sc_tx_eth.hdr.dwFramesAheadInverse, x); + if (x == 1) { + /* nothing to do */ + goto done; + } + /* fill out the Multi Frame header */ + usbd_set_frame_data(xfer, &(sc->sc_tx_eth.hdr), 0); + xfer->frlengths[0] = sizeof(sc->sc_tx_eth.hdr); + sc->sc_tx_eth.hdr.bSig0[0] = 'M'; + sc->sc_tx_eth.hdr.bSig0[1] = 'F'; + x--; + /* tell the peer how many frames are coming */ + x += ifp->if_snd.ifq_drv_len; + USETDW(sc->sc_tx_eth.hdr.dwFramesAhead, x); + x = ~x; + USETDW(sc->sc_tx_eth.hdr.dwFramesAheadInverse, x); #else - if (x == 0) { - /* nothing to do */ - goto done; - } + if (x == 0) { + /* nothing to do */ + goto done; + } #endif usbd_start_hardware(xfer); @@ -792,7 +796,8 @@ case SIOCSIFMEDIA: case SIOCGIFMEDIA: - error = ifmedia_ioctl(ifp, (void *)data, &sc->sc_ifmedia, command); + error = ifmedia_ioctl(ifp, (void *)data, + &sc->sc_ifmedia, command); break; default: @@ -851,7 +856,7 @@ static void cdce_bulk_read_callback(struct usbd_xfer *xfer) { - struct cdce_mq mq = { NULL, NULL, 0 }; + struct cdce_mq mq = {NULL, NULL, 0}; struct cdce_softc *sc = xfer->priv_sc; struct ifnet *ifp = sc->sc_ifp; struct mbuf *m; @@ -864,67 +869,76 @@ case USBD_ST_TRANSFERRED: DPRINTF(sc, 0, "received %u bytes in %u frames\n", - xfer->actlen, xfer->aframes); + xfer->actlen, xfer->aframes); for (x = 0; x != xfer->nframes; x++) { - if (sc->sc_flags & CDCE_FLAG_ZAURUS) { + if (sc->sc_flags & CDCE_FLAG_ZAURUS) { - /* Strip off CRC added by Zaurus */ - if (xfer->frlengths[x] >= MAX(4,14)) { - xfer->frlengths[x] -= 4; + /* Strip off CRC added by Zaurus */ + if (xfer->frlengths[x] >= MAX(4, 14)) { + xfer->frlengths[x] -= 4; + } + } + m = sc->sc_rx_mbufs[x]; + sc->sc_rx_mbufs[x] = NULL; + if (m == NULL) { + continue; } - } - - m = sc->sc_rx_mbufs[x]; - sc->sc_rx_mbufs[x] = NULL; - if (m == NULL) { - continue; - } + if (xfer->frlengths[x] < sizeof(struct ether_header)) { - if (xfer->frlengths[x] < sizeof(struct ether_header)) { - #ifdef CDCE_MF_ENABLE - if (xfer->frlengths[x] >= CDC_MF_ETH_HEADER_SIZE) { + if (xfer->frlengths[x] >= + CDC_MF_ETH_HEADER_SIZE) { - mf_hdr = (void *)(m->m_data); + mf_hdr = (void *)(m->m_data); - /* decode and verify multi frame header */ + /* + * decode and verify the multi + * frame header + */ - ta = UGETDW(mf_hdr->dwFramesAhead); - tb = UGETDW(mf_hdr->dwFramesAheadInverse); - tb ^= ta; + ta = UGETDW(mf_hdr->dwFramesAhead); + tb = UGETDW(mf_hdr->dwFramesAheadInverse); + tb ^= ta; - DPRINTF(sc, 0, "ta = 0x%08x, tb = 0x%08x\n", ta, tb); + DPRINTF(sc, 0, "ta = 0x%08x, " + "tb = 0x%08x\n", ta, tb); - /* check if we have a multi frame header */ - if ((tb == 0xFFFFFFFF) && - (mf_hdr->bSig0[0] == 'M') && - (mf_hdr->bSig0[1] == 'F')) { + /* + * check if we have a multi frame + * header + */ + if ((tb == 0xFFFFFFFF) && + (mf_hdr->bSig0[0] == 'M') && + (mf_hdr->bSig0[1] == 'F')) { - DPRINTF(sc, 0, "frames ahead " - "= %u\n", ta); + DPRINTF(sc, 0, "frames ahead " + "= %u\n", ta); - sc->sc_rx_frames_ahead = ta; - } - } + sc->sc_rx_frames_ahead = ta; + } + } #endif - m_freem(m); - continue; - } else { - /* we received a frame - decrement frames ahead */ - if (sc->sc_rx_frames_ahead) { - sc->sc_rx_frames_ahead--; - } - } + m_freem(m); + continue; + } else { + /* + * we received a frame - decrement frames + * ahead + */ + if (sc->sc_rx_frames_ahead) { + sc->sc_rx_frames_ahead--; + } + } - ifp->if_ipackets++; - m->m_pkthdr.rcvif = ifp; - m->m_pkthdr.len = m->m_len = xfer->frlengths[x]; + ifp->if_ipackets++; + m->m_pkthdr.rcvif = ifp; + m->m_pkthdr.len = m->m_len = xfer->frlengths[x]; - /* enqueue */ - _IF_ENQUEUE(&(mq), m); + /* enqueue */ + _IF_ENQUEUE(&(mq), m); } case USBD_ST_SETUP: @@ -934,58 +948,54 @@ /* reset number of frames ahead */ sc->sc_rx_frames_ahead = 0; - if (xfer->flags_int.usb_mode == USB_MODE_HOST) { - usbd_transfer_start(sc->sc_xfer[3]); - /* - * In case the "stall_pipe" flag was set - * while transferring data, we need to go - * to the "tr_if_input" afterwards! - */ - goto tr_if_input; - } - } - + if (xfer->flags_int.usb_mode == USB_MODE_HOST) { + usbd_transfer_start(sc->sc_xfer[3]); + /* + * In case the "stall_pipe" flag was set + * while transferring data, we need to go to + * the "tr_if_input" afterwards! + */ + goto tr_if_input; + } + } /* setup a new USB transfer chain */ - ta = sc->sc_rx_frames_ahead; + ta = sc->sc_rx_frames_ahead; - if (ta == 0) { - /* always receive at least one frame */ - ta = 1; - } - - if (ta > CDCE_ETH_FRAMES_MAX) { - ta = CDCE_ETH_FRAMES_MAX; - } - - for (x = 0; x != ta; x++) { + if (ta == 0) { + /* always receive at least one frame */ + ta = 1; + } + if (ta > CDCE_ETH_FRAMES_MAX) { + ta = CDCE_ETH_FRAMES_MAX; + } + for (x = 0; x != ta; x++) { m = usbd_ether_get_mbuf(); if (m == NULL) { - break; + break; } - usbd_set_frame_data(xfer, m->m_data, x); xfer->frlengths[x] = m->m_len; sc->sc_rx_mbufs[x] = m; - } + } - for ( ; x != ta; x++) { + for (; x != ta; x++) { - /* - * We are out of mbufs and need to dump all - * the received data ! + /* + * We are out of mbufs and need to dump all the + * received data ! */ usbd_set_frame_data(xfer, &(sc->sc_rx_dump), x); xfer->frlengths[x] = sizeof(sc->sc_rx_dump); - } - xfer->nframes = ta; - usbd_start_hardware(xfer); + } + xfer->nframes = ta; + usbd_start_hardware(xfer); /* - * At the end of a USB callback it is always safe to unlock - * the private mutex of a device! That is why we do the - * "if_input" here, and not some lines up! + * At the end of a USB callback it is always safe to + * unlock the private mutex of a device! That is why + * we do the "if_input" here, and not some lines up! * * By safe we mean that if "usbd_transfer_stop()" is * called, we will get a callback having the error From owner-p4-projects@FreeBSD.ORG Fri Dec 28 22:18:44 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4ADCA16A41B; Fri, 28 Dec 2007 22:18:44 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1027E16A419 for ; Fri, 28 Dec 2007 22:18:44 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 15F3613C455 for ; Fri, 28 Dec 2007 22:18:44 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSMIhta014599 for ; Fri, 28 Dec 2007 22:18:43 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSMIh08014596 for perforce@freebsd.org; Fri, 28 Dec 2007 22:18:43 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 28 Dec 2007 22:18:43 GMT Message-Id: <200712282218.lBSMIh08014596@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 131919 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 22:18:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=131919 Change 131919 by kmacy@pandemonium:kmacy:xen31 on 2007/12/28 22:17:54 add xen drivers from xen3 branch Affected files ... .. //depot/projects/xen31/sys/dev/xen/balloon/balloon.c#1 add .. //depot/projects/xen31/sys/dev/xen/blkback/blkback.c#1 add .. //depot/projects/xen31/sys/dev/xen/blkfront/blkfront.c#1 add .. //depot/projects/xen31/sys/dev/xen/blkfront/block.h#1 add .. //depot/projects/xen31/sys/dev/xen/console/console.c#1 add .. //depot/projects/xen31/sys/dev/xen/console/xencons_ring.c#1 add .. //depot/projects/xen31/sys/dev/xen/console/xencons_ring.h#1 add .. //depot/projects/xen31/sys/dev/xen/evtchn/evtchn_dev.c#1 add .. //depot/projects/xen31/sys/dev/xen/netback/netback.c#1 add .. //depot/projects/xen31/sys/dev/xen/netfront/netfront.c#1 add .. //depot/projects/xen31/sys/dev/xen/pcifront/pcifront.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Dec 28 22:50:18 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BAD216A420; Fri, 28 Dec 2007 22:50:18 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C268916A41B for ; Fri, 28 Dec 2007 22:50:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CBC0413C467 for ; Fri, 28 Dec 2007 22:50:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSMoH7I026909 for ; Fri, 28 Dec 2007 22:50:17 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSMoHt6026905 for perforce@freebsd.org; Fri, 28 Dec 2007 22:50:17 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 22:50:17 GMT Message-Id: <200712282250.lBSMoHt6026905@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 131924 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 22:50:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=131924 Change 131924 by hselasky@hselasky_laptop001 on 2007/12/28 22:49:51 USB CDC Ethernet template related: o Reduce power usage so that we don't exceed the HUB's power budget. o Update some strings. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template_cdce.c#3 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_template_cdce.c#3 (text+ko) ==== @@ -58,19 +58,21 @@ #define STRING_ETH_CONTROL \ 'U', 0, 'S', 0, 'B', 0, ' ', 0, \ - 'C', 0, 'D', 0, 'C', 0, ' ', 0, \ - 'C', 0, 'o', 0, 'm', 0, 'm', 0, \ - ' ', 0, 'i', 0, 'n', 0, 't', 0, \ - 'e', 0, 'r', 0, 'f', 0, 'a', 0, \ - 'c', 0, 'e', 0, + 'E', 0, 't', 0, 'h', 0, 'e', 0, \ + 'r', 0, 'n', 0, 'e', 0, 't', 0, \ + ' ', 0, 'C', 0, 'o', 0, 'm', 0, \ + 'm', 0, ' ', 0, 'i', 0, 'n', 0, \ + 't', 0, 'e', 0, 'r', 0, 'f', 0, \ + 'a', 0, 'c', 0, 'e', 0, #define STRING_ETH_DATA \ 'U', 0, 'S', 0, 'B', 0, ' ', 0, \ - 'C', 0, 'D', 0, 'C', 0, ' ', 0, \ - 'D', 0, 'a', 0, 't', 0, 'a', 0, \ - ' ', 0, 'i', 0, 'n', 0, 't', 0, \ - 'e', 0, 'r', 0, 'f', 0, 'a', 0, \ - 'c', 0, 'e', 0, + 'E', 0, 't', 0, 'h', 0, 'e', 0, \ + 'r', 0, 'n', 0, 'e', 0, 't', 0, \ + ' ', 0, 'D', 0, 'a', 0, 't', 0, \ + 'a', 0, ' ', 0, 'i', 0, 'n', 0, \ + 't', 0, 'e', 0, 'r', 0, 'f', 0, \ + 'a', 0, 'c', 0, 'e', 0, #define STRING_ETH_CONFIG \ 'D', 0, 'e', 0, 'f', 0, 'a', 0, \ @@ -212,7 +214,7 @@ static const struct usb_temp_config_desc eth_config_desc = { .ppIfaceDesc = eth_interfaces, .bmAttributes = UC_BUS_POWERED, - .bMaxPower = 250, /* 500 mA */ + .bMaxPower = 25, /* 50 mA */ .iConfiguration = STRING_ETH_CONFIG_INDEX, }; From owner-p4-projects@FreeBSD.ORG Fri Dec 28 22:57:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B8D5816A418; Fri, 28 Dec 2007 22:57:25 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7E90D16A46E for ; Fri, 28 Dec 2007 22:57:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8C1F613C45B for ; Fri, 28 Dec 2007 22:57:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSMvP0O030692 for ; Fri, 28 Dec 2007 22:57:25 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSMvPQi030689 for perforce@freebsd.org; Fri, 28 Dec 2007 22:57:25 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 22:57:25 GMT Message-Id: <200712282257.lBSMvPQi030689@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 131926 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 22:57:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131926 Change 131926 by hselasky@hselasky_laptop001 on 2007/12/28 22:56:35 Looks like the wrong mask is used. Not sure if it has any practical effect. Please correct me if this patch is wrong. At least the OHCI and AT91 UDP works regardless of this patch. Affected files ... .. //depot/projects/usb/src/sys/arm/at91/at91_pmc.c#5 edit Differences ... ==== //depot/projects/usb/src/sys/arm/at91/at91_pmc.c#5 (text) ==== @@ -128,7 +128,7 @@ static struct at91_pmc_clock ohci_clk = { .name = "ohci_clk", .parent = &mck, - .pmc_mask = 1 << AT91RM92_IRQ_UDP, + .pmc_mask = 1 << AT91RM92_IRQ_UHP, .set_mode = &at91_pmc_set_periph_mode }; From owner-p4-projects@FreeBSD.ORG Fri Dec 28 22:57:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2F9E616A532; Fri, 28 Dec 2007 22:57:26 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E1FA616A4E6 for ; Fri, 28 Dec 2007 22:57:25 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DF25913C465 for ; Fri, 28 Dec 2007 22:57:25 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSMvPX8030700 for ; Fri, 28 Dec 2007 22:57:25 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSMvP5v030695 for perforce@freebsd.org; Fri, 28 Dec 2007 22:57:25 GMT (envelope-from gcooper@FreeBSD.org) Date: Fri, 28 Dec 2007 22:57:25 GMT Message-Id: <200712282257.lBSMvP5v030695@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131927 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 22:57:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131927 Change 131927 by gcooper@shiina-ibook on 2007/12/28 22:57:03 Getting OCD about file organization. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/archive_read_open_stream.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/macros.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg.h#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db.h#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_freebsd.c#7 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_match.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_private.h#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd.c#6 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_contents.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_lexer.l#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_parser.y#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_private.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_manifest.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_manifest_freebsd.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_private.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_files.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_ftp.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_local_freebsd.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_private.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_sandbox.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_sandbox.h#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_sandbox_private.h#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_util.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkgfile.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/main.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_create/main.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/main.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/main.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_sign/main.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_version/main.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/add/pkg_action_add.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/add/pkg_action_add.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/check/pkg_action_check.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/check/pkg_action_check.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/clean/pkg_action_clean.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/clean/pkg_action_clean.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/delete/pkg_action_delete.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/delete/pkg_action_delete.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/info/pkg_action_info.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/info/pkg_action_info.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/pkg_action.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/pkg_action.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/show/pkg_action_show.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/show/pkg_action_show.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/sign/pkg_action_sign.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/sign/pkg_action_sign.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/update/pkg_action_update.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/update/pkg_action_update.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/version/pkg_action_version.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/version/pkg_action_version.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_add_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_add_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_check_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_check_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_clean_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_clean_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_delete_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_delete_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_info_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_info_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_show_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_show_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_sign_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_sign_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_update_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_update_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_version_arg_parser.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_version_arg_parser.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_add_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_check.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_check_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_check_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_clean.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_clean_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_clean_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_delete.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_delete_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_delete_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_info.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_info_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_info_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_show.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_show_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_show_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_sign.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_sign_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_sign_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_update.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_update_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_update_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_version.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_version_arg_parser.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkg_action_version_arg_parser.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkgman.h#2 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/archive_read_open_stream.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/macros.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg.h#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db.c#4 (text+ko) ==== @@ -107,7 +107,11 @@ /** * @brief The package action used when no output is required - * @todo Change to follow the interactive flag + * Andrew: + * @todo Change to follow the interactive flag + * Garrett: + * This isn't necessary I think, and should stick with + * the interface, not with the library. * * This is a function that does nothing. * It can be used for a pkg_action when no output is required ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db.h#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_freebsd.c#7 (text+ko) ==== @@ -257,7 +257,32 @@ pkg_run_script(pkg, prefix, pkg_script_post); /* - * @todo Display contents of \@display + * @todo Replace __display_file with the appropriate var name pointing to + * the file by \@display. + * + * Simply, open the file denoted by @display, and print the contents to the + * screen. Simple as that.. + */ + /* + +/ * Temporary constant for defining the display buffer size * / +#define DISPLAY_BUFFER_SIZE 1024 + + char display_buffer[DISPLAY_BUFFER_SIZE+1]; + + FILE *fp = fopen(__display_file, "r"); + + if (fp == NULL) { + errx("Could not open display file -- %s\n", __display_file); + } else { + + while ( NULL != ( fgets(display_buffer, DISPLAY_BUFFER_SIZE, fp)) ) + printf("%s", display_buffer); + + } + +#undef DISPLAY_BUFFER_SIZE + */ chdir(cwd); ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_match.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_db_private.h#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd.c#6 (text+ko) ==== @@ -189,7 +189,7 @@ * @param pkg_db_dir The directory in the database the package is registered in * @todo Make this work through a pkg_db callback * @todo Remove the need for pkg_db_dir by using a struct pkg_repo - * @todo move the freebsd_package creation to an internal function + * @todo Move the freebsd_package creation to an internal function * * This creates a package object from an installed package. * It can be used to retrieve information from the pkg_db and deintall @@ -244,12 +244,12 @@ } /** - * @brief Creates an empty FreeBSD package to add files to + * @brief Creates an empty FreeBSD package to add files to the package. * @param pkg_name The name of the package * * This creates an empty FreeBSD Package. - * It can then have files added to it, eg. in pkg_create(1) - * @todo Write + * It can then have files added to it, e.g. in pkg_create(1) + * @todo Write -- what?? * @return A package object or NULL */ struct pkg * @@ -317,7 +317,6 @@ /** * @brief Callback for pkg_get_version() * - * @todo Do proper checks of line 0 * @return A string containing the package version. Do not Free. */ static const char * @@ -331,6 +330,22 @@ assert(fpkg != NULL); assert(fpkg->pkg_type != fpkg_unknown); + /** + * In a properly formatted file (assuming that things stay + * consistent between pkg_create(1) and this section of code + * when the version is generated), the +CONTENTS file should + * appear something like: + * + * [from line 0] + * @comment VERSION:[version_number] + * ... + * + * where [version_number] is interchangeable with a + * {major.minor} formatted number, such as 1.0, 1.1, etc.. + * + * Anything apart from those strict requirements is + * non-conforming and invalid.. + */ if (fpkg->version == NULL) { const char *version; ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_contents.c#4 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_lexer.l#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_parser.y#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_freebsd_private.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_manifest.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_manifest_freebsd.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_private.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_files.c#4 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_ftp.c#4 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_local_freebsd.c#4 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_private.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_sandbox.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_sandbox.h#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_sandbox_private.h#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_util.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkgfile.c#4 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/main.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_create/main.c#2 (text+ko) ==== @@ -16,7 +16,15 @@ #include "lib.h" #include "create.h" -static char Options[] = "EGYNORhjvxyzf:p:P:C:c:d:i:I:k:K:r:t:X:D:m:s:S:o:b:"; +struct pkg_create { + struct pkg_db *db; + struct pkg_repo *repo; + struct pkg **pkgs; + int flags; + char chroot[PATH_MAX]; + char *base_prefix; + char *prefix; +} match_t MatchType = MATCH_GLOB; char *Prefix = NULL; @@ -37,7 +45,6 @@ char *Conflicts = NULL; char *Origin = NULL; char *InstalledPkg = NULL; -char PlayPen[FILENAME_MAX]; int Dereference = FALSE; int PlistOnly = FALSE; int Recursive = FALSE; @@ -48,7 +55,7 @@ #endif -static void usage __P((void)); +static void usage(void); int main(int argc, char **argv) @@ -211,7 +218,6 @@ *pkgs = NULL; if ((start[0] != NULL) && (start[1] != NULL)) { warnx("only one package name allowed ('%s' extraneous)", start[1]); -// usage(); } if (start[0] == NULL) start[0] = InstalledPkg; ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/main.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/main.c#2 (text+ko) ==== @@ -28,9 +28,22 @@ #include #include -static char options[] = "abcdDe:EfgGhiIjkl:LmoO:pPqQrRst:vVW:xX"; +struct pkg_info { + struct pkg_db *db; + char **pkgs; + int quiet; + match_t match_type; + int flags; + int use_blocksize; + const char *check_package; + const char *origin; + const char *search_file; + const char *separator; +}; + +static void usage(void); -static void usage (void); +static char options[] = "abcdDe:EfgGhiIjkKl:LmoO:pPqQrRst:vVW:xX"; int main(int argc, char **argv) @@ -44,7 +57,6 @@ info.quiet = 0; info.origin = NULL; info.check_package = NULL; - info.seperator = ""; info.use_blocksize = 0; info.search_file = NULL; @@ -99,7 +111,7 @@ info.flags |= SHOW_DEINSTALL; break; case 'l': - info.seperator = optarg; + info.separator = optarg; break; case 'L': info.flags |= SHOW_FILES; @@ -147,8 +159,14 @@ info.flags |= SHOW_FMTREV; break; case 'W': - /* XXX Allow multiple -W files */ - info.search_file = optarg; + /* If package list is empty, create a new one */ + if (SLIST_EMPTY(&w_package_names)) { + /* Create the head of the slist */ + SLIST_HEAD(top_package, char *) + w_package_names = SLIST_HEAD_INITIALIZER(w_packages); + } + /* Insert found argument at head of list */ + SLIST_INSERT_HEAD(); break; case 'x': info.match_type = MATCH_REGEX; @@ -220,13 +238,17 @@ } /* -W */ + SLIST_FOREACH_SAFE() { + if (info.search_file != NULL) { struct stat sb; char *abs_path; abs_path = pkg_abspath(info.search_file); + /* File couldn't be stat(2)'ed.. */ if (stat(abs_path, &sb) != 0) { - /* XXX */ + errx("File found at %s couldn't be stat(2)'ed\n", + abs_path); free(abs_path); return 1; } @@ -283,7 +305,7 @@ qsort(pkgs, cur, sizeof(struct pkg *), pkg_compare); for (cur = 0; pkgs[cur] != NULL; cur++) { show(info.db, pkgs[cur], info.flags, info.quiet, - info.seperator, info.use_blocksize); + info.separator, info.use_blocksize); } retval = 0; break; @@ -297,7 +319,7 @@ pkg = pkg_db_get_package(info.db, info.pkgs[cur]); if (pkg != NULL) show(info.db, pkg, info.flags, info.quiet, - info.seperator, info.use_blocksize); + info.separator, info.use_blocksize); else { warnx("pkg_info: can't find package '%s' " "installed or in a file!", info.pkgs[cur]); ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_sign/main.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_version/main.c#2 (text+ko) ==== @@ -21,56 +21,79 @@ #include __FBSDID("$FreeBSD: src/usr.sbin/pkg_install/version/main.c,v 1.7 2006/06/12 22:39:32 obrien Exp $"); -#include "lib.h" -#include "version.h" +#include +#include #include +#include +#include +#include -static char Options[] = "dIhl:L:qs:XtTO:ov"; +static char options[] = "dIhl:L:qs:XtTO:ov"; char *LimitChars = NULL; char *PreventChars = NULL; char *MatchName = NULL; char *LookUpOrigin = NULL; -Boolean RegexExtended = FALSE; -Boolean UseINDEXOnly = FALSE; -Boolean ShowOrigin = FALSE; + +#define VERSION_USE_INDEX_ONLY 0x0001 +#define VERSION_SHOW_PKG_ORIGIN 0x0002 + +struct pkg_version { + struct pkg_db *db; + char **pkgs; + int quiet; + match_t match_type; + int flags; + const char *check_package; + const char *origin; + const char *search_file; + const char *seperator; +}; -static void usage __P((void)); +static void usage(void); int main(int argc, char **argv) { + struct pkg_version version; + int ch, cmp = 0; if (argc == 4 && !strcmp(argv[1], "-t")) { - cmp = version_cmp(argv[2], argv[3]); + cmp = pkg_version_cmp(argv[2], argv[3]); printf(cmp > 0 ? ">\n" : (cmp < 0 ? "<\n" : "=\n")); exit(0); } else if (argc == 4 && !strcmp(argv[1], "-T")) { - cmp = version_match(argv[3], argv[2]); + cmp = pkg_version_match(argv[3], argv[2]); exit(cmp == 1 ? 0 : 1); } - else while ((ch = getopt(argc, argv, Options)) != -1) { + else while ((ch = getopt(argc, argv, options)) != -1) { switch(ch) { case 'v': Verbose++; break; + /* + * Use /usr/ports/INDEX* instead of the Makefiles for version + * comparison bases. + */ case 'I': - UseINDEXOnly = TRUE; + version.flags |= VERSION_USE_INDEX_ONLY; break; + /* Look only for the specified installed statuses */ case 'l': LimitChars = optarg; break; + /* Avoid looking for package installed statuses */ case 'L': PreventChars = optarg; break; case 'q': - Quiet = TRUE; + version.flags |= QUIET; break; case 's': @@ -82,7 +105,7 @@ break; case 'o': - ShowOrigin = TRUE; + version.flags |= VERSION_SHOW_PKG_ORIGIN; break; case 't': @@ -94,7 +117,7 @@ break; case 'X': - RegexExtended = TRUE; + version.match_type = MATCH_EREGEX; break; case 'h': @@ -108,7 +131,7 @@ argc -= optind; argv += optind; - return pkg_perform(argv); + return pkg_version(version); } static void ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#4 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkgman.h#2 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Fri Dec 28 23:01:31 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF97716A469; Fri, 28 Dec 2007 23:01:30 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9521816A41A for ; Fri, 28 Dec 2007 23:01:30 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A1B3213C448 for ; Fri, 28 Dec 2007 23:01:30 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSN1UBU031639 for ; Fri, 28 Dec 2007 23:01:30 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSN1T6N031631 for perforce@freebsd.org; Fri, 28 Dec 2007 23:01:29 GMT (envelope-from gcooper@FreeBSD.org) Date: Fri, 28 Dec 2007 23:01:29 GMT Message-Id: <200712282301.lBSN1T6N031631@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131928 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 23:01:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=131928 Change 131928 by gcooper@shiina-ibook on 2007/12/28 23:01:24 Readding junk files to this workspace for delete shortly hereafter. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/__template/main.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/__template/main.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/add/main.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/delete/main.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/info/main.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/add/pkg_action_add.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/add/pkg_action_add.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/check/pkg_action_check.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/check/pkg_action_check.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/clean/pkg_action_clean.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/clean/pkg_action_clean.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/delete/pkg_action_delete.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/delete/pkg_action_delete.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/info/pkg_action_info.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/info/pkg_action_info.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/pkg_action.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/pkg_action.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/show/pkg_action_show.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/show/pkg_action_show.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/sign/pkg_action_sign.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/sign/pkg_action_sign.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/update/pkg_action_update.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/update/pkg_action_update.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/version/pkg_action_version.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/version/pkg_action_version.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_add_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_add_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_check_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_check_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_clean_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_clean_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_delete_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_delete_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_info_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_info_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_show_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_show_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_sign_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_sign_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_update_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_update_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_version_arg_parser.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_version_arg_parser.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#5 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkgman.h#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/register/INCOMPLETE_SOURCES#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/register/connection_manage.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/register/db_manage.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/register/main.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/version/main.c#1 add Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/add/pkg_action_add.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/add/pkg_action_add.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/check/pkg_action_check.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/check/pkg_action_check.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/clean/pkg_action_clean.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/clean/pkg_action_clean.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/delete/pkg_action_delete.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/delete/pkg_action_delete.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/info/pkg_action_info.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/info/pkg_action_info.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/pkg_action.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/pkg_action.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/show/pkg_action_show.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/show/pkg_action_show.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/sign/pkg_action_sign.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/sign/pkg_action_sign.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/update/pkg_action_update.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/update/pkg_action_update.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/version/pkg_action_version.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/action/version/pkg_action_version.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_add_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_add_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_check_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_check_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_clean_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_clean_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_delete_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_delete_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_info_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_info_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_show_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_show_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_sign_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_sign_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_update_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_update_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_version_arg_parser.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/ap/pkg_action_version_arg_parser.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/main.c#5 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/pkgman/pkgman.h#3 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Fri Dec 28 23:04:34 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 221F416A418; Fri, 28 Dec 2007 23:04:34 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DBDE816A41B for ; Fri, 28 Dec 2007 23:04:33 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EAD6213C442 for ; Fri, 28 Dec 2007 23:04:33 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBSN4Xwx035568 for ; Fri, 28 Dec 2007 23:04:33 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSN4X1W035565 for perforce@freebsd.org; Fri, 28 Dec 2007 23:04:33 GMT (envelope-from gcooper@FreeBSD.org) Date: Fri, 28 Dec 2007 23:04:33 GMT Message-Id: <200712282304.lBSN4X1W035565@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131929 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 23:04:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=131929 Change 131929 by gcooper@shiina-ibook on 2007/12/28 23:04:10 Pruning junk files from workspace for good. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/__template/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/__template/main.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/add/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/delete/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/info/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/version/main.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Fri Dec 28 23:40:15 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0099016A421; Fri, 28 Dec 2007 23:40:15 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B978F16A419; Fri, 28 Dec 2007 23:40:14 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id A345913C442; Fri, 28 Dec 2007 23:40:14 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.1/8.14.1) with ESMTP id lBSNYRHp078612; Fri, 28 Dec 2007 16:34:27 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Fri, 28 Dec 2007 16:39:17 -0700 (MST) Message-Id: <20071228.163917.-169064562.imp@bsdimp.com> To: hselasky@freebsd.org From: "M. Warner Losh" In-Reply-To: <200712282257.lBSMvPQi030689@repoman.freebsd.org> References: <200712282257.lBSMvPQi030689@repoman.freebsd.org> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: perforce@freebsd.org Subject: Re: PERFORCE change 131926 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Dec 2007 23:40:15 -0000 In message: <200712282257.lBSMvPQi030689@repoman.freebsd.org> Hans Petter Selasky writes: : http://perforce.freebsd.org/chv.cgi?CH=131926 : : Change 131926 by hselasky@hselasky_laptop001 on 2007/12/28 22:56:35 : : : Looks like the wrong mask is used. Not sure if it : has any practical effect. Please correct me if this : patch is wrong. At least the OHCI and AT91 UDP works : regardless of this patch. I think this is right. It works because we force the pmc mask to 0xffffffff elsewhere. Warner : Affected files ... : : .. //depot/projects/usb/src/sys/arm/at91/at91_pmc.c#5 edit : : Differences ... : : ==== //depot/projects/usb/src/sys/arm/at91/at91_pmc.c#5 (text) ==== : : @@ -128,7 +128,7 @@ : static struct at91_pmc_clock ohci_clk = { : .name = "ohci_clk", : .parent = &mck, : - .pmc_mask = 1 << AT91RM92_IRQ_UDP, : + .pmc_mask = 1 << AT91RM92_IRQ_UHP, : .set_mode = &at91_pmc_set_periph_mode : }; From owner-p4-projects@FreeBSD.ORG Sat Dec 29 00:02:35 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9131716A420; Sat, 29 Dec 2007 00:02:35 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2629A16A417 for ; Sat, 29 Dec 2007 00:02:35 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 17D4E13C45D for ; Sat, 29 Dec 2007 00:02:35 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT02YGY058416 for ; Sat, 29 Dec 2007 00:02:34 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT02YUc058411 for perforce@freebsd.org; Sat, 29 Dec 2007 00:02:34 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 00:02:34 GMT Message-Id: <200712290002.lBT02YUc058411@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131934 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 00:02:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=131934 Change 131934 by gcooper@shiina-ibook on 2007/12/29 00:02:18 pkgtools, be gone! Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/COPYING#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/ChangeLog#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/Makefile.compat#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/NEWS#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/README#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/pkg_fetch#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/pkg_glob#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/pkg_sort#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/pkgdb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/portcvsweb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/portsclean#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/portsdb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/portupgrade#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/bin/portversion#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/etc/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/etc/pkgtools.conf#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/etc/pkgtools.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/etc/status-pkg.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkg.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkgdb.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkgdbtools.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkginfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkgmisc.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkgtools.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkgtsort.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/pkgversion.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/portinfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/ports.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/lib/portsdb.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/pkg_deinstall.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/pkg_fetch.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/pkg_glob.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/pkg_sort.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/pkgdb.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/pkgtools.conf.5#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/portcvsweb.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/portsclean.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/portsdb.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/portupgrade.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/man/portversion.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/bash/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/bash/complete.sample#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/tcsh/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/tcsh/complete.sample#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/zsh/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/misc/zsh/_pkgtools#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_all.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_pkgdb.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_pkginfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_pkgtsort.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_pkgversion.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_portinfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkgtools-2.2.6/tests/test_portsdb.rb#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 00:03:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DF82316A474; Sat, 29 Dec 2007 00:03:36 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9F7DE16A46B for ; Sat, 29 Dec 2007 00:03:36 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 58F3313C45D for ; Sat, 29 Dec 2007 00:03:36 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT03a1w060744 for ; Sat, 29 Dec 2007 00:03:36 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT03axe060741 for perforce@freebsd.org; Sat, 29 Dec 2007 00:03:36 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 00:03:36 GMT Message-Id: <200712290003.lBT03axe060741@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131935 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 00:03:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131935 Change 131935 by gcooper@shiina-ibook on 2007/12/29 00:03:31 Submitting more files for workspace cleanup. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/COPYING#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/ChangeLog#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/Makefile.compat#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/Makefile.inc#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/NEWS#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/README#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkg_fetch#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkg_glob#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkg_sort#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkgdb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portcvsweb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portsclean#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portsdb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portupgrade#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portversion#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/pkgtools.conf#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/pkgtools.sh#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/status-pkg.sh#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkg.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgdb.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgdbtools.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkginfo.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgmisc.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgtools.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgtsort.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgversion.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/portinfo.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/ports.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/portsdb.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_deinstall.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_fetch.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_glob.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_sort.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkgdb.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkgtools.conf.5#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portcvsweb.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portsclean.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portsdb.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portupgrade.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portversion.1#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/Makefile.inc#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/bash/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/bash/complete.sample#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/tcsh/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/tcsh/complete.sample#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/zsh/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/zsh/_pkgtools#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_all.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkgdb.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkginfo.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkgtsort.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkgversion.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_portinfo.rb#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_portsdb.rb#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 00:05:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0FC3916A468; Sat, 29 Dec 2007 00:05:39 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B110816A421 for ; Sat, 29 Dec 2007 00:05:38 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A236413C455 for ; Sat, 29 Dec 2007 00:05:38 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT05cvj061942 for ; Sat, 29 Dec 2007 00:05:38 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT05cVa061939 for perforce@freebsd.org; Sat, 29 Dec 2007 00:05:38 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 00:05:38 GMT Message-Id: <200712290005.lBT05cVa061939@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131936 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 00:05:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=131936 Change 131936 by gcooper@shiina-ibook on 2007/12/29 00:05:35 Now why didn't all of pkgtools disappear like it was supposed to, huh? I hate checking boxes :(.. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/COPYING#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/ChangeLog#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/Makefile.compat#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/NEWS#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/README#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkg_fetch#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkg_glob#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkg_sort#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/pkgdb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portcvsweb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portsclean#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portsdb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portupgrade#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/bin/portversion#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/pkgtools.conf#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/pkgtools.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/etc/status-pkg.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkg.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgdb.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgdbtools.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkginfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgmisc.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgtools.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgtsort.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/pkgversion.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/portinfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/ports.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/lib/portsdb.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_deinstall.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_fetch.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_glob.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkg_sort.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkgdb.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/pkgtools.conf.5#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portcvsweb.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portsclean.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portsdb.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portupgrade.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/man/portversion.1#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/bash/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/bash/complete.sample#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/tcsh/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/tcsh/complete.sample#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/zsh/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/misc/zsh/_pkgtools#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_all.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkgdb.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkginfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkgtsort.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_pkgversion.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_portinfo.rb#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/pkgtools-2.2.6/tests/test_portsdb.rb#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 00:23:58 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EA18C16A421; Sat, 29 Dec 2007 00:23:57 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AF6D616A41B for ; Sat, 29 Dec 2007 00:23:57 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A23C613C447 for ; Sat, 29 Dec 2007 00:23:57 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT0NvJT067897 for ; Sat, 29 Dec 2007 00:23:57 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT0NvUD067887 for perforce@freebsd.org; Sat, 29 Dec 2007 00:23:57 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 00:23:57 GMT Message-Id: <200712290023.lBT0NvUD067887@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131937 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 00:23:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=131937 Change 131937 by gcooper@shiina-ibook on 2007/12/29 00:23:52 Remove some duplicate files from a previous bad workspace definition. YAY! I think I'm finally getting a hang of this perforce management thing :).. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_db_freebsd.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_freebsd.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_freebsd.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_freebsd_contents.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_freebsd_lexer.l#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_freebsd_parser.y#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_freebsd_private.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_manifest_freebsd.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__contrib_templates/pkg_repo_local_freebsd.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__template/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/__template/main.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/add/main.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/archive_read_open_stream.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg.h#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_db.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_db.h#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_db_match.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_db_private.h#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_manifest.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_private.h#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_repo.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_repo.h#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_repo_files.c#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_repo_ftp.c#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_repo_private.h#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkg_util.c#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/libpkg/pkgfile.c#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/scripts/styleify.pl#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/CHANGELOG#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/README#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/src/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/fbsd_contents/.svn/entries#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/fbsd_contents/.svn/format#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/fbsd_contents/.svn/text-base/Makefile.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/fbsd_contents/.svn/text-base/fbsd_test.c.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/fbsd_contents/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/fbsd_contents/fbsd_test.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/pkg_freebsd_contents.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/pkgfile.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tests/test.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/Makefile.inc#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/config.sh.eg#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/entries#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/format#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/prop-base/run.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/prop-base/test.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/text-base/Makefile.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/text-base/main.c.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/text-base/run.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/.svn/text-base/test.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/run.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_add/test.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/entries#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/format#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/prop-base/run.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/prop-base/test.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/text-base/Makefile.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/text-base/main.c.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/text-base/run.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/.svn/text-base/test.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/run.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_delete/test.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/entries#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/format#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/prop-base/run.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/prop-base/test.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/Makefile.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/main.c.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/match.c.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/pkg_info.h.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/run.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/show.c.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/.svn/text-base/test.sh.svn-base#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/main.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/match.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/pkg_info.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/run.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/show.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/pkg_info/test.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/contrib/trunk/tools/test.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/delete/main.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/info/main.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/archive.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/db/api.c#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/db/api.h#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/file/api.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/file/api.h#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/file_utils.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/index_handler.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/ipc/api.c#5 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/ipc/api.h#6 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/ipc/client.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/ipc/server.c#4 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/plist.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/lib/prototypes.h#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/register/connection_manage.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/register/db_manage.c#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/register/main.c#3 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/v2/version/main.c#3 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 00:38:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A892316A420; Sat, 29 Dec 2007 00:38:12 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6EAC216A41A for ; Sat, 29 Dec 2007 00:38:12 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 641C513C447 for ; Sat, 29 Dec 2007 00:38:12 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT0cC2h073205 for ; Sat, 29 Dec 2007 00:38:12 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT0cCTG073202 for perforce@freebsd.org; Sat, 29 Dec 2007 00:38:12 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 00:38:12 GMT Message-Id: <200712290038.lBT0cCTG073202@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131938 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 00:38:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=131938 Change 131938 by gcooper@shiina-ibook on 2007/12/29 00:38:09 Get rid of some not so helpful libpkg provided files.. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/main.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/run.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_create/main.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/main.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/run.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/Makefile#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/main.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/match.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/pkg_info.h#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/run.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/show.c#2 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_sign/main.c#3 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_version/main.c#3 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/main.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_create/main.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/main.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/main.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/match.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/pkg_info.h#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/show.c#2 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_sign/main.c#3 (text+ko) ==== ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_version/main.c#3 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Sat Dec 29 01:06:42 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 71BA516A41A; Sat, 29 Dec 2007 01:06:42 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 371D616A418 for ; Sat, 29 Dec 2007 01:06:42 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1509A13C447 for ; Sat, 29 Dec 2007 01:06:42 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT16fhq094156 for ; Sat, 29 Dec 2007 01:06:41 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT16flF094153 for perforce@freebsd.org; Sat, 29 Dec 2007 01:06:41 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 01:06:41 GMT Message-Id: <200712290106.lBT16flF094153@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131940 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 01:06:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=131940 Change 131940 by gcooper@shiina-ibook on 2007/12/29 01:05:48 Add libpkg style(8) script. Maybe I should use HFS's script instead? Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/scripts/styleify.pl#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 01:11:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DD28E16A473; Sat, 29 Dec 2007 01:11:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A33E116A46C for ; Sat, 29 Dec 2007 01:11:47 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8154C13C45A for ; Sat, 29 Dec 2007 01:11:47 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT1BlgH094963 for ; Sat, 29 Dec 2007 01:11:47 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT1BlBn094958 for perforce@freebsd.org; Sat, 29 Dec 2007 01:11:47 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 01:11:47 GMT Message-Id: <200712290111.lBT1BlBn094958@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131941 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 01:11:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=131941 Change 131941 by gcooper@shiina-ibook on 2007/12/29 01:11:20 Files were moved. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_add/test.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_delete/test.sh#2 delete .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/trunk/tools/pkg_info/test.sh#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 01:15:52 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 50FC716A420; Sat, 29 Dec 2007 01:15:52 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F289216A418 for ; Sat, 29 Dec 2007 01:15:51 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E8B7F13C459 for ; Sat, 29 Dec 2007 01:15:51 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT1FpbH097970 for ; Sat, 29 Dec 2007 01:15:51 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT1FpbI097967 for perforce@freebsd.org; Sat, 29 Dec 2007 01:15:51 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 01:15:51 GMT Message-Id: <200712290115.lBT1FpbI097967@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131942 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 01:15:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=131942 Change 131942 by gcooper@shiina-ibook on 2007/12/29 01:15:29 Regression test directory; partially borrowed from libpkg, partially borrowed from pkg_install(1). Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/Makefile.inc#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/fbsd_contents/Makefile#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/fbsd_contents/fbsd_test.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/main.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/pkg_freebsd_contents.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/pkgfile.c#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/test_bootstrap/test.h#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/usage_tests/pkg_add/test.sh#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/usage_tests/pkg_delete/test.sh#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/usage_tests/pkg_info/test.sh#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/usage_tests/pkg_version/simple_compare_tests.sh#1 add .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/regression_tests/usage_tests/test.sh#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 01:34:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 818EE16A469; Sat, 29 Dec 2007 01:34:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 45FC916A421 for ; Sat, 29 Dec 2007 01:34:11 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3823313C455 for ; Sat, 29 Dec 2007 01:34:11 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT1YB99004714 for ; Sat, 29 Dec 2007 01:34:11 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT1YAR6004710 for perforce@freebsd.org; Sat, 29 Dec 2007 01:34:10 GMT (envelope-from kmacy@freebsd.org) Date: Sat, 29 Dec 2007 01:34:10 GMT Message-Id: <200712290134.lBT1YAR6004710@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 131944 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 01:34:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=131944 Change 131944 by kmacy@pandemonium:kmacy:xen31 on 2007/12/29 01:33:52 fix WITNESS complaints about xenbus compile in block and console devices we now hang waiting for block device interrupts when mounting root Affected files ... .. //depot/projects/xen31/sys/conf/files#11 edit .. //depot/projects/xen31/sys/dev/xen/blkfront/blkfront.c#2 edit .. //depot/projects/xen31/sys/dev/xen/console/console.c#2 edit .. //depot/projects/xen31/sys/dev/xen/console/xencons_ring.c#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/io/console.h#1 add .. //depot/projects/xen31/sys/xen/xenbus/xenbus_probe.c#3 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#5 edit Differences ... ==== //depot/projects/xen31/sys/conf/files#11 (text+ko) ==== @@ -2117,6 +2117,9 @@ xen/xenbus/xenbus_dev.c optional xen xen/xenbus/xenbus_probe.c optional xen xen/xenbus/xenbus_xs.c optional xen +dev/xen/console/console.c optional xen +dev/xen/console/xencons_ring.c optional xen +dev/xen/blkfront/blkfront.c optional xen # gnu/fs/xfs/xfs_alloc.c optional xfs \ ==== //depot/projects/xen31/sys/dev/xen/blkfront/blkfront.c#2 (text+ko) ==== @@ -37,17 +37,17 @@ #include #include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include #include -#include -#include +#include +#include #include @@ -245,8 +245,8 @@ return err; } - info = malloc(sizeof(*info), M_DEVBUF, M_WAITOK); - if (!info) { + info = malloc(sizeof(*info), M_DEVBUF, M_NOWAIT); + if (info == NULL) { xenbus_dev_fatal(dev, ENOMEM, "allocating info structure"); return ENOMEM; } @@ -362,8 +362,8 @@ info->ring_ref = GRANT_INVALID_REF; - sring = (blkif_sring_t *)malloc(PAGE_SIZE, M_DEVBUF, M_WAITOK); - if (!sring) { + sring = (blkif_sring_t *)malloc(PAGE_SIZE, M_DEVBUF, M_NOWAIT); + if (sring == NULL) { xenbus_dev_fatal(dev, ENOMEM, "allocating shared ring"); return ENOMEM; } @@ -473,10 +473,10 @@ (void)xenbus_switch_state(info->xbdev, NULL, XenbusStateConnected); /* Kick pending requests. */ - mtx_lock_spin(&blkif_io_lock); + mtx_lock(&blkif_io_lock); info->connected = BLKIF_STATE_CONNECTED; kick_pending_request_queues(info); - mtx_unlock_spin(&blkif_io_lock); + mtx_unlock(&blkif_io_lock); #if 0 add_disk(info->gd); @@ -577,9 +577,10 @@ static void blkif_restart_queue(void *arg) { struct blkfront_info *info = (struct blkfront_info *)arg; - mtx_lock_spin(&blkif_io_lock); + + mtx_lock(&blkif_io_lock); kick_pending_request_queues(info); - mtx_unlock_spin(&blkif_io_lock); + mtx_unlock(&blkif_io_lock); } #endif @@ -794,16 +795,15 @@ struct bio *bp; blkif_response_t *bret; RING_IDX i, rp; - unsigned long flags; struct blkfront_info *info = xsc; DPRINTK(""); TRACE_ENTER; - mtx_lock_irqsave(&blkif_io_lock, flags); + mtx_lock(&blkif_io_lock); if (unlikely(info->connected != BLKIF_STATE_CONNECTED)) { - mtx_unlock_irqrestore(&blkif_io_lock, flags); + mtx_unlock(&blkif_io_lock); return; } @@ -870,7 +870,7 @@ kick_pending_request_queues(info); - mtx_unlock_irqrestore(&blkif_io_lock, flags); + mtx_unlock(&blkif_io_lock); } static void @@ -878,10 +878,10 @@ { /* Prevent new requests being issued until we fix things up. */ - mtx_lock_spin(&blkif_io_lock); + mtx_lock(&blkif_io_lock); info->connected = suspend ? BLKIF_STATE_SUSPENDED : BLKIF_STATE_DISCONNECTED; - mtx_unlock_spin(&blkif_io_lock); + mtx_unlock(&blkif_io_lock); /* Free resources associated with old device channel. */ if (info->ring_ref != GRANT_INVALID_REF) { @@ -957,17 +957,17 @@ (void)xenbus_switch_state(info->xbdev, NULL, XenbusStateConnected); /* Now safe for us to use the shared ring */ - mtx_lock_spin(&blkif_io_lock); - info->connected = BLKIF_STATE_CONNECTED; - mtx_unlock_spin(&blkif_io_lock); + mtx_lock(&blkif_io_lock); + info->connected = BLKIF_STATE_CONNECTED; + mtx_unlock(&blkif_io_lock); /* Send off requeued requests */ flush_requests(info); /* Kick any other new requests queued since we resumed */ - mtx_lock_spin(&blkif_io_lock); + mtx_lock(&blkif_io_lock); kick_pending_request_queues(info); - mtx_unlock_spin(&blkif_io_lock); + mtx_unlock(&blkif_io_lock); } static struct xenbus_device_id blkfront_ids[] = { @@ -993,7 +993,7 @@ xenbus_register_frontend(&blkfront); } -MTX_SYSINIT(ioreq, &blkif_io_lock, "BIO LOCK", MTX_SPIN | MTX_NOWITNESS); /* XXX how does one enroll a lock? */ +MTX_SYSINIT(ioreq, &blkif_io_lock, "BIO LOCK", MTX_NOWITNESS); /* XXX how does one enroll a lock? */ MTX_SYSINIT(ioreq_block, &blkif_io_block_lock, "BIO BLOCK LOCK", MTX_SPIN | MTX_NOWITNESS); SYSINIT(xbdev, SI_SUB_PSEUDO, SI_ORDER_SECOND, xenbus_init, NULL); ==== //depot/projects/xen31/sys/dev/xen/console/console.c#2 (text+ko) ==== @@ -14,14 +14,14 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include #include -#include +#include #include "opt_ddb.h" ==== //depot/projects/xen31/sys/dev/xen/console/xencons_ring.c#2 (text+ko) ==== @@ -14,16 +14,17 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include -#include +#include +#define console_evtchn console.domU.evtchn extern char *console_page; static inline struct xencons_interface * ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_probe.c#3 (text+ko) ==== @@ -48,6 +48,7 @@ #include #include #include +#include #include #include @@ -81,7 +82,7 @@ struct xendev_list_head xenbus_device_backend_list; static LIST_HEAD(, xenbus_driver) xendrv_list; -extern struct sema xenwatch_mutex; +extern struct sx xenwatch_mutex; EVENTHANDLER_DECLARE(xenstore_event, xenstore_event_handler_t); static struct eventhandler_list *xenstore_chain; @@ -563,12 +564,11 @@ drv->driver.probe = xenbus_dev_probe; drv->driver.remove = xenbus_dev_remove; - return ret; #endif - down(&xenwatch_mutex); + sx_xlock(&xenwatch_mutex); LIST_INSERT_HEAD(&xendrv_list, drv, list); - up(&xenwatch_mutex); + sx_xunlock(&xenwatch_mutex); LIST_FOREACH(xdev, bus->bus, list) { if (match_device(drv->ids, xdev)) { xdev->driver = drv; ==== //depot/projects/xen31/sys/xen/xenbus/xenbus_xs.c#5 (text+ko) ==== @@ -37,6 +37,9 @@ #include #include #include +#include +#include +#include #include #include #include @@ -98,7 +101,7 @@ int reply_waitq; /* One request at a time. */ - struct semaphore request_mutex; + struct sx request_mutex; /* Protect transactions against save/restore. */ struct rw_semaphore suspend_mutex; @@ -119,7 +122,7 @@ * carrying out work. */ static pid_t xenwatch_pid; -/* static */ DECLARE_MUTEX(xenwatch_mutex); +struct sx xenwatch_mutex; static int watch_events_waitq; static int get_error(const char *errorstring) @@ -184,12 +187,12 @@ msg.type = XS_DEBUG; msg.len = sizeof("print") + count + 1; - down(&xs_state.request_mutex); + sx_xlock(&xs_state.request_mutex); xb_write(&msg, sizeof(msg)); xb_write("print", sizeof("print")); xb_write(str, count); xb_write("", 1); - up(&xs_state.request_mutex); + sx_xunlock(&xs_state.request_mutex); } #endif @@ -202,7 +205,7 @@ if (req_msg.type == XS_TRANSACTION_START) down_read(&xs_state.suspend_mutex); - down(&xs_state.request_mutex); + sx_xlock(&xs_state.request_mutex); err = xb_write(msg, sizeof(*msg) + msg->len); if (err) { @@ -212,7 +215,7 @@ ret = read_reply(&msg->type, &msg->len); } - up(&xs_state.request_mutex); + sx_xunlock(&xs_state.request_mutex); if ((msg->type == XS_TRANSACTION_END) || ((req_msg.type == XS_TRANSACTION_START) && @@ -241,25 +244,25 @@ for (i = 0; i < num_vecs; i++) msg.len += iovec[i].iov_len; - down(&xs_state.request_mutex); + sx_xlock(&xs_state.request_mutex); err = xb_write(&msg, sizeof(msg)); if (err) { - up(&xs_state.request_mutex); + sx_xunlock(&xs_state.request_mutex); return ERR_PTR(err); } for (i = 0; i < num_vecs; i++) { err = xb_write(iovec[i].iov_base, iovec[i].iov_len);; - if (err) { - up(&xs_state.request_mutex); + if (err) { + sx_xunlock(&xs_state.request_mutex); return ERR_PTR(err); } } ret = read_reply(&msg.type, len); - up(&xs_state.request_mutex); + sx_xunlock(&xs_state.request_mutex); if (IS_ERR(ret)) return ret; @@ -689,8 +692,8 @@ /* Flush any currently-executing callback, unless we are it. :-) */ if (curproc->p_pid != xenwatch_pid) { - down(&xenwatch_mutex); - up(&xenwatch_mutex); + sx_xlock(&xenwatch_mutex); + sx_xunlock(&xenwatch_mutex); } } EXPORT_SYMBOL(unregister_xenbus_watch); @@ -698,7 +701,7 @@ void xs_suspend(void) { down_write(&xs_state.suspend_mutex); - down(&xs_state.request_mutex); + sx_xlock(&xs_state.request_mutex); } void xs_resume(void) @@ -706,7 +709,7 @@ struct xenbus_watch *watch; char token[sizeof(watch) * 2 + 1]; - up(&xs_state.request_mutex); + sx_xunlock(&xs_state.request_mutex); /* No need for watches_lock: the suspend_mutex is sufficient. */ LIST_FOREACH(watch, &watches, list) { @@ -725,7 +728,7 @@ wait_event_interruptible(&watch_events_waitq, !list_empty(&watch_events)); - down(&xenwatch_mutex); + sx_xlock(&xenwatch_mutex); spin_lock(&watch_events_lock); msg = TAILQ_FIRST(&watch_events); @@ -743,7 +746,7 @@ kfree(msg); } - up(&xenwatch_mutex); + sx_xunlock(&xenwatch_mutex); } } @@ -829,13 +832,14 @@ TAILQ_INIT(&xs_state.reply_list); TAILQ_INIT(&watch_events); mtx_init(&xs_state.reply_lock, "state reply", NULL, MTX_DEF); - sema_init(&xs_state.request_mutex, 1, "xenstore request"); sema_init(&xs_state.suspend_mutex, 1, "xenstore suspend"); - sema_init(&xenwatch_mutex, 1, "xenwatch"); + sx_init(&xenwatch_mutex, "xenwatch"); + sx_init(&xs_state.request_mutex, "xenstore request"); + #if 0 - mtx_init(&xs_state.request_mutex, "xenstore request", NULL, MTX_DEF); mtx_init(&xs_state.suspend_mutex, "xenstore suspend", NULL, MTX_DEF); - mtx_init(&xenwatch_mutex, "xenwatch", NULL, MTX_DEF); + sema_init(&xs_state.request_mutex, 1, "xenstore request"); + sema_init(&xenwatch_mutex, 1, "xenwatch"); #endif mtx_init(&watches_lock, "watches", NULL, MTX_DEF); mtx_init(&watch_events_lock, "watch events", NULL, MTX_DEF); From owner-p4-projects@FreeBSD.ORG Sat Dec 29 08:03:55 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B418116A421; Sat, 29 Dec 2007 08:03:55 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 48F7D16A417 for ; Sat, 29 Dec 2007 08:03:55 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3ED2713C46B for ; Sat, 29 Dec 2007 08:03:55 +0000 (UTC) (envelope-from zhouzhouyi@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT83txK075948 for ; Sat, 29 Dec 2007 08:03:55 GMT (envelope-from zhouzhouyi@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT83s38075943 for perforce@freebsd.org; Sat, 29 Dec 2007 08:03:54 GMT (envelope-from zhouzhouyi@FreeBSD.org) Date: Sat, 29 Dec 2007 08:03:54 GMT Message-Id: <200712290803.lBT83s38075943@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zhouzhouyi@FreeBSD.org using -f From: Zhouyi ZHOU To: Perforce Change Reviews Cc: Subject: PERFORCE change 131953 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 08:03:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=131953 Change 131953 by zhouzhouyi@zhouzhouyi_mactest on 2007/12/29 08:03:24 style modification Affected files ... .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/bpf/00.t#5 edit .. //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/open/00.t#6 edit Differences ... ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/bpf/00.t#5 (text+ko) ==== @@ -28,13 +28,14 @@ t=`ifconfig mac_test0 192.167.0.33` t=`ifconfig mac_test1 192.167.1.34` -#ensuring there is no firewall thing + if [ -f ${mactest_conf} ]; then rm ${mactest_conf} fi touch ${mactest_conf} setfmac "mls/equal,biba/equal" ${mactest_conf} +#ensuring there is no firewall thing, and no timewait notreceived=`${macping} -f ${mactest_conf} -t 2 192.167.0.34` timewait=`netstat -p tcp|grep 111|grep TIME_WAIT` ==== //depot/projects/soc2007/zhouzhouyi_mactest_soc/regression/mactest/tests/open/00.t#6 (text+ko) ==== @@ -1,122 +1,135 @@ #!/bin/sh -# $FreeBSD: src/tools/regression/mactest/tests/open/00.t,v 1.2 2007/01/25 20:50:02 pjd Exp $ -# test of open related system calls -desc="open opens (and eventually creates) a file" +# $FreeBSD$ + +desc="test of mandatory access control of file operations" + dir=`dirname $0` . ${dir}/../misc.sh -echo "1..7" +case "${os}" in +FreeBSD) -n0=`namegen` -n1=`namegen` + mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` + mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` + mac_test_support=`sysctl -n security.mac.test.pseudoinit 2>/dev/null` + if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] && + [ "${mac_test_support}" != "" ]; then #turn off all the switches -for i in `sysctl security.mac | grep "\.enabled"| - sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do -sysctl ${i}=0 -done + for i in `sysctl security.mac | grep "\.enabled"| + sed 's/\([a-z\.]*\.enabled\)\(:\ \)\([01]\)/\1/`; do + sysctl ${i}=0 >/dev/null + done + + + if [ -f ${mactest_conf} ]; then + rm ${mactest_conf} + fi + touch ${mactest_conf} + setfmac "mls/equal,biba/equal" ${mactest_conf} + + echo "1..7" + + n0=`namegen` + n1=`namegen` + -mac_mls_support=`sysctl -n security.mac.mls.enabled 2>/dev/null` -mac_biba_support=`sysctl -n security.mac.biba.enabled 2>/dev/null` + dvplabel=`getfmac ".."| sed 's/\(\.\.:\ \)\([a-z\,\/]*\)/\2/`; -if [ "${mac_mls_support}" != "" ] && [ "${mac_biba_support}" != "" ] ; then - dvplabel=`getfmac ".."| sed 's/\(\.\.:\ \)\([a-z\,\/]*\)/\2/`; -############################################################# -#case mkdir: +#case 1 mkdir: #examine the label of its parent directory - echo -n "pid = -1 mac_test_check_vnode_lookup:" > ${mactest_conf} - echo "biba/high(low-high),mls/8(low-high) ${dvplabel}" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_lookup:" > ${mactest_conf} + echo "biba/high(low-high),mls/8(low-high) ${dvplabel}" >> ${mactest_conf} #check the label of its parent directory - echo -n "pid = -1 mac_test_check_vnode_create:" >> ${mactest_conf} - echo "biba/high(low-high),mls/8(low-high) ${dvplabel}" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_create:" >> ${mactest_conf} + echo "biba/high(low-high),mls/8(low-high) ${dvplabel}" >> ${mactest_conf} #init the label of currently created vnode - echo "pid = -1 mac_test_init_vnode_label" >> ${mactest_conf} + echo "pid = -1 vnode_init_label" >> ${mactest_conf} #associate the extattr of newly created vnode - echo -n "pid = -1 mac_test_create_vnode_extattr:" >> ${mactest_conf} - echo "biba/high(low-high),mls/8(low-high) * ${dvplabel} biba/high,mls/8" >> ${mactest_conf} - mactestexpect "" 0 -m "mls/8(low-high)" -f ${mactest_conf} mkdir ${n1} 0755 + echo -n "pid = -1 vnode_create_extattr:" >> ${mactest_conf} + echo "biba/high(low-high),mls/8(low-high) ${dvplabel} biba/high,mls/low" >> ${mactest_conf} + mactestexpect "" 0 -m "mls/8(low-high)" -f ${mactest_conf} mkdir ${n1} 0755 +#case 2 creative open: + cd ${n1} + echo -n "pid = -1 vnode_check_lookup:" > ${mactest_conf} + echo "biba/high(low-high),mls/9(low-high) biba/high,mls/8" >> ${mactest_conf} -############################################################# -#case creative open: - cd ${n1} - echo -n "pid = -1 mac_test_check_vnode_lookup:" > ${mactest_conf} - echo "biba/high(low-high),mls/9(low-high) biba/high,mls/8" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_create:" >> ${mactest_conf} + echo "biba/high(low-high),mls/9(low-high) biba/high,mls/8" >> ${mactest_conf} - echo -n "pid = -1 mac_test_check_vnode_create:" >> ${mactest_conf} - echo "biba/high(low-high),mls/9(low-high) biba/high,mls/8" >> ${mactest_conf} + echo "pid = -1 vnode_init_label" >> ${mactest_conf} - echo "pid = -1 mac_test_init_vnode_label" >> ${mactest_conf} + echo -n "pid = -1 vnode_create_extattr:" >> ${mactest_conf} + echo "biba/high(low-high),mls/9(low-high) biba/high,mls/low biba/high,mls/8" >> ${mactest_conf} - echo -n "pid = -1 mac_test_create_vnode_extattr:" >> ${mactest_conf} - echo "biba/high(low-high),mls/9(low-high) biba/high,mls/low biba/high,mls/8 biba/high,mls/9" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_open#VWRITE :" >> ${mactest_conf} + echo "biba/high(low-high),mls/9(low-high) biba/high,mls/9" >> ${mactest_conf} - echo -n "pid = -1 mac_test_check_vnode_open#VWRITE :" >> ${mactest_conf} - echo "biba/high(low-high),mls/9(low-high) biba/high,mls/9" >> ${mactest_conf} + mactestexpect "" 0 -m "mls/9(low-high)" -f ${mactest_conf} open ${n0} O_CREAT,O_WRONLY 0755 - mactestexpect "" 0 -m "mls/9(low-high)" -f ${mactest_conf} open ${n0} O_CREAT,O_WRONLY 0755 - - -############################################################# -#case lstat: +#case 3 lstat: #dvplabel is mls/8 - echo -n "pid = -1 mac_test_check_vnode_lookup with cr_label and dvplabel:" > ${mactest_conf} - echo "biba/high(low-high),mls/high(low-high) biba/high,mls/8" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_lookup:" > ${mactest_conf} + echo "biba/high(low-high),mls/high(low-high) biba/high,mls/8" >> ${mactest_conf} #no file label - echo -n "pid = -1 mac_test_check_vnode_stat with cred label, file label and vplabel:" >> ${mactest_conf} - echo "biba/high(low-high),mls/high(low-high) NULL biba/high,mls/9" >> ${mactest_conf} - mactestexpect "" regular,0755 -m "mls/high" -f ${mactest_conf} lstat ${n0} type,mode + echo -n "pid = -1 vnode_check_stat:" >> ${mactest_conf} + echo "biba/high(low-high),mls/high(low-high) biba/high,mls/9" >> ${mactest_conf} + mactestexpect "" regular,0755 -m "mls/high" -f ${mactest_conf} lstat ${n0} type,mode +#case 4,5 setflags: + echo -n "pid = -1 vnode_check_lookup:" > ${mactest_conf} + echo "biba/high(low-high),mls/low(low-high) biba/high,mls/8" >> ${mactest_conf} -############################################################# -#case setflags: - echo -n "pid = -1 mac_test_check_vnode_lookup with cr_label and dvplabel:" > ${mactest_conf} - echo "biba/high(low-high),mls/low(low-high) biba/high,mls/8" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_setflags:" > ${mactest_conf} + echo "biba/high(low-high),mls/low(low-high) biba/high,mls/9" >> ${mactest_conf} + mactestexpect "" 0 -f ${mactest_conf} chflags ${n0} SF_IMMUTABLE + mactestexpect "" 0 -f ${mactest_conf} chflags ${n0} none - echo -n "pid = -1 mac_test_check_vnode_setflags with cr_label and vplabel:" > ${mactest_conf} - echo "biba/high(low-high),mls/low(low-high) biba/high,mls/9" >> ${mactest_conf} - mactestexpect "" 0 -f ${mactest_conf} chflags ${n0} SF_IMMUTABLE - mactestexpect "" 0 -f ${mactest_conf} chflags ${n0} none - - -############################################################# -#case unlink: +#case 6 unlink: #This case will show complex of access control for mls directory structure #dvplabel is mls/8 - echo -n "pid = -1 mac_test_check_vnode_lookup with cr_label and dvplabel:" > ${mactest_conf} - echo "biba/high(low-high),mls/6(low-high) biba/high,mls/8" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_lookup:" > ${mactest_conf} + echo "biba/high(low-high),mls/6(low-high) biba/high,mls/8" >> ${mactest_conf} #the hook for delete - echo -n "pid = -1 mac_test_check_vnode_delete with cr_label dvplabel and vplabel:" >> ${mactest_conf} - echo "biba/high(low-high),mls/6(low-high) biba/high,mls/8 biba/high,mls/9" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_unlink:" >> ${mactest_conf} + echo "biba/high(low-high),mls/6(low-high) biba/high,mls/8 biba/high,mls/9" >> ${mactest_conf} - echo "pid = -1 mac_test_destroy_vnode_label" >> ${mactest_conf} - mactestexpect "" 0 -m "mls/6" -f ${mactest_conf} unlink ${n0} + echo "pid = -1 vnode_destroy_label" >> ${mactest_conf} + mactestexpect "" 0 -m "mls/6" -f ${mactest_conf} unlink ${n0} -############################################################# -#case chown: - echo -n "pid = -1 mac_test_check_vnode_lookup:" > ${mactest_conf} - echo "biba/high(low-high),mls/5(low-high) biba/high,mls/8" >> ${mactest_conf} +#case 7 chown: + echo -n "pid = -1 vnode_check_lookup:" > ${mactest_conf} + echo "biba/high(low-high),mls/5(low-high) biba/high,mls/8" >> ${mactest_conf} - echo -n "pid = -1 mac_test_check_vnode_setowner with cr_label and vplabel:" >> ${mactest_conf} - echo "biba/high(low-high),mls/5(low-high) biba/high,mls/8" >> ${mactest_conf} + echo -n "pid = -1 vnode_check_setowner:" >> ${mactest_conf} + echo "biba/high(low-high),mls/5(low-high) biba/high,mls/8" >> ${mactest_conf} + mactestexpect "" 0 -m "mls/5" -f ${mactest_conf} chown . 65535 65535 - mactestexpect "" 0 -m "mls/5" -f ${mactest_conf} chown . 65535 65535 #cleanup: - cd .. - rm -fr ${n1} -fi - + sysctl security.mac.mls.enabled=0 >/dev/null + sysctl security.mac.biba.enabled=0 > /dev/null + cd .. + rm -fr ${n1} + rm ${mactest_conf} +#mac_mls mac_biba and mac_test support + fi + ;; +*) + quick_exit + ;; +esac From owner-p4-projects@FreeBSD.ORG Sat Dec 29 08:03:56 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0708F16A50D; Sat, 29 Dec 2007 08:03:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7B49E16A419 for ; Sat, 29 Dec 2007 08:03:55 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6656913C4D1 for ; Sat, 29 Dec 2007 08:03:55 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT83tqJ075959 for ; Sat, 29 Dec 2007 08:03:55 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT83tsN075955 for perforce@freebsd.org; Sat, 29 Dec 2007 08:03:55 GMT (envelope-from peter@freebsd.org) Date: Sat, 29 Dec 2007 08:03:55 GMT Message-Id: <200712290803.lBT83tsN075955@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 131954 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 08:03:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=131954 Change 131954 by peter@peter_repocopy on 2007/12/29 08:03:36 Make portable across 32 vs 64 bit. Affected files ... .. //depot/projects/hammer/lib/libapr/apr.h#2 edit .. //depot/projects/hammer/lib/libapr/apr_private.h#2 edit Differences ... ==== //depot/projects/hammer/lib/libapr/apr.h#2 (text+ko) ==== @@ -265,8 +265,13 @@ typedef int apr_int32_t; typedef unsigned int apr_uint32_t; +#ifdef _LP64 typedef long apr_int64_t; typedef unsigned long apr_uint64_t; +#else +typedef long long apr_int64_t; +typedef unsigned long long apr_uint64_t; +#endif typedef size_t apr_size_t; typedef ssize_t apr_ssize_t; @@ -281,7 +286,11 @@ */ #define apr_ino_t apr_ino_t__requires__apr_file_info_h +#ifdef _LP64 #define APR_SIZEOF_VOIDP 8 +#else +#define APR_SIZEOF_VOIDP 4 +#endif /* Are we big endian? */ #define APR_IS_BIGENDIAN 0 @@ -355,25 +364,49 @@ * to find the logic for this definition search for "ssize_t_fmt" in * configure.in. */ +#ifdef _LP64 #define APR_SSIZE_T_FMT "ld" +#else +#define APR_SSIZE_T_FMT "d" +#endif /* And APR_SIZE_T_FMT */ +#ifdef _LP64 #define APR_SIZE_T_FMT "ld" +#else +#define APR_SIZE_T_FMT "d" +#endif /* And APR_OFF_T_FMT */ +#ifdef _LP64 #define APR_OFF_T_FMT "ld" +#else +#define APR_OFF_T_FMT APR_INT64_T_FMT +#endif /* And APR_PID_T_FMT */ #define APR_PID_T_FMT "d" /* And APR_INT64_T_FMT */ +#ifdef _LP64 #define APR_INT64_T_FMT "ld" +#else +#define APR_INT64_T_FMT "lld" +#endif /* And APR_UINT64_T_FMT */ +#ifdef _LP64 #define APR_UINT64_T_FMT "lu" +#else +#define APR_UINT64_T_FMT "llu" +#endif /* And APR_UINT64_T_HEX_FMT */ +#ifdef _LP64 #define APR_UINT64_T_HEX_FMT "lx" +#else +#define APR_UINT64_T_HEX_FMT "llx" +#endif /* Does the proc mutex lock threads too */ #define APR_PROC_MUTEX_IS_GLOBAL 0 ==== //depot/projects/hammer/lib/libapr/apr_private.h#2 (text+ko) ==== @@ -3,10 +3,18 @@ /* Define as function which can be used for conversion of strings to apr_int64_t */ +#ifdef _LP64 #define APR_INT64_STRFN strtol +#else +#define APR_INT64_STRFN strtoll +#endif /* Define as function used for conversion of strings to apr_off_t */ +#ifdef _LP64 #define APR_OFF_T_STRFN strtol +#else +#define APR_OFF_T_STRFN strtoll +#endif /* Define to path of random device */ #define DEV_RANDOM "/dev/random" @@ -670,7 +678,11 @@ #define SIZEOF_INT 4 /* The size of `long', as computed by sizeof. */ +#ifdef _LP64 #define SIZEOF_LONG 8 +#else +#define SIZEOF_LONG 4 +#endif /* The size of `long long', as computed by sizeof. */ #define SIZEOF_LONG_LONG 8 @@ -685,13 +697,25 @@ #define SIZEOF_SHORT 2 /* The size of size_t */ +#ifdef _LP64 #define SIZEOF_SIZE_T 8 +#else +#define SIZEOF_SIZE_T 4 +#endif /* The size of ssize_t */ +#ifdef _LP64 #define SIZEOF_SSIZE_T 8 +#else +#define SIZEOF_SSIZE_T 4 +#endif /* The size of `void*', as computed by sizeof. */ +#ifdef _LP64 #define SIZEOF_VOIDP 8 +#else +#define SIZEOF_VOIDP 4 +#endif /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 From owner-p4-projects@FreeBSD.ORG Sat Dec 29 08:19:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F258D16A41B; Sat, 29 Dec 2007 08:19:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9EC6E16A418 for ; Sat, 29 Dec 2007 08:19:11 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 943F613C465 for ; Sat, 29 Dec 2007 08:19:11 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT8JBsT081186 for ; Sat, 29 Dec 2007 08:19:11 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT8JBTJ081183 for perforce@freebsd.org; Sat, 29 Dec 2007 08:19:11 GMT (envelope-from kmacy@freebsd.org) Date: Sat, 29 Dec 2007 08:19:11 GMT Message-Id: <200712290819.lBT8JBTJ081183@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 131955 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 08:19:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131955 Change 131955 by kmacy@pandemonium:kmacy:xen31 on 2007/12/29 08:18:34 update to most recent hypercall interfaces still no clock interrupts :-( Affected files ... .. //depot/projects/xen31/sys/dev/xen/blkfront/blkfront.c#3 edit .. //depot/projects/xen31/sys/i386/include/xen/evtchn.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/hypercall.h#4 edit .. //depot/projects/xen31/sys/i386/include/xen/hypervisor-ifs.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/hypervisor.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/arch-x86_32.h#3 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/dom0_ops.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/event_channel.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/grant_table.h#3 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/memory.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/physdev.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/sched.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/vcpu.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/xen-compat.h#2 edit .. //depot/projects/xen31/sys/i386/include/xen/xen-public/xen.h#4 edit .. //depot/projects/xen31/sys/i386/xen/clock.c#2 edit .. //depot/projects/xen31/sys/i386/xen/xen_machdep.c#9 edit .. //depot/projects/xen31/sys/xen/evtchn/evtchn.c#2 edit .. //depot/projects/xen31/sys/xen/gnttab.c#2 edit .. //depot/projects/xen31/sys/xen/xenbus/xenbus_client.c#2 edit Differences ... ==== //depot/projects/xen31/sys/dev/xen/blkfront/blkfront.c#3 (text+ko) ==== @@ -336,7 +336,7 @@ err = xenbus_transaction_end(xbt, 0); if (err) { - if (err == EAGAIN) + if (err == -EAGAIN) goto again; xenbus_dev_fatal(dev, err, "completing transaction"); goto destroy_blkring; ==== //depot/projects/xen31/sys/i386/include/xen/evtchn.h#2 (text+ko) ==== @@ -66,10 +66,8 @@ static inline void notify_remote_via_evtchn(int port) { - evtchn_op_t op; - op.cmd = EVTCHNOP_send; - op.u.send.port = port; - (void)HYPERVISOR_event_channel_op(&op); + struct evtchn_send send = { .port = port }; + (void)HYPERVISOR_event_channel_op(EVTCHNOP_send, &send); } /* ==== //depot/projects/xen31/sys/i386/include/xen/hypercall.h#4 (text+ko) ==== @@ -124,7 +124,7 @@ static inline int HYPERVISOR_mmuext_op( - struct mmuext_op *op, int count, int *success_count, domid_t domid) + mmuext_op_t *op, int count, int *success_count, domid_t domid) { return _hypercall4(int, mmuext_op, op, count, success_count, domid); } @@ -175,15 +175,15 @@ unsigned long timeout_lo = (unsigned long)timeout; return _hypercall2(long, set_timer_op, timeout_lo, timeout_hi); } - +#if 0 static inline int -HYPERVISOR_dom0_op( - dom0_op_t *dom0_op) +HYPERVISOR_platform_op( + struct xen_platform_op *platform_op) { - dom0_op->interface_version = DOM0_INTERFACE_VERSION; - return _hypercall1(int, dom0_op, dom0_op); + platform_op->interface_version = XENPF_INTERFACE_VERSION; + return _hypercall1(int, platform_op, platform_op); } - +#endif static inline int HYPERVISOR_set_debugreg( int reg, unsigned long value) @@ -233,9 +233,9 @@ static inline int HYPERVISOR_event_channel_op( - void *op) + int cmd, void *op) { - return _hypercall1(int, event_channel_op, op); + return _hypercall2(int, event_channel_op, cmd, op); } static inline int @@ -254,9 +254,9 @@ static inline int HYPERVISOR_physdev_op( - void *physdev_op) + int cmd, void *physdev_op) { - return _hypercall1(int, physdev_op, physdev_op); + return _hypercall2(int, physdev_op, cmd, physdev_op); } static inline int @@ -302,7 +302,42 @@ return _hypercall3(int, sched_op, SCHEDOP_shutdown, &sched_shutdown, srec); } +#ifdef notyet +static inline int +HYPERVISOR_nmi_op( + unsigned long op, void *arg) +{ + return _hypercall2(int, nmi_op, op, arg); +} +static inline unsigned long +HYPERVISOR_hvm_op( + int op, void *arg) +{ + return _hypercall2(unsigned long, hvm_op, op, arg); +} + +static inline int +HYPERVISOR_callback_op( + int cmd, void *arg) +{ + return _hypercall2(int, callback_op, cmd, arg); +} + +static inline int +HYPERVISOR_xenoprof_op( + int op, void *arg) +{ + return _hypercall2(int, xenoprof_op, op, arg); +} + +static inline int +HYPERVISOR_kexec_op( + unsigned long op, void *args) +{ + return _hypercall2(int, kexec_op, op, args); +} +#endif #endif /* __HYPERCALL_H__ */ /* ==== //depot/projects/xen31/sys/i386/include/xen/hypervisor-ifs.h#2 (text+ko) ==== @@ -18,8 +18,8 @@ #endif } pte_t; -#define __XEN_INTERFACE_VERSION__ 0x00030101 #define CONFIG_XEN_BLKDEV_GRANT +#include #include #include #include ==== //depot/projects/xen31/sys/i386/include/xen/hypervisor.h#2 (text+ko) ==== @@ -36,6 +36,24 @@ static inline void HYPERVISOR_crash(void) __dead2; static inline int +HYPERVISOR_yield(void) +{ + int rc = HYPERVISOR_sched_op(SCHEDOP_yield, NULL); + + return rc; +} + +static inline int +HYPERVISOR_block( + void) +{ + int rc = HYPERVISOR_sched_op(SCHEDOP_block, NULL); + + return rc; +} + + +static inline int HYPERVISOR_shutdown(unsigned int reason) { struct sched_shutdown sched_shutdown = { @@ -60,10 +78,10 @@ evtchn_port_t *ports, unsigned int nr_ports, int ticks) { struct sched_poll sched_poll = { - .ports = ports, .nr_ports = nr_ports, .timeout = get_system_time(ticks) }; + set_xen_guest_handle(sched_poll.ports, ports); return HYPERVISOR_sched_op(SCHEDOP_poll, &sched_poll); } ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/arch-x86_32.h#3 (text+ko) ==== @@ -9,26 +9,24 @@ #ifndef __XEN_PUBLIC_ARCH_X86_32_H__ #define __XEN_PUBLIC_ARCH_X86_32_H__ -#ifdef __XEN__ -#define __DEFINE_GUEST_HANDLE(name, type) \ +#define __DEFINE_XEN_GUEST_HANDLE(name, type) \ typedef struct { type *p; } __guest_handle_ ## name -#else -#define __DEFINE_GUEST_HANDLE(name, type) \ - typedef type * __guest_handle_ ## name -#endif + +#define DEFINE_XEN_GUEST_HANDLE(name) __DEFINE_XEN_GUEST_HANDLE(name, name) +#define __XEN_GUEST_HANDLE(name) __guest_handle_ ## name +#define XEN_GUEST_HANDLE(name) __XEN_GUEST_HANDLE(name) +#define set_xen_guest_handle(hnd, val) do { (hnd).p = val; } while (0) -#define DEFINE_GUEST_HANDLE(name) __DEFINE_GUEST_HANDLE(name, name) -#define GUEST_HANDLE(name) __guest_handle_ ## name #ifndef __ASSEMBLY__ /* Guest handles for primitive C types. */ -__DEFINE_GUEST_HANDLE(uchar, unsigned char); -__DEFINE_GUEST_HANDLE(uint, unsigned int); -__DEFINE_GUEST_HANDLE(ulong, unsigned long); -DEFINE_GUEST_HANDLE(char); -DEFINE_GUEST_HANDLE(int); -DEFINE_GUEST_HANDLE(long); -DEFINE_GUEST_HANDLE(void); +__DEFINE_XEN_GUEST_HANDLE(uchar, unsigned char); +__DEFINE_XEN_GUEST_HANDLE(uint, unsigned int); +__DEFINE_XEN_GUEST_HANDLE(ulong, unsigned long); +DEFINE_XEN_GUEST_HANDLE(char); +DEFINE_XEN_GUEST_HANDLE(int); +DEFINE_XEN_GUEST_HANDLE(long); +DEFINE_XEN_GUEST_HANDLE(void); #endif /* @@ -102,7 +100,7 @@ uint16_t cs; /* code selector */ unsigned long address; /* code offset */ } trap_info_t; -DEFINE_GUEST_HANDLE(trap_info_t); +DEFINE_XEN_GUEST_HANDLE(trap_info_t); typedef struct cpu_user_regs { uint32_t ebx; @@ -126,7 +124,7 @@ uint16_t fs, _pad4; uint16_t gs, _pad5; } cpu_user_regs_t; -DEFINE_GUEST_HANDLE(cpu_user_regs_t); +DEFINE_XEN_GUEST_HANDLE(cpu_user_regs_t); typedef uint64_t tsc_timestamp_t; /* RDTSC timestamp */ @@ -154,7 +152,7 @@ unsigned long failsafe_callback_eip; unsigned long vm_assist; /* VMASST_TYPE_* bitmap */ } vcpu_guest_context_t; -DEFINE_GUEST_HANDLE(vcpu_guest_context_t); +DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t); typedef struct arch_shared_info { unsigned long max_pfn; /* max pfn that appears in table */ ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/dom0_ops.h#2 (text+ko) ==== @@ -28,21 +28,21 @@ /* IN variables. */ domid_t domain; unsigned long max_pfns; - GUEST_HANDLE(ulong) buffer; + XEN_GUEST_HANDLE(ulong) buffer; /* OUT variables. */ unsigned long num_pfns; } dom0_getmemlist_t; -DEFINE_GUEST_HANDLE(dom0_getmemlist_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getmemlist_t); #define DOM0_SCHEDCTL 6 /* struct sched_ctl_cmd is from sched-ctl.h */ typedef struct sched_ctl_cmd dom0_schedctl_t; -DEFINE_GUEST_HANDLE(dom0_schedctl_t); +DEFINE_XEN_GUEST_HANDLE(dom0_schedctl_t); #define DOM0_ADJUSTDOM 7 /* struct sched_adjdom_cmd is from sched-ctl.h */ typedef struct sched_adjdom_cmd dom0_adjustdom_t; -DEFINE_GUEST_HANDLE(dom0_adjustdom_t); +DEFINE_XEN_GUEST_HANDLE(dom0_adjustdom_t); #define DOM0_CREATEDOMAIN 8 typedef struct dom0_createdomain { @@ -53,28 +53,28 @@ /* Identifier for new domain (auto-allocate if zero is specified). */ domid_t domain; } dom0_createdomain_t; -DEFINE_GUEST_HANDLE(dom0_createdomain_t); +DEFINE_XEN_GUEST_HANDLE(dom0_createdomain_t); #define DOM0_DESTROYDOMAIN 9 typedef struct dom0_destroydomain { /* IN variables. */ domid_t domain; } dom0_destroydomain_t; -DEFINE_GUEST_HANDLE(dom0_destroydomain_t); +DEFINE_XEN_GUEST_HANDLE(dom0_destroydomain_t); #define DOM0_PAUSEDOMAIN 10 typedef struct dom0_pausedomain { /* IN parameters. */ domid_t domain; } dom0_pausedomain_t; -DEFINE_GUEST_HANDLE(dom0_pausedomain_t); +DEFINE_XEN_GUEST_HANDLE(dom0_pausedomain_t); #define DOM0_UNPAUSEDOMAIN 11 typedef struct dom0_unpausedomain { /* IN parameters. */ domid_t domain; } dom0_unpausedomain_t; -DEFINE_GUEST_HANDLE(dom0_unpausedomain_t); +DEFINE_XEN_GUEST_HANDLE(dom0_unpausedomain_t); #define DOM0_GETDOMAININFO 12 typedef struct dom0_getdomaininfo { @@ -100,7 +100,7 @@ uint32_t ssidref; xen_domain_handle_t handle; } dom0_getdomaininfo_t; -DEFINE_GUEST_HANDLE(dom0_getdomaininfo_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getdomaininfo_t); #define DOM0_SETVCPUCONTEXT 13 typedef struct dom0_setvcpucontext { @@ -108,9 +108,9 @@ domid_t domain; uint32_t vcpu; /* IN/OUT parameters */ - GUEST_HANDLE(vcpu_guest_context_t) ctxt; + XEN_GUEST_HANDLE(vcpu_guest_context_t) ctxt; } dom0_setvcpucontext_t; -DEFINE_GUEST_HANDLE(dom0_setvcpucontext_t); +DEFINE_XEN_GUEST_HANDLE(dom0_setvcpucontext_t); #define DOM0_MSR 15 typedef struct dom0_msr { @@ -124,7 +124,7 @@ uint32_t out1; uint32_t out2; } dom0_msr_t; -DEFINE_GUEST_HANDLE(dom0_msr_t); +DEFINE_XEN_GUEST_HANDLE(dom0_msr_t); /* * Set clock such that it would read after 00:00:00 UTC, @@ -137,7 +137,7 @@ uint32_t nsecs; uint64_t system_time; } dom0_settime_t; -DEFINE_GUEST_HANDLE(dom0_settime_t); +DEFINE_XEN_GUEST_HANDLE(dom0_settime_t); #define DOM0_GETPAGEFRAMEINFO 18 #define LTAB_SHIFT 28 @@ -159,7 +159,7 @@ /* Is the page PINNED to a type? */ uint32_t type; /* see above type defs */ } dom0_getpageframeinfo_t; -DEFINE_GUEST_HANDLE(dom0_getpageframeinfo_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getpageframeinfo_t); /* * Read console content from Xen buffer ring. @@ -169,10 +169,10 @@ /* IN variables. */ uint32_t clear; /* Non-zero -> clear after reading. */ /* IN/OUT variables. */ - GUEST_HANDLE(char) buffer; /* In: Buffer start; Out: Used buffer start */ + XEN_GUEST_HANDLE(char) buffer; /* In: Buffer start; Out: Used buffer start */ uint32_t count; /* In: Buffer size; Out: Used buffer size */ } dom0_readconsole_t; -DEFINE_GUEST_HANDLE(dom0_readconsole_t); +DEFINE_XEN_GUEST_HANDLE(dom0_readconsole_t); /* * Set which physical cpus a vcpu can execute on. @@ -184,7 +184,7 @@ uint32_t vcpu; cpumap_t cpumap; } dom0_setvcpuaffinity_t; -DEFINE_GUEST_HANDLE(dom0_setvcpuaffinity_t); +DEFINE_XEN_GUEST_HANDLE(dom0_setvcpuaffinity_t); /* Get trace buffers machine base address */ #define DOM0_TBUFCONTROL 21 @@ -204,7 +204,7 @@ unsigned long buffer_mfn; uint32_t size; } dom0_tbufcontrol_t; -DEFINE_GUEST_HANDLE(dom0_tbufcontrol_t); +DEFINE_XEN_GUEST_HANDLE(dom0_tbufcontrol_t); /* * Get physical information about the host machine @@ -220,7 +220,7 @@ unsigned long free_pages; uint32_t hw_cap[8]; } dom0_physinfo_t; -DEFINE_GUEST_HANDLE(dom0_physinfo_t); +DEFINE_XEN_GUEST_HANDLE(dom0_physinfo_t); /* * Get the ID of the current scheduler. @@ -230,7 +230,7 @@ /* OUT variable */ uint32_t sched_id; } dom0_sched_id_t; -DEFINE_GUEST_HANDLE(dom0_sched_id_t); +DEFINE_XEN_GUEST_HANDLE(dom0_sched_id_t); /* * Control shadow pagetables operation @@ -252,19 +252,19 @@ uint32_t dirty_net_count; uint32_t dirty_block_count; } dom0_shadow_control_stats_t; -DEFINE_GUEST_HANDLE(dom0_shadow_control_stats_t); +DEFINE_XEN_GUEST_HANDLE(dom0_shadow_control_stats_t); typedef struct dom0_shadow_control { /* IN variables. */ domid_t domain; uint32_t op; - GUEST_HANDLE(ulong) dirty_bitmap; + XEN_GUEST_HANDLE(ulong) dirty_bitmap; /* IN/OUT variables. */ unsigned long pages; /* size of buffer, updated with actual size */ /* OUT variables. */ dom0_shadow_control_stats_t stats; } dom0_shadow_control_t; -DEFINE_GUEST_HANDLE(dom0_shadow_control_t); +DEFINE_XEN_GUEST_HANDLE(dom0_shadow_control_t); #define DOM0_SETDOMAINMAXMEM 28 typedef struct dom0_setdomainmaxmem { @@ -272,7 +272,7 @@ domid_t domain; unsigned long max_memkb; } dom0_setdomainmaxmem_t; -DEFINE_GUEST_HANDLE(dom0_setdomainmaxmem_t); +DEFINE_XEN_GUEST_HANDLE(dom0_setdomainmaxmem_t); #define DOM0_GETPAGEFRAMEINFO2 29 /* batched interface */ typedef struct dom0_getpageframeinfo2 { @@ -280,9 +280,9 @@ domid_t domain; unsigned long num; /* IN/OUT variables. */ - GUEST_HANDLE(ulong) array; + XEN_GUEST_HANDLE(ulong) array; } dom0_getpageframeinfo2_t; -DEFINE_GUEST_HANDLE(dom0_getpageframeinfo2_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getpageframeinfo2_t); /* * Request memory range (@mfn, @mfn+@nr_mfns-1) to have type @type. @@ -301,7 +301,7 @@ uint32_t handle; uint32_t reg; } dom0_add_memtype_t; -DEFINE_GUEST_HANDLE(dom0_add_memtype_t); +DEFINE_XEN_GUEST_HANDLE(dom0_add_memtype_t); /* * Tear down an existing memory-range type. If @handle is remembered then it @@ -316,7 +316,7 @@ uint32_t handle; uint32_t reg; } dom0_del_memtype_t; -DEFINE_GUEST_HANDLE(dom0_del_memtype_t); +DEFINE_XEN_GUEST_HANDLE(dom0_del_memtype_t); /* Read current type of an MTRR (x86-specific). */ #define DOM0_READ_MEMTYPE 33 @@ -328,7 +328,7 @@ unsigned long nr_mfns; uint32_t type; } dom0_read_memtype_t; -DEFINE_GUEST_HANDLE(dom0_read_memtype_t); +DEFINE_XEN_GUEST_HANDLE(dom0_read_memtype_t); /* Interface for controlling Xen software performance counters. */ #define DOM0_PERFCCONTROL 34 @@ -340,23 +340,23 @@ uint32_t nr_vals; /* number of values for this counter */ uint32_t vals[64]; /* array of values */ } dom0_perfc_desc_t; -DEFINE_GUEST_HANDLE(dom0_perfc_desc_t); +DEFINE_XEN_GUEST_HANDLE(dom0_perfc_desc_t); typedef struct dom0_perfccontrol { /* IN variables. */ uint32_t op; /* DOM0_PERFCCONTROL_OP_??? */ /* OUT variables. */ uint32_t nr_counters; /* number of counters */ - GUEST_HANDLE(dom0_perfc_desc_t) desc; /* counter information (or NULL) */ + XEN_GUEST_HANDLE(dom0_perfc_desc_t) desc; /* counter information (or NULL) */ } dom0_perfccontrol_t; -DEFINE_GUEST_HANDLE(dom0_perfccontrol_t); +DEFINE_XEN_GUEST_HANDLE(dom0_perfccontrol_t); #define DOM0_MICROCODE 35 typedef struct dom0_microcode { /* IN variables. */ - GUEST_HANDLE(void) data; /* Pointer to microcode data */ + XEN_GUEST_HANDLE(void) data; /* Pointer to microcode data */ uint32_t length; /* Length of microcode data. */ } dom0_microcode_t; -DEFINE_GUEST_HANDLE(dom0_microcode_t); +DEFINE_XEN_GUEST_HANDLE(dom0_microcode_t); #define DOM0_IOPORT_PERMISSION 36 typedef struct dom0_ioport_permission { @@ -365,7 +365,7 @@ uint32_t nr_ports; /* size of port range */ uint8_t allow_access; /* allow or deny access to range? */ } dom0_ioport_permission_t; -DEFINE_GUEST_HANDLE(dom0_ioport_permission_t); +DEFINE_XEN_GUEST_HANDLE(dom0_ioport_permission_t); #define DOM0_GETVCPUCONTEXT 37 typedef struct dom0_getvcpucontext { @@ -373,9 +373,9 @@ domid_t domain; /* domain to be affected */ uint32_t vcpu; /* vcpu # */ /* OUT variables. */ - GUEST_HANDLE(vcpu_guest_context_t) ctxt; + XEN_GUEST_HANDLE(vcpu_guest_context_t) ctxt; } dom0_getvcpucontext_t; -DEFINE_GUEST_HANDLE(dom0_getvcpucontext_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getvcpucontext_t); #define DOM0_GETVCPUINFO 43 typedef struct dom0_getvcpuinfo { @@ -390,18 +390,18 @@ uint32_t cpu; /* current mapping */ cpumap_t cpumap; /* allowable mapping */ } dom0_getvcpuinfo_t; -DEFINE_GUEST_HANDLE(dom0_getvcpuinfo_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getvcpuinfo_t); #define DOM0_GETDOMAININFOLIST 38 typedef struct dom0_getdomaininfolist { /* IN variables. */ domid_t first_domain; uint32_t max_domains; - GUEST_HANDLE(dom0_getdomaininfo_t) buffer; + XEN_GUEST_HANDLE(dom0_getdomaininfo_t) buffer; /* OUT variables. */ uint32_t num_domains; } dom0_getdomaininfolist_t; -DEFINE_GUEST_HANDLE(dom0_getdomaininfolist_t); +DEFINE_XEN_GUEST_HANDLE(dom0_getdomaininfolist_t); #define DOM0_PLATFORM_QUIRK 39 #define QUIRK_NOIRQBALANCING 1 @@ -409,7 +409,7 @@ /* IN variables. */ uint32_t quirk_id; } dom0_platform_quirk_t; -DEFINE_GUEST_HANDLE(dom0_platform_quirk_t); +DEFINE_XEN_GUEST_HANDLE(dom0_platform_quirk_t); #define DOM0_PHYSICAL_MEMORY_MAP 40 typedef struct dom0_memory_map_entry { @@ -417,36 +417,36 @@ uint32_t flags; /* reserved */ uint8_t is_ram; } dom0_memory_map_entry_t; -DEFINE_GUEST_HANDLE(dom0_memory_map_entry_t); +DEFINE_XEN_GUEST_HANDLE(dom0_memory_map_entry_t); typedef struct dom0_physical_memory_map { /* IN variables. */ uint32_t max_map_entries; /* OUT variables. */ uint32_t nr_map_entries; - GUEST_HANDLE(dom0_memory_map_entry_t) memory_map; + XEN_GUEST_HANDLE(dom0_memory_map_entry_t) memory_map; } dom0_physical_memory_map_t; -DEFINE_GUEST_HANDLE(dom0_physical_memory_map_t); +DEFINE_XEN_GUEST_HANDLE(dom0_physical_memory_map_t); #define DOM0_MAX_VCPUS 41 typedef struct dom0_max_vcpus { domid_t domain; /* domain to be affected */ uint32_t max; /* maximum number of vcpus */ } dom0_max_vcpus_t; -DEFINE_GUEST_HANDLE(dom0_max_vcpus_t); +DEFINE_XEN_GUEST_HANDLE(dom0_max_vcpus_t); #define DOM0_SETDOMAINHANDLE 44 typedef struct dom0_setdomainhandle { domid_t domain; xen_domain_handle_t handle; } dom0_setdomainhandle_t; -DEFINE_GUEST_HANDLE(dom0_setdomainhandle_t); +DEFINE_XEN_GUEST_HANDLE(dom0_setdomainhandle_t); #define DOM0_SETDEBUGGING 45 typedef struct dom0_setdebugging { domid_t domain; uint8_t enable; } dom0_setdebugging_t; -DEFINE_GUEST_HANDLE(dom0_setdebugging_t); +DEFINE_XEN_GUEST_HANDLE(dom0_setdebugging_t); #define DOM0_IRQ_PERMISSION 46 typedef struct dom0_irq_permission { @@ -454,7 +454,7 @@ uint8_t pirq; uint8_t allow_access; /* flag to specify enable/disable of IRQ access */ } dom0_irq_permission_t; -DEFINE_GUEST_HANDLE(dom0_irq_permission_t); +DEFINE_XEN_GUEST_HANDLE(dom0_irq_permission_t); #define DOM0_IOMEM_PERMISSION 47 typedef struct dom0_iomem_permission { @@ -463,14 +463,14 @@ unsigned long nr_mfns; /* number of pages in range (>0) */ uint8_t allow_access; /* allow (!0) or deny (0) access to range? */ } dom0_iomem_permission_t; -DEFINE_GUEST_HANDLE(dom0_iomem_permission_t); +DEFINE_XEN_GUEST_HANDLE(dom0_iomem_permission_t); #define DOM0_HYPERCALL_INIT 48 typedef struct dom0_hypercall_init { domid_t domain; /* domain to be affected */ unsigned long mfn; /* machine frame to be initialised */ } dom0_hypercall_init_t; -DEFINE_GUEST_HANDLE(dom0_hypercall_init_t); +DEFINE_XEN_GUEST_HANDLE(dom0_hypercall_init_t); typedef struct dom0_op { uint32_t cmd; @@ -516,7 +516,7 @@ uint8_t pad[128]; } u; } dom0_op_t; -DEFINE_GUEST_HANDLE(dom0_op_t); +DEFINE_XEN_GUEST_HANDLE(dom0_op_t); #endif /* __XEN_PUBLIC_DOM0_OPS_H__ */ ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/event_channel.h#2 (text+ko) ==== @@ -10,7 +10,7 @@ #define __XEN_PUBLIC_EVENT_CHANNEL_H__ typedef uint32_t evtchn_port_t; -DEFINE_GUEST_HANDLE(evtchn_port_t); +DEFINE_XEN_GUEST_HANDLE(evtchn_port_t); /* * EVTCHNOP_alloc_unbound: Allocate a port in domain and mark as @@ -190,7 +190,7 @@ evtchn_unmask_t unmask; } u; } evtchn_op_t; -DEFINE_GUEST_HANDLE(evtchn_op_t); +DEFINE_XEN_GUEST_HANDLE(evtchn_op_t); #endif /* __XEN_PUBLIC_EVENT_CHANNEL_H__ */ ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/grant_table.h#3 (text+ko) ==== @@ -167,7 +167,7 @@ grant_handle_t handle; uint64_t dev_bus_addr; } gnttab_map_grant_ref_t; -DEFINE_GUEST_HANDLE(gnttab_map_grant_ref_t); +DEFINE_XEN_GUEST_HANDLE(gnttab_map_grant_ref_t); /* * GNTTABOP_unmap_grant_ref: Destroy one or more grant-reference mappings @@ -189,7 +189,7 @@ /* OUT parameters. */ int16_t status; /* GNTST_* */ } gnttab_unmap_grant_ref_t; -DEFINE_GUEST_HANDLE(gnttab_unmap_grant_ref_t); +DEFINE_XEN_GUEST_HANDLE(gnttab_unmap_grant_ref_t); /* * GNTTABOP_setup_table: Set up a grant table for comprising at least @@ -207,9 +207,9 @@ uint32_t nr_frames; /* OUT parameters. */ int16_t status; /* GNTST_* */ - GUEST_HANDLE(ulong) frame_list; + XEN_GUEST_HANDLE(ulong) frame_list; } gnttab_setup_table_t; -DEFINE_GUEST_HANDLE(gnttab_setup_table_t); +DEFINE_XEN_GUEST_HANDLE(gnttab_setup_table_t); /* * GNTTABOP_dump_table: Dump the contents of the grant table to the @@ -222,7 +222,7 @@ /* OUT parameters. */ int16_t status; /* GNTST_* */ } gnttab_dump_table_t; -DEFINE_GUEST_HANDLE(gnttab_dump_table_t); +DEFINE_XEN_GUEST_HANDLE(gnttab_dump_table_t); /* * GNTTABOP_transfer_grant_ref: Transfer to a foreign domain. The @@ -241,7 +241,7 @@ /* OUT parameters. */ int16_t status; } gnttab_transfer_t; -DEFINE_GUEST_HANDLE(gnttab_transfer_t); +DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t); /* * Bitfield values for update_pin_status.flags. ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/memory.h#2 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT: GMFN bases of extents that were allocated * (NB. This command also updates the mach_to_phys translation table) */ - GUEST_HANDLE(ulong) extent_start; + XEN_GUEST_HANDLE(ulong) extent_start; /* Number of extents, and size/alignment of each (2^extent_order pages). */ unsigned long nr_extents; @@ -50,7 +50,7 @@ domid_t domid; } xen_memory_reservation_t; -DEFINE_GUEST_HANDLE(xen_memory_reservation_t); +DEFINE_XEN_GUEST_HANDLE(xen_memory_reservation_t); /* * Returns the maximum machine frame number of mapped RAM in this system. @@ -86,7 +86,7 @@ * any large discontiguities in the machine address space, 2MB gaps in * the machphys table will be represented by an MFN base of zero. */ - GUEST_HANDLE(ulong) extent_start; + XEN_GUEST_HANDLE(ulong) extent_start; /* * Number of extents written to the above array. This will be smaller @@ -94,7 +94,7 @@ */ unsigned int nr_extents; } xen_machphys_mfn_list_t; -DEFINE_GUEST_HANDLE(xen_machphys_mfn_list_t); +DEFINE_XEN_GUEST_HANDLE(xen_machphys_mfn_list_t); /* * Sets the GPFN at which a particular page appears in the specified guest's @@ -117,7 +117,7 @@ /* GPFN where the source mapping page should appear. */ unsigned long gpfn; } xen_add_to_physmap_t; -DEFINE_GUEST_HANDLE(xen_add_to_physmap_t); +DEFINE_XEN_GUEST_HANDLE(xen_add_to_physmap_t); /* * Translates a list of domain-specific GPFNs into MFNs. Returns a -ve error @@ -132,15 +132,15 @@ unsigned long nr_gpfns; /* List of GPFNs to translate. */ - GUEST_HANDLE(ulong) gpfn_list; + XEN_GUEST_HANDLE(ulong) gpfn_list; /* * Output list to contain MFN translations. May be the same as the input * list (in which case each input GPFN is overwritten with the output MFN). */ - GUEST_HANDLE(ulong) mfn_list; + XEN_GUEST_HANDLE(ulong) mfn_list; } xen_translate_gpfn_list_t; -DEFINE_GUEST_HANDLE(xen_translate_gpfn_list_t); +DEFINE_XEN_GUEST_HANDLE(xen_translate_gpfn_list_t); #endif /* __XEN_PUBLIC_MEMORY_H__ */ ==== //depot/projects/xen31/sys/i386/include/xen/xen-public/physdev.h#2 (text+ko) ==== @@ -1,62 +1,160 @@ +/* + * 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 restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ #ifndef __XEN_PUBLIC_PHYSDEV_H__ #define __XEN_PUBLIC_PHYSDEV_H__ -/* Commands to HYPERVISOR_physdev_op() */ -#define PHYSDEVOP_IRQ_UNMASK_NOTIFY 4 -#define PHYSDEVOP_IRQ_STATUS_QUERY 5 -#define PHYSDEVOP_SET_IOPL 6 -#define PHYSDEVOP_SET_IOBITMAP 7 -#define PHYSDEVOP_APIC_READ 8 -#define PHYSDEVOP_APIC_WRITE 9 -#define PHYSDEVOP_ASSIGN_VECTOR 10 +/* + * Prototype for this hypercall is: + * int physdev_op(int cmd, void *args) + * @cmd == PHYSDEVOP_??? (physdev operation). + * @args == Operation-specific extra arguments (NULL if none). + */ + +/* + * Notify end-of-interrupt (EOI) for the specified IRQ. + * @arg == pointer to physdev_eoi structure. + */ +#define PHYSDEVOP_eoi 12 +struct physdev_eoi { + /* IN */ + uint32_t irq; +}; +typedef struct physdev_eoi physdev_eoi_t; +DEFINE_XEN_GUEST_HANDLE(physdev_eoi_t); -typedef struct physdevop_irq_status_query { +/* + * Query the status of an IRQ line. + * @arg == pointer to physdev_irq_status_query structure. + */ +#define PHYSDEVOP_irq_status_query 5 +struct physdev_irq_status_query { /* IN */ uint32_t irq; /* OUT */ -/* Need to call PHYSDEVOP_IRQ_UNMASK_NOTIFY when the IRQ has been serviced? */ -#define PHYSDEVOP_IRQ_NEEDS_UNMASK_NOTIFY (1<<0) - uint32_t flags; -} physdevop_irq_status_query_t; + uint32_t flags; /* XENIRQSTAT_* */ +}; +typedef struct physdev_irq_status_query physdev_irq_status_query_t; +DEFINE_XEN_GUEST_HANDLE(physdev_irq_status_query_t); + +/* Need to call PHYSDEVOP_eoi when the IRQ has been serviced? */ +#define _XENIRQSTAT_needs_eoi (0) +#define XENIRQSTAT_needs_eoi (1U<<_XENIRQSTAT_needs_eoi) + +/* IRQ shared by multiple guests? */ +#define _XENIRQSTAT_shared (1) +#define XENIRQSTAT_shared (1U<<_XENIRQSTAT_shared) -typedef struct physdevop_set_iopl { +/* + * Set the current VCPU's I/O privilege level. + * @arg == pointer to physdev_set_iopl structure. + */ +#define PHYSDEVOP_set_iopl 6 +struct physdev_set_iopl { /* IN */ uint32_t iopl; -} physdevop_set_iopl_t; +}; +typedef struct physdev_set_iopl physdev_set_iopl_t; +DEFINE_XEN_GUEST_HANDLE(physdev_set_iopl_t); -typedef struct physdevop_set_iobitmap { +/* + * Set the current VCPU's I/O-port permissions bitmap. + * @arg == pointer to physdev_set_iobitmap structure. + */ +#define PHYSDEVOP_set_iobitmap 7 +struct physdev_set_iobitmap { /* IN */ - uint8_t *bitmap; + XEN_GUEST_HANDLE_00030205(uint8_t) bitmap; uint32_t nr_ports; -} physdevop_set_iobitmap_t; +}; +typedef struct physdev_set_iobitmap physdev_set_iobitmap_t; +DEFINE_XEN_GUEST_HANDLE(physdev_set_iobitmap_t); -typedef struct physdevop_apic { +/* + * Read or write an IO-APIC register. + * @arg == pointer to physdev_apic structure. + */ +#define PHYSDEVOP_apic_read 8 +#define PHYSDEVOP_apic_write 9 +struct physdev_apic { /* IN */ unsigned long apic_physbase; uint32_t reg; /* IN or OUT */ uint32_t value; -} physdevop_apic_t; +}; +typedef struct physdev_apic physdev_apic_t; +DEFINE_XEN_GUEST_HANDLE(physdev_apic_t); -typedef struct physdevop_irq { +/* + * Allocate or free a physical upcall vector for the specified IRQ line. + * @arg == pointer to physdev_irq structure. + */ +#define PHYSDEVOP_alloc_irq_vector 10 +#define PHYSDEVOP_free_irq_vector 11 +struct physdev_irq { /* IN */ uint32_t irq; - /* OUT */ + /* IN or OUT */ uint32_t vector; -} physdevop_irq_t; +}; +typedef struct physdev_irq physdev_irq_t; +DEFINE_XEN_GUEST_HANDLE(physdev_irq_t); -typedef struct physdev_op { +/* + * Argument to physdev_op_compat() hypercall. Superceded by new physdev_op() + * hypercall since 0x00030202. + */ +struct physdev_op { uint32_t cmd; union { - physdevop_irq_status_query_t irq_status_query; - physdevop_set_iopl_t set_iopl; - physdevop_set_iobitmap_t set_iobitmap; - physdevop_apic_t apic_op; - physdevop_irq_t irq_op; + struct physdev_irq_status_query irq_status_query; + struct physdev_set_iopl set_iopl; + struct physdev_set_iobitmap set_iobitmap; + struct physdev_apic apic_op; + struct physdev_irq irq_op; } u; -} physdev_op_t; -DEFINE_GUEST_HANDLE(physdev_op_t); +}; +typedef struct physdev_op physdev_op_t; +DEFINE_XEN_GUEST_HANDLE(physdev_op_t); + +/* + * Notify that some PIRQ-bound event channels have been unmasked. + * ** This command is obsolete since interface version 0x00030202 and is ** + * ** unsupported by newer versions of Xen. ** + */ +#define PHYSDEVOP_IRQ_UNMASK_NOTIFY 4 + +/* + * These all-capitals physdev operation names are superceded by the new names + * (defined above) since interface version 0x00030202. + */ +#define PHYSDEVOP_IRQ_STATUS_QUERY PHYSDEVOP_irq_status_query +#define PHYSDEVOP_SET_IOPL PHYSDEVOP_set_iopl +#define PHYSDEVOP_SET_IOBITMAP PHYSDEVOP_set_iobitmap +#define PHYSDEVOP_APIC_READ PHYSDEVOP_apic_read +#define PHYSDEVOP_APIC_WRITE PHYSDEVOP_apic_write +#define PHYSDEVOP_ASSIGN_VECTOR PHYSDEVOP_alloc_irq_vector +#define PHYSDEVOP_FREE_VECTOR PHYSDEVOP_free_irq_vector +#define PHYSDEVOP_IRQ_NEEDS_UNMASK_NOTIFY XENIRQSTAT_needs_eoi >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Dec 29 08:32:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 929C416A41B; Sat, 29 Dec 2007 08:32:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 58A4A16A419 for ; Sat, 29 Dec 2007 08:32:25 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4F10813C448 for ; Sat, 29 Dec 2007 08:32:25 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBT8WP8T086327 for ; Sat, 29 Dec 2007 08:32:25 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBT8WPGb086324 for perforce@freebsd.org; Sat, 29 Dec 2007 08:32:25 GMT (envelope-from peter@freebsd.org) Date: Sat, 29 Dec 2007 08:32:25 GMT Message-Id: <200712290832.lBT8WPGb086324@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 131956 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 08:32:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131956 Change 131956 by peter@peter_repocopy on 2007/12/29 08:32:04 Switch between 32 and 64 bit host on the fly Affected files ... .. //depot/projects/hammer/gnu/lib/libneon/config.h#2 edit Differences ... ==== //depot/projects/hammer/gnu/lib/libneon/config.h#2 (text+ko) ==== @@ -245,16 +245,32 @@ /* #undef NE_FMT_OFF64_T */ /* Define to be printf format string for off_t */ +#ifdef _LP64 #define NE_FMT_OFF_T "ld" +#else +#define NE_FMT_OFF_T "lld" +#endif /* Define to be printf format string for size_t */ +#ifdef _LP64 #define NE_FMT_SIZE_T "lu" +#else +#define NE_FMT_SIZE_T "u" +#endif /* Define to be printf format string for ssize_t */ +#ifdef _LP64 #define NE_FMT_SSIZE_T "ld" +#else +#define NE_FMT_SSIZE_T "d" +#endif /* Define to be printf format string for time_t */ +#ifdef _LP64 #define NE_FMT_TIME_T "ld" +#else +#define NE_FMT_TIME_T "d" +#endif /* Defined if DAV is supported */ #define NE_HAVE_DAV 1 @@ -314,7 +330,11 @@ #define SIZEOF_INT 4 /* The size of a `long', as computed by sizeof. */ +#ifdef _LP64 #define SIZEOF_LONG 8 +#else +#define SIZEOF_LONG 4 +#endif /* The size of a `long long', as computed by sizeof. */ #define SIZEOF_LONG_LONG 8 @@ -326,13 +346,25 @@ #define SIZEOF_OFF_T 8 /* The size of a `size_t', as computed by sizeof. */ +#ifdef _LP64 #define SIZEOF_SIZE_T 8 +#else +#define SIZEOF_SIZE_T 4 +#endif /* The size of a `ssize_t', as computed by sizeof. */ +#ifdef _LP64 #define SIZEOF_SSIZE_T 8 +#else +#define SIZEOF_SSIZE_T 4 +#endif /* The size of a `time_t', as computed by sizeof. */ +#ifdef _LP64 #define SIZEOF_TIME_T 8 +#else +#define SIZEOF_TIME_T 4 +#endif /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 From owner-p4-projects@FreeBSD.ORG Sat Dec 29 12:27:28 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 08BCF16A469; Sat, 29 Dec 2007 12:27:28 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C277716A417 for ; Sat, 29 Dec 2007 12:27:27 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9E79F13C459 for ; Sat, 29 Dec 2007 12:27:27 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTCRRa9091497 for ; Sat, 29 Dec 2007 12:27:27 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTCRRHu091494 for perforce@freebsd.org; Sat, 29 Dec 2007 12:27:27 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 29 Dec 2007 12:27:27 GMT Message-Id: <200712291227.lBTCRRHu091494@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 131959 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 12:27:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=131959 Change 131959 by hselasky@hselasky_laptop001 on 2007/12/29 12:26:56 Fix compile warning: Unused label. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#9 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#9 (text+ko) ==== @@ -610,7 +610,9 @@ uint32_t csr; uint32_t temp; +#if 0 repeat: +#endif /* read out FIFO status */ csr = bus_space_read_4(td->io_tag, td->io_hdl, From owner-p4-projects@FreeBSD.ORG Sat Dec 29 12:36:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9DE2A16A41B; Sat, 29 Dec 2007 12:36:37 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4AF5F16A419 for ; Sat, 29 Dec 2007 12:36:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3EF6913C442 for ; Sat, 29 Dec 2007 12:36:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTCabpO095313 for ; Sat, 29 Dec 2007 12:36:37 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTCaaPq095310 for perforce@freebsd.org; Sat, 29 Dec 2007 12:36:36 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 29 Dec 2007 12:36:36 GMT Message-Id: <200712291236.lBTCaaPq095310@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 131960 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 12:36:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=131960 Change 131960 by hselasky@hselasky_laptop001 on 2007/12/29 12:36:07 High Speed USB requires some more descriptors to be fully USB specification compliant in USB Device Side mode. This mostly is related to the other speed descriptors. Simplify the way we lookup the device descriptor by introducing a new structure called "struct usb_temp_data". Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#89 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#11 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template.h#7 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#89 (text+ko) ==== @@ -108,6 +108,7 @@ struct usbd_temp_setup; struct usb_callout; struct usb_temp_device_desc; +struct usb_temp_data; struct module; struct malloc_type; struct proc; @@ -440,7 +441,7 @@ device_t global_dev; struct usb_device *linux_dev; struct usbd_xfer *default_xfer[1]; - void *usb_template_ptr; + struct usb_temp_data *usb_template_ptr; uint16_t refcount; #define USB_DEV_REFCOUNT_MAX 0xffff ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#11 (text+ko) ==== @@ -294,22 +294,14 @@ usbd_make_device_desc(struct usbd_temp_setup *temp, const struct usb_temp_device_desc *tdd) { - usb_device_descriptor_t *dd; - const void **pp; + struct usb_temp_data *utd; const struct usb_temp_config_desc **tcd; uint16_t old_size; - /* Store a pointer to our template device descriptor */ - if (temp->buf) { - pp = USBD_ADD_BYTES(temp->buf, temp->size); - *pp = tdd; - } - temp->size += sizeof(void *); - /* Reserve memory */ old_size = temp->size; - temp->size += sizeof(*dd); + temp->size += sizeof(*utd); /* Scan all the USB configs */ @@ -328,36 +320,57 @@ */ if (temp->buf) { - dd = USBD_ADD_BYTES(temp->buf, old_size); - dd->bLength = sizeof(*dd); - dd->bDescriptorType = UDESC_DEVICE; - dd->bDeviceClass = tdd->bDeviceClass; - dd->bDeviceSubClass = tdd->bDeviceSubClass; - dd->bDeviceProtocol = tdd->bDeviceProtocol; - USETW(dd->idVendor, tdd->idVendor); - USETW(dd->idProduct, tdd->idProduct); - USETW(dd->bcdDevice, tdd->bcdDevice); - dd->iManufacturer = tdd->iManufacturer; - dd->iProduct = tdd->iProduct; - dd->iSerialNumber = tdd->iSerialNumber; - dd->bNumConfigurations = temp->bConfigurationValue - 1; + utd = USBD_ADD_BYTES(temp->buf, old_size); + + /* Store a pointer to our template device descriptor */ + utd->tdd = tdd; + + /* Fill out USB device descriptor */ + utd->udd.bLength = sizeof(utd->udd); + utd->udd.bDescriptorType = UDESC_DEVICE; + utd->udd.bDeviceClass = tdd->bDeviceClass; + utd->udd.bDeviceSubClass = tdd->bDeviceSubClass; + utd->udd.bDeviceProtocol = tdd->bDeviceProtocol; + USETW(utd->udd.idVendor, tdd->idVendor); + USETW(utd->udd.idProduct, tdd->idProduct); + USETW(utd->udd.bcdDevice, tdd->bcdDevice); + utd->udd.iManufacturer = tdd->iManufacturer; + utd->udd.iProduct = tdd->iProduct; + utd->udd.iSerialNumber = tdd->iSerialNumber; + utd->udd.bNumConfigurations = temp->bConfigurationValue - 1; + + /* + * Fill out the USB device qualifier. Pretend that we + * don't support any other speeds by setting + * "bNumConfigurations" equal to zero. That saves us + * generating an extra set of configuration + * descriptors. + */ + utd->udq.bLength = sizeof(utd->udq); + utd->udq.bDescriptorType = UDESC_DEVICE_QUALIFIER; + utd->udq.bDeviceClass = tdd->bDeviceClass; + utd->udq.bDeviceSubClass = tdd->bDeviceSubClass; + utd->udq.bDeviceProtocol = tdd->bDeviceProtocol; + utd->udq.bNumConfigurations = 0; + USETW(utd->udq.bcdUSB, 0x0200); + utd->udq.bMaxPacketSize0 = 0; switch (temp->usb_speed) { case USB_SPEED_LOW: - USETW(dd->bcdUSB, 0x0101); - dd->bMaxPacketSize = 8; + USETW(utd->udd.bcdUSB, 0x0101); + utd->udd.bMaxPacketSize = 8; break; case USB_SPEED_FULL: - USETW(dd->bcdUSB, 0x0101); - dd->bMaxPacketSize = 32; + USETW(utd->udd.bcdUSB, 0x0101); + utd->udd.bMaxPacketSize = 32; break; case USB_SPEED_HIGH: - USETW(dd->bcdUSB, 0x0200); - dd->bMaxPacketSize = 64; + USETW(utd->udd.bcdUSB, 0x0200); + utd->udd.bMaxPacketSize = 64; break; case USB_SPEED_VARIABLE: - USETW(dd->bcdUSB, 0x0250); - dd->bMaxPacketSize = 255; /* 512 bytes */ + USETW(utd->udd.bcdUSB, 0x0250); + utd->udd.bMaxPacketSize = 255; /* 512 bytes */ break; default: temp->err = USBD_INVAL; @@ -780,13 +793,10 @@ static const struct usb_temp_device_desc * usbd_temp_get_tdd(struct usbd_device *udev) { - const void **pp; - - pp = udev->usb_template_ptr; - if (pp == NULL) { + if (udev->usb_template_ptr == NULL) { return (NULL); } - return (*pp); + return (udev->usb_template_ptr->tdd); } /*------------------------------------------------------------------------* @@ -801,11 +811,10 @@ { usb_device_descriptor_t *dd; - dd = udev->usb_template_ptr; - if (dd == NULL) { + if (udev->usb_template_ptr == NULL) { return (NULL); } - dd = USBD_ADD_BYTES(dd, sizeof(void *)); + dd = &(udev->usb_template_ptr->udd); if (dd->bDescriptorType != UDESC_DEVICE) { /* sanity check failed */ return (NULL); @@ -814,6 +823,29 @@ } /*------------------------------------------------------------------------* + * usbd_temp_get_qualifier_desc + * + * Returns: + * NULL: No USB device_qualifier descriptor found. + * Else: Pointer to USB device_qualifier descriptor. + *------------------------------------------------------------------------*/ +static void * +usbd_temp_get_qualifier_desc(struct usbd_device *udev) +{ + usb_device_qualifier_t *dq; + + if (udev->usb_template_ptr == NULL) { + return (NULL); + } + dq = &(udev->usb_template_ptr->udq); + if (dq->bDescriptorType != UDESC_DEVICE_QUALIFIER) { + /* sanity check failed */ + return (NULL); + } + return (dq); +} + +/*------------------------------------------------------------------------* * usbd_temp_get_config_desc * * Returns: @@ -828,16 +860,16 @@ usb_config_descriptor_t *cd; uint16_t temp; - dd = usbd_temp_get_device_desc(udev); - if (dd == NULL) { + if (udev->usb_template_ptr == NULL) { return (NULL); } + dd = &(udev->usb_template_ptr->udd); + cd = (void *)(udev->usb_template_ptr + 1); + if (index >= dd->bNumConfigurations) { /* out of range */ return (NULL); } - cd = USBD_ADD_BYTES(dd, dd->bLength); - while (index--) { if (cd->bDescriptorType != UDESC_CONFIG) { /* sanity check failed */ @@ -928,11 +960,24 @@ tr_handle_get_descriptor: switch (req->wValue[1]) { case UDESC_DEVICE: - if (req->wValue[0] & 0xff) { + if (req->wValue[0]) { goto tr_stalled; } buf = usbd_temp_get_device_desc(udev); goto tr_valid; + case UDESC_DEVICE_QUALIFIER: + if (udev->speed != USB_SPEED_HIGH) { + goto tr_stalled; + } + if (req->wValue[0]) { + goto tr_stalled; + } + buf = usbd_temp_get_qualifier_desc(udev); + goto tr_valid; + case UDESC_OTHER_SPEED_CONFIGURATION: + if (udev->speed != USB_SPEED_HIGH) { + goto tr_stalled; + } case UDESC_CONFIG: buf = usbd_temp_get_config_desc(udev, &len, req->wValue[0]); @@ -947,7 +992,7 @@ goto tr_stalled; tr_handle_get_class_descriptor: - if (req->wValue[0] & 0xFF) { + if (req->wValue[0]) { goto tr_stalled; } buf = usbd_temp_get_hub_desc(udev); ==== //depot/projects/usb/src/sys/dev/usb/usb_template.h#7 (text+ko) ==== @@ -80,6 +80,12 @@ uint8_t iSerialNumber; }; +struct usb_temp_data { + const struct usb_temp_device_desc *tdd; + usb_device_descriptor_t udd; /* device descriptor */ + usb_device_qualifier_t udq; /* device qualifier */ +}; + /* prototypes */ extern const struct usb_temp_device_desc usb_template_cdce; From owner-p4-projects@FreeBSD.ORG Sat Dec 29 15:22:17 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B7F316A473; Sat, 29 Dec 2007 15:22:17 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3B72416A46C for ; Sat, 29 Dec 2007 15:22:17 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2997F13C448 for ; Sat, 29 Dec 2007 15:22:17 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTFMGlP074675 for ; Sat, 29 Dec 2007 15:22:17 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTFMGa8074656 for perforce@freebsd.org; Sat, 29 Dec 2007 15:22:16 GMT (envelope-from imp@freebsd.org) Date: Sat, 29 Dec 2007 15:22:16 GMT Message-Id: <200712291522.lBTFMGa8074656@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 131966 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 15:22:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=131966 Change 131966 by imp@imp_paco-paco on 2007/12/29 15:22:10 Branch from mips2 @131856 to merge juniper-mips stuff. Affected files ... .. //depot/projects/mips2-jnpr/src/COPYRIGHT#1 branch .. //depot/projects/mips2-jnpr/src/EMULATION#1 branch .. //depot/projects/mips2-jnpr/src/LOCKS#1 branch .. //depot/projects/mips2-jnpr/src/MAINTAINERS#1 branch .. //depot/projects/mips2-jnpr/src/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/Makefile.inc1#1 branch .. //depot/projects/mips2-jnpr/src/NOTES#1 branch .. //depot/projects/mips2-jnpr/src/ObsoleteFiles.inc#1 branch .. //depot/projects/mips2-jnpr/src/README#1 branch .. //depot/projects/mips2-jnpr/src/TODO#1 branch .. //depot/projects/mips2-jnpr/src/UPDATING#1 branch .. //depot/projects/mips2-jnpr/src/bin/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/Makefile.inc#1 branch .. //depot/projects/mips2-jnpr/src/bin/cat/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/cat/cat.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/cat/cat.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/chflags/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/chflags/chflags.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/chflags/chflags.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/chio/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/chio/chio.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/chio/chio.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/chio/defs.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/chio/pathnames.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/chmod/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/chmod/chmod.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/chmod/chmod.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/cp/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/cp/cp.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/cp/cp.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/cp/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/cp/utils.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/csh.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/csh.2#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/csh.3#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/csh.4#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/csh.a#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/csh.g#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/USD.doc/tabs#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/config.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/config_p.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/host.defs#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/iconv.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/csh/iconv_stub.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/date.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/date.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/netdate.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/vary.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/date/vary.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/args.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/conv.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/conv_tab.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/dd.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/dd.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/dd.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/gen.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/misc.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/position.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.ascii#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.ebcdic#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.ibm#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.lcase#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.oldascii#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.oldebcdic#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.oldibm#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.pareven#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.parnone#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.parodd#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.parset#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.swab#1 branch .. //depot/projects/mips2-jnpr/src/bin/dd/ref.ucase#1 branch .. //depot/projects/mips2-jnpr/src/bin/df/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/df/df.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/df/df.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/domainname/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/domainname/domainname.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/domainname/domainname.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/echo/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/echo/echo.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/echo/echo.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/POSIX#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/README#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/buf.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/cbc.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/ed.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/ed.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/glbl.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/io.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/main.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/re.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/sub.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/=.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/README#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/TODO#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/a.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/a.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/a.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/a1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/a2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/addr.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/addr.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/addr.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/addr1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/addr2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/ascii.d.uu#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/ascii.r.uu#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/ascii.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/bang1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/bang1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/bang1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/bang1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/bang2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/c.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/c.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/c.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/c1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/c2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/ckscripts.sh#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/d.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/d.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/d.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/d.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e2.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e2.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e2.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e3.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e3.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e3.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e3.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e4.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e4.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/e4.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/f1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/f2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g2.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g2.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g2.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g3.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g3.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g3.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g3.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g4.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g4.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g4.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g5.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g5.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/g5.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/h.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/i.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/i.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/i.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/i1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/i2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/i3.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/j.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/j.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/j.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k3.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/k4.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/l.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/l.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/l.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/m.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/m.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/m.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/m.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/mkscripts.sh#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/n.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/n.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/n.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl2.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl2.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/nl2.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/p.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/p.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/p.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/q.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/q.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/q.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/q1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r2.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r2.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r2.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r3.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r3.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/r3.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s10.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s2.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s2.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s2.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s3.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s3.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s3.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s3.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s4.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s5.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s6.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s7.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s8.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/s9.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t1.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t1.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t1.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t2.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t2.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/t2.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/u.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/u.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/u.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/u.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/v.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/v.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/v.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/w.d#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/w.r#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/w.t#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/w1.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/w2.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/w3.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/x.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/test/z.err#1 branch .. //depot/projects/mips2-jnpr/src/bin/ed/undo.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/expr/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/expr/expr.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/expr/expr.y#1 branch .. //depot/projects/mips2-jnpr/src/bin/getfacl/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/getfacl/getfacl.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/getfacl/getfacl.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/hostname/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/hostname/hostname.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/hostname/hostname.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/kenv/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/kenv/kenv.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/kenv/kenv.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/kill/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/kill/kill.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/kill/kill.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ln/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/ln/ln.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/ln/ln.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ln/symlink.7#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/cmp.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/ls.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/ls.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/ls.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/print.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ls/util.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/mkdir/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/mkdir/mkdir.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/mkdir/mkdir.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/mv/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/mv/mv.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/mv/mv.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/ar_io.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/ar_subs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/buf_subs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/cache.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/cache.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/cpio.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/cpio.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/cpio.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/file_subs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/ftree.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/ftree.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/gen_subs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/getoldopt.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/options.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/options.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/pat_rep.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/pat_rep.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/pax.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/pax.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/pax.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/sel_subs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/sel_subs.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/tables.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/tables.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/tar.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/tar.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/tar.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pax/tty_subs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/fmt.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/keyword.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/nlist.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/print.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/ps.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/ps.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/ps/ps.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/pwd/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/pwd/pwd.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/pwd/pwd.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/rcp/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/rcp/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/rcp/rcp.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/rcp/rcp.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/rcp/util.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/realpath/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/realpath/realpath.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/realpath/realpath.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/rm/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/rm/rm.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/rm/rm.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/rmail/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/rmdir/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/rmdir/rmdir.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/rmdir/rmdir.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/file.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/mask.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/merge.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/remove.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/setfacl.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/setfacl.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/setfacl.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/setfacl/util.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/TOUR#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/alias.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/alias.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/arith.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/arith.y#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/arith_lex.l#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/bltin/bltin.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/bltin/echo.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/bltin/echo.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/builtins.def#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/cd.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/cd.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/error.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/error.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/eval.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/eval.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/exec.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/exec.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/expand.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/expand.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/cmv#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/dirs#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/kill#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/login#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/newgrp#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/popd#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/pushd#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/funcs/suspend#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/histedit.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/init.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/input.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/input.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/jobs.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/jobs.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mail.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mail.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/main.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/main.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/memalloc.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/memalloc.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/miscbltin.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mkbuiltins#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mkinit.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mknodes.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mksyntax.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mktokens#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/myhistedit.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mystring.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/mystring.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/nodes.c.pat#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/nodetypes#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/options.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/options.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/output.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/output.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/parser.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/parser.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/redir.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/redir.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/sh.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/shell.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/show.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/show.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/trap.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/trap.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/var.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sh/var.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/sleep/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/sleep/sleep.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/sleep/sleep.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/cchar.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/extern.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/gfmt.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/key.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/modes.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/print.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/stty.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/stty.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/stty.h#1 branch .. //depot/projects/mips2-jnpr/src/bin/stty/util.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/sync/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/sync/sync.8#1 branch .. //depot/projects/mips2-jnpr/src/bin/sync/sync.c#1 branch .. //depot/projects/mips2-jnpr/src/bin/test/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/bin/test/TEST.README#1 branch .. //depot/projects/mips2-jnpr/src/bin/test/TEST.csh#1 branch .. //depot/projects/mips2-jnpr/src/bin/test/TEST.sh#1 branch .. //depot/projects/mips2-jnpr/src/bin/test/test.1#1 branch .. //depot/projects/mips2-jnpr/src/bin/test/test.c#1 branch .. //depot/projects/mips2-jnpr/src/cddl/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/Makefile.inc#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/Makefile.inc#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/libavl/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/libnvpair/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/libumem/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/libuutil/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/libzfs/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/lib/libzpool/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/sbin/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/sbin/Makefile.inc#1 branch .. //depot/projects/mips2-jnpr/src/cddl/sbin/zfs/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/sbin/zpool/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/usr.bin/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/usr.bin/Makefile.inc#1 branch .. //depot/projects/mips2-jnpr/src/cddl/usr.bin/ztest/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/usr.sbin/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/cddl/usr.sbin/Makefile.inc#1 branch .. //depot/projects/mips2-jnpr/src/cddl/usr.sbin/zdb/Makefile#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/alloca.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/devid.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/fcntl.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/fsshare.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/libintl.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/mnttab.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/priv.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/solaris.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/stdio.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/stdlib.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/strings.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/unistd.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/include/zone.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/lib/libumem/umem.c#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/lib/libumem/umem.h#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/misc/deviceid.c#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/misc/fsshare.c#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/misc/mkdirp.c#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/misc/mnttab.c#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/misc/zmount.c#1 branch .. //depot/projects/mips2-jnpr/src/compat/opensolaris/misc/zone.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/AUTHORS#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/BUGS#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/COPYING#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/ChangeLog#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/FAQ#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/FREEBSD-Xlist#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/FREEBSD-upgrade#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/INSTALL#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/MIRRORS.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/MIRRORS.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/NEWS#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/README#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/README.attrcache#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/README.ldap#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/README.y2k#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/am_ops.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amd.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amd.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_auto.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_direct.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_error.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_generic.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_host.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_link.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_linkx.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_nfsl.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_nfsx.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_program.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_root.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_toplvl.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amfs_union.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amq_subr.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/amq_svc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/autil.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/clock.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/conf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/conf_parse.y#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/conf_tok.l#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/get_args.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_exec.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_file.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_hesiod.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_ldap.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_ndbm.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_nis.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_nisplus.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_passwd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/info_union.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/map.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/mapc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/mntfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/nfs_prot_svc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/nfs_start.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/nfs_subr.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_TEMPLATE.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_cachefs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_cdfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_efs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_lofs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_mfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_nfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_nfs3.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_nullfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_pcfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_tfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_tmpfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_ufs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_umapfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_unionfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/ops_xfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/opts.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/readdir.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/restart.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/rpc_fwd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/sched.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/srvr_amfs_auto.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amd/srvr_nfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/amq.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/amq.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/amq.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/amq_clnt.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/amq_xdr.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/pawd.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/amq/pawd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/aux_conf.h.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/bootstrap#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/checkmount/checkmount_bsd44.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/fh_dref/fh_dref_freebsd22.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/mtab/mtab_bsd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/sa_dref/sa_dref_bsd44.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/transp/transp_sockets.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/trap/trap_default.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/conf/umount/umount_bsd44.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/doc/am-utils.texi#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/doc/stamp-vti#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/doc/texinfo.tex#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/doc/version.texi#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fixmount/fixmount.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fixmount/fixmount.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsi_analyze.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsi_data.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsi_dict.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsi_gram.y#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsi_lex.l#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsi_util.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsinfo.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsinfo.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/fsinfo.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/wr_atab.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/wr_bparam.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/wr_dumpset.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/wr_exportfs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/fsinfo/wr_fstab.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/hlfsd/hlfsd.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/hlfsd/hlfsd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/hlfsd/hlfsd.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/hlfsd/homedir.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/hlfsd/nfs_prot_svc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/hlfsd/stubs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/am_compat.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/am_defs.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/am_utils.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/am_xdr_func.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/amq_defs.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/mount_headers1.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/include/mount_headers2.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/ldap-id.ms#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/ldap-id.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/ldap.schema#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/amu.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/hasmntopt.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/misc_rpc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/mount_fs.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/mtab.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/nfs_prot_xdr.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/strerror.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/strutil.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/wire.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/xdr_func.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/libamu/xutil.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/mk-amd-map/mk-amd-map.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/mk-amd-map/mk-amd-map.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/Makefile.am#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/am-eject.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/amd.conf-sample#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/amd.conf.5#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/amd2ldif.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/amd2sun.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/automount2amd.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/automount2amd.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/ctl-amd.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/ctl-hlfsd.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/expn.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/expn.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/fix-amd-map.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/fixrmtab.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/redhat-ctl-amd.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/test-attrcache.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/wait4amd.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/scripts/wait4amd2die.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/tasks#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/vers.m4#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/wire-test/wire-test.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/amd/wire-test/wire-test.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/AUTHORS#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/ChangeLog#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Examples/ckbook.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Examples/pi.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Examples/primes.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Examples/twins.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/FAQ#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/FREEBSD-upgrade#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/INSTALL#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Makefile.am#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/NEWS#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/README#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/BUG.bc#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/array.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/arrayp.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/aryprm.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/atan.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/checklib.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/div.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/exp.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/fact.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/jn.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/ln.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/mul.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/raise.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/signum#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/sine.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/sqrt.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/sqrt1.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/sqrt2.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/testfn.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/Test/timetest#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/acconfig.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/aclocal.m4#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/Makefile.am#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/bc.y#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/bcdefs.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/const.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/execute.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/fix-libmath_h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/global.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/global.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/libmath.b#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/libmath.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/load.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/main.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/proto.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/sbc.y#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/scan.l#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/storage.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/bc/util.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/config.h.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/configure#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/configure.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/Makefile.am#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/array.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/dc-proto.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/dc-regdef.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/dc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/dc.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/eval.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/misc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/numeric.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/stack.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/dc/string.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/doc/Makefile.am#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/doc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/doc/bc.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/doc/bc.texi#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/doc/dc.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/doc/dc.texi#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/h/number.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/install-sh#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/lib/Makefile.am#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/lib/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/lib/number.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/lib/testmul.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/lib/vfprintf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/missing#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/mkinstalldirs#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bc/stamp-h.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/CHANGES#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/COPYRIGHT#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/FAQ#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/FAQ.xml#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/FREEBSD-Upgrade#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/FREEBSD-Xlist#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/README#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/README.idnkit#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/acconfig.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/check-tool.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/check-tool.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkconf.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkconf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkconf.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkconf.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkzone.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkzone.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkzone.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/check/named-checkzone.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/dig.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/dig.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/dig.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/dig.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/dighost.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/host.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/host.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/host.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/host.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/include/dig/dig.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/nslookup.1#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/nslookup.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/nslookup.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dig/nslookup.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-keygen.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-keygen.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-keygen.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-keygen.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-signzone.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-signzone.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-signzone.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssec-signzone.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssectool.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/dnssec/dnssectool.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/builtin.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/client.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/config.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/control.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/controlconf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/builtin.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/client.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/config.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/control.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/globals.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/interfacemgr.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/listenlist.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/log.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/logconf.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/lwaddr.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/lwdclient.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/lwresd.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/lwsearch.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/main.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/notify.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/ns_smf_globals.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/query.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/server.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/sortlist.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/tkeyconf.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/tsigconf.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/types.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/update.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/xfrout.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/include/named/zoneconf.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/interfacemgr.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/listenlist.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/log.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/logconf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwaddr.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwdclient.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwderror.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwdgabn.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwdgnba.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwdgrbn.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwdnoop.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwresd.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwresd.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwresd.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwresd.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/lwsearch.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/main.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/named.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/named.conf.5#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/named.conf.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/named.conf.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/named.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/named.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/notify.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/query.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/server.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/sortlist.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/tkeyconf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/tsigconf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/unix/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/unix/include/named/os.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/unix/os.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/update.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/xfrout.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/named/zoneconf.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/nsupdate/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/nsupdate/nsupdate.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/nsupdate/nsupdate.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/nsupdate/nsupdate.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/nsupdate/nsupdate.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/include/rndc/os.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc-confgen.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc-confgen.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc-confgen.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc-confgen.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.8#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.conf#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.conf.5#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.conf.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.conf.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.docbook#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/rndc.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/unix/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/unix/os.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/util.c#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/bin/rndc/util.h#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/config.guess#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/config.sub#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/config.threads.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/configure.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM-book.xml#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch01.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch02.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch03.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch04.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch05.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch06.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch07.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch08.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch09.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.ch10.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Bv9ARM.pdf#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/README-SGML#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/isc-logo.eps#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/isc-logo.pdf#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.dig.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.dnssec-keygen.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.dnssec-signzone.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.host.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.named-checkconf.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.named-checkzone.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.named.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.rndc-confgen.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.rndc.conf.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/arm/man.rndc.html#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-baba-dnsext-acl-reqts-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-daigle-napstr-04.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-danisch-dns-rr-smtp-03.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-dnsext-opcode-discover-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-durand-dnsop-dynreverse-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-2929bis-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-axfr-clarify-05.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dhcid-rr-12.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dns-name-p-s-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-2535typecode-change-06.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-bis-updates-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-experiments-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-online-signing-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-opt-in-07.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-rsasha256-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-trans-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-ds-sha256-05.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-ecc-key-07.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-interop3597-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-keyrr-key-signing-flag-12.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-mdns-43.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-nsec3-04.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-nsid-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2536bis-dsa-06.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2538bis-04.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2539bis-dhk-06.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-signed-nonexistence-requirements-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-tkey-renewal-mode-05.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-threshold-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-timers-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-tsig-sha-06.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsext-wcard-clarify-10.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-bad-dns-res-05.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-dnssec-operational-practices-08.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-inaddr-required-07.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-configuration-06.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-issues-11.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-transport-guidelines-01.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-key-rollover-requirements-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-respsize-02.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-dnsop-serverid-06.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-enum-e164-gstn-np-05.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-ipv6-node-requirements-08.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ietf-secsh-dns-05.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-ihren-dnsext-threshold-validation-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-kato-dnsop-local-zones-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/draft-park-ipv6-extensions-dns-pnp-00.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/draft/update#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/Makefile.in#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/dnssec#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/format-options.pl#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/ipv6#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/migration#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/migration-4to9#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/options#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/rfc-compliance#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/roadmap#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/misc/sdb#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/index#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1032.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1033.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1034.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1035.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1101.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1122.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1123.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1183.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1348.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1535.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1536.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1537.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1591.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1611.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1612.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1706.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1712.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1750.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1876.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1886.txt#1 branch .. //depot/projects/mips2-jnpr/src/contrib/bind9/doc/rfc/rfc1982.txt#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Dec 29 17:05:07 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F037916A498; Sat, 29 Dec 2007 17:05:06 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B4E3416A481 for ; Sat, 29 Dec 2007 17:05:06 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 9CDFF13C4DB for ; Sat, 29 Dec 2007 17:05:06 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTH56mE026463 for ; Sat, 29 Dec 2007 17:05:06 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTH560Z026459 for perforce@freebsd.org; Sat, 29 Dec 2007 17:05:06 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 29 Dec 2007 17:05:06 GMT Message-Id: <200712291705.lBTH560Z026459@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 131971 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 17:05:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=131971 Change 131971 by hselasky@hselasky_laptop001 on 2007/12/29 17:04:28 This commit is device side related. o Fix support for Suspend and Resume. o Make "udev->flags.self_powered" read only in Device Side Mode. o Fix support for Remote Wakeup. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#10 edit .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#42 edit .. //depot/projects/usb/src/sys/dev/usb/uhub.c#31 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#81 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#90 edit .. //depot/projects/usb/src/sys/dev/usb/usb_template.c#12 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#97 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#10 (text+ko) ==== @@ -270,7 +270,30 @@ if (!(temp & AT91_UDP_GSTATE_ESR)) { return; } - temp |= AT91_UDP_GSTATE_ESR; + AT91_UDP_WRITE_4(sc, AT91_UDP_GSTATE, temp); + + return; +} + +static void +at9100_dci_rem_wakeup_set(struct usbd_device *udev, uint8_t is_on) +{ + struct at9100_dci_softc *sc; + uint32_t temp; + + DPRINTFN(4, "is_on=%u\n", is_on); + + mtx_assert(&(udev->bus->mtx), MA_OWNED); + + sc = AT9100_DCI_BUS2SC(udev->bus); + + temp = AT91_UDP_READ_4(sc, AT91_UDP_GSTATE); + + if (is_on) { + temp |= AT91_UDP_GSTATE_ESR; + } else { + temp &= ~AT91_UDP_GSTATE_ESR; + } AT91_UDP_WRITE_4(sc, AT91_UDP_GSTATE, temp); @@ -2542,4 +2565,5 @@ .set_stall = &at9100_dci_set_stall, .clear_stall = &at9100_dci_clear_stall, .vbus_interrupt = &at9100_dci_vbus_interrupt, + .rem_wakeup_set = &at9100_dci_rem_wakeup_set, }; ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#42 (text+ko) ==== @@ -73,6 +73,8 @@ static device_attach_t cdce_attach; static device_detach_t cdce_detach; static device_shutdown_t cdce_shutdown; +static device_suspend_t cdce_suspend; +static device_resume_t cdce_resume; static usb_handle_request_t cdce_handle_request; static usbd_callback_t cdce_bulk_write_clear_stall_callback; @@ -774,6 +776,20 @@ } static int +cdce_suspend(device_t dev) +{ + device_printf(dev, "Suspending\n"); + return 0; +} + +static int +cdce_resume(device_t dev) +{ + device_printf(dev, "Resuming\n"); + return 0; +} + +static int cdce_ioctl_cb(struct ifnet *ifp, u_long command, caddr_t data) { struct cdce_softc *sc = ifp->if_softc; ==== //depot/projects/usb/src/sys/dev/usb/uhub.c#31 (text+ko) ==== @@ -434,6 +434,57 @@ } /*------------------------------------------------------------------------* + * uhub_suspend_resume_port + * + * Returns: + * 0: Success + * Else: A control transaction failed + *------------------------------------------------------------------------*/ +static usbd_status_t +uhub_suspend_resume_port(struct uhub_softc *sc, uint8_t portno) +{ + struct usbd_device *child; + struct usbd_device *udev; + uint8_t is_suspend; + usbd_status_t err; + + DPRINTF(sc, 0, "port %d\n", portno); + + udev = sc->sc_udev; + child = usbd_bus_port_get_device(udev->bus, + udev->hub->ports + portno - 1); + + /* first clear the port suspend change bit */ + + err = usbreq_clear_port_feature + (udev, &usb_global_lock, portno, UHF_C_PORT_SUSPEND); + + if (err) { + goto done; + } + /* get fresh status */ + + err = uhub_read_port_status(sc, portno); + if (err) { + goto done; + } + /* get current state */ + + if (sc->sc_st.port_status & UPS_SUSPEND) { + is_suspend = 1; + } else { + is_suspend = 0; + } + /* do the suspend or resume */ + + if (child) { + err = usbd_suspend_resume(child, is_suspend); + } +done: + return (err); +} + +/*------------------------------------------------------------------------* * uhub_explore * * Returns: @@ -502,6 +553,13 @@ break; } } + if (sc->sc_st.port_change & UPS_C_SUSPEND) { + err = uhub_suspend_resume_port(sc, portno); + if (err) { + /* most likely the HUB is gone */ + break; + } + } err = uhub_explore_sub(sc, up); if (err) { /* no device(s) present */ ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#81 (text+ko) ==== @@ -888,7 +888,8 @@ /* Figure out if the device is self or bus powered. */ selfpowered = 0; if (!(udev->quirks->uq_flags & UQ_BUS_POWERED) && - (cdp->bmAttributes & UC_SELF_POWERED)) { + (cdp->bmAttributes & UC_SELF_POWERED) && + (udev->flags.usb_mode == USB_MODE_HOST)) { /* May be self powered. */ if (cdp->bmAttributes & UC_BUS_POWERED) { /* Must ask device. */ @@ -953,8 +954,11 @@ err = USBD_NO_POWER; goto error; } + /* Only update "self_powered" in USB Host Mode */ + if (udev->flags.usb_mode == USB_MODE_HOST) { + udev->flags.self_powered = selfpowered; + } udev->power = power; - udev->flags.self_powered = selfpowered; udev->curr_config_no = cdp->bConfigurationValue; /* Set the actual configuration value. */ @@ -1455,6 +1459,9 @@ if (dev == NULL) { return; } + if (!device_is_attached(dev)) { + return; + } if (do_suspend) { err = DEVICE_SUSPEND(dev); } else { @@ -1482,7 +1489,7 @@ /* nothing to do */ return (0); } - PRINTFN(3, ("udev=%p\n", udev)); + PRINTFN(3, ("udev=%p do_suspend=%d\n", udev, do_suspend)); mtx_lock(&(udev->bus->mtx)); if (udev->flags.suspended == do_suspend) { @@ -1671,6 +1678,8 @@ /* allow device time to set new address */ usbd_delay_ms(udev, USB_SET_ADDRESS_SETTLE); } else { + /* We are not self powered */ + udev->flags.self_powered = 0; /* * TODO: Make some kind of command that lets the user choose @@ -1757,7 +1766,6 @@ /* assume 100mA bus powered for now. Changed when configured. */ udev->power = USB_MIN_POWER; - udev->flags.self_powered = 0; /* get serial number string */ err = usbreq_get_string_any ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#90 (text+ko) ==== @@ -153,6 +153,7 @@ void *buf; uint32_t size; uint8_t usb_speed; + uint8_t self_powered; uint8_t bNumEndpoints; uint8_t bInterfaceNumber; uint8_t bAlternateSetting; @@ -179,6 +180,7 @@ void (*get_hw_ep_profile) (struct usbd_device *udev, const struct usbd_hw_ep_profile **ppf, uint8_t ep_addr); void (*set_stall) (struct usbd_device *udev, struct usbd_xfer *xfer, struct usbd_pipe *pipe); void (*clear_stall) (struct usbd_device *udev, struct usbd_pipe *pipe); + void (*rem_wakeup_set) (struct usbd_device *udev, uint8_t is_on); /* USB Device mode only - Optional */ void (*vbus_interrupt) (struct usbd_bus *, uint8_t is_on); @@ -414,7 +416,8 @@ uint8_t no_strings:1; /* set if USB device does not support * strings */ uint8_t detaching:1; /* set if USB device is detaching */ - uint8_t unused:3; + uint8_t remote_wakeup:1; /* set if remote wakeup is enabled */ + uint8_t unused:2; }; struct usbd_device { ==== //depot/projects/usb/src/sys/dev/usb/usb_template.c#12 (text+ko) ==== @@ -286,6 +286,13 @@ cd->iConfiguration = tcd->iConfiguration; cd->bmAttributes = tcd->bmAttributes; cd->bMaxPower = tcd->bMaxPower; + cd->bmAttributes |= (UC_REMOTE_WAKEUP | UC_BUS_POWERED); + + if (temp->self_powered) { + cd->bmAttributes |= UC_SELF_POWERED; + } else { + cd->bmAttributes &= ~UC_SELF_POWERED; + } } return; } @@ -1043,6 +1050,7 @@ bzero(uts, sizeof(*uts)); uts->usb_speed = udev->speed; + uts->self_powered = udev->flags.self_powered; /* first pass */ ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#97 (text+ko) ==== @@ -3008,14 +3008,27 @@ * usbd_handle_remote_wakeup *------------------------------------------------------------------------*/ static usbd_status_t -usbd_handle_remote_wakeup(struct usbd_xfer *xfer, uint8_t do_suspend) +usbd_handle_remote_wakeup(struct usbd_xfer *xfer, uint8_t is_on) { - usbd_status_t err; + struct usbd_device *udev; + struct usbd_bus *bus; + + udev = xfer->udev; + bus = udev->bus; + + mtx_lock(&(bus->mtx)); + + if (is_on) { + udev->flags.remote_wakeup = 1; + } else { + udev->flags.remote_wakeup = 0; + } + + (bus->methods->rem_wakeup_set) (xfer->udev, is_on); + + mtx_unlock(&(bus->mtx)); - mtx_unlock(xfer->priv_mtx); - err = usbd_suspend_resume(xfer->udev, do_suspend); - mtx_lock(xfer->priv_mtx); - return (err); + return (0); /* success */ } /*------------------------------------------------------------------------* @@ -3148,6 +3161,22 @@ goto tr_handle_set_address; case UR_SET_CONFIG: goto tr_handle_set_config; + case UR_CLEAR_FEATURE: + switch (wValue) { + case UF_DEVICE_REMOTE_WAKEUP: + goto tr_handle_clear_wakeup; + default: + goto tr_stalled; + } + break; + case UR_SET_FEATURE: + switch (wValue) { + case UF_DEVICE_REMOTE_WAKEUP: + goto tr_handle_set_wakeup; + default: + goto tr_stalled; + } + break; default: goto tr_stalled; } @@ -3159,19 +3188,14 @@ switch (wValue) { case UF_ENDPOINT_HALT: goto tr_handle_clear_halt; - case UF_DEVICE_REMOTE_WAKEUP: - goto tr_handle_clear_wakeup; default: goto tr_stalled; } break; - case UR_SET_FEATURE: switch (wValue) { case UF_ENDPOINT_HALT: goto tr_handle_set_halt; - case UF_DEVICE_REMOTE_WAKEUP: - goto tr_handle_set_wakeup; default: goto tr_stalled; } @@ -3214,8 +3238,19 @@ goto tr_valid; tr_handle_get_status: - /* XXX FIXME */ - USETW(temp.wStatus, UDS_SELF_POWERED); + + wValue = 0; + + mtx_lock(&(udev->bus->mtx)); + if (udev->flags.remote_wakeup) { + wValue |= UDS_REMOTE_WAKEUP; + } + if (udev->flags.self_powered) { + wValue |= UDS_SELF_POWERED; + } + mtx_unlock(&(udev->bus->mtx)); + + USETW(temp.wStatus, wValue); src_mcopy = temp.wStatus; max_len = sizeof(temp.wStatus); goto tr_valid; From owner-p4-projects@FreeBSD.ORG Sat Dec 29 17:10:12 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 56B9016A420; Sat, 29 Dec 2007 17:10:12 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1C84216A41A for ; Sat, 29 Dec 2007 17:10:12 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0BBEC13C469 for ; Sat, 29 Dec 2007 17:10:12 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTHABCH026717 for ; Sat, 29 Dec 2007 17:10:11 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTHABJp026713 for perforce@freebsd.org; Sat, 29 Dec 2007 17:10:11 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 29 Dec 2007 17:10:11 GMT Message-Id: <200712291710.lBTHABJp026713@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 131972 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 17:10:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=131972 Change 131972 by hselasky@hselasky_laptop001 on 2007/12/29 17:09:23 If there are zero configurations in the device qualifier there should be no need to support the other speed configuration descriptor. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#11 edit .. //depot/projects/usb/src/sys/dev/usb/ehci.c#67 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#11 (text+ko) ==== @@ -1813,8 +1813,8 @@ .bDeviceClass = UDCLASS_HUB, .bDeviceSubClass = UDSUBCLASS_HUB, .bDeviceProtocol = UDPROTO_FSHUB, - .bMaxPacketSize0 = 64, - .bNumConfigurations = 1, + .bMaxPacketSize0 = 0, + .bNumConfigurations = 0, }; static const struct at9100_dci_config_desc at9100_dci_confd = { ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#67 (text+ko) ==== @@ -2971,8 +2971,8 @@ UDCLASS_HUB, /* class */ UDSUBCLASS_HUB, /* subclass */ UDPROTO_FSHUB, /* protocol */ - 64, /* max packet */ - 1, /* # of configurations */ + 0, /* max packet */ + 0, /* # of configurations */ 0 }; @@ -2980,9 +2980,7 @@ .confd = { sizeof(usb_config_descriptor_t), UDESC_CONFIG, - {USB_CONFIG_DESCRIPTOR_SIZE + - USB_INTERFACE_DESCRIPTOR_SIZE + - USB_ENDPOINT_DESCRIPTOR_SIZE}, + sizeof(ehci_confd), 1, 1, 0, @@ -3140,12 +3138,7 @@ std->len = sizeof(ehci_odevd); sc->sc_hub_desc.odevd = ehci_odevd; break; - /* - * We can't really operate at another speed, - * but the specification says we need this - * descriptor: - */ - case UDESC_OTHER_SPEED_CONFIGURATION: + case UDESC_CONFIG: if ((value & 0xff) != 0) { std->err = USBD_IOERROR; @@ -3153,8 +3146,6 @@ } std->len = sizeof(ehci_confd); sc->sc_hub_desc.confd = ehci_confd; - sc->sc_hub_desc.confd.confd.bDescriptorType = - (value >> 8); break; case UDESC_STRING: From owner-p4-projects@FreeBSD.ORG Sat Dec 29 17:18:21 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 49C4216A41B; Sat, 29 Dec 2007 17:18:21 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0F25C16A419 for ; Sat, 29 Dec 2007 17:18:21 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DA2F813C44B for ; Sat, 29 Dec 2007 17:18:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTHIKkc030327 for ; Sat, 29 Dec 2007 17:18:20 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTHIK56030324 for perforce@freebsd.org; Sat, 29 Dec 2007 17:18:20 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 29 Dec 2007 17:18:20 GMT Message-Id: <200712291718.lBTHIK56030324@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 131973 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 17:18:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=131973 Change 131973 by hselasky@hselasky_laptop001 on 2007/12/29 17:18:20 Add suspend and resume device methods. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#43 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#43 (text+ko) ==== @@ -209,6 +209,8 @@ DEVMETHOD(device_probe, cdce_probe), DEVMETHOD(device_attach, cdce_attach), DEVMETHOD(device_detach, cdce_detach), + DEVMETHOD(device_suspend, cdce_suspend), + DEVMETHOD(device_resume, cdce_resume), DEVMETHOD(device_shutdown, cdce_shutdown), {0, 0} From owner-p4-projects@FreeBSD.ORG Sat Dec 29 17:25:29 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B9B516A420; Sat, 29 Dec 2007 17:25:29 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 217EE16A419 for ; Sat, 29 Dec 2007 17:25:29 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EC95813C43E for ; Sat, 29 Dec 2007 17:25:28 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTHPSmU033475 for ; Sat, 29 Dec 2007 17:25:28 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTHPS3r033467 for perforce@freebsd.org; Sat, 29 Dec 2007 17:25:28 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 29 Dec 2007 17:25:28 GMT Message-Id: <200712291725.lBTHPS3r033467@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 131974 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 17:25:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=131974 Change 131974 by hselasky@hselasky_laptop001 on 2007/12/29 17:24:28 Bugfix. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#68 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#68 (text+ko) ==== @@ -2980,7 +2980,7 @@ .confd = { sizeof(usb_config_descriptor_t), UDESC_CONFIG, - sizeof(ehci_confd), + {sizeof(ehci_confd), 0}, 1, 1, 0, From owner-p4-projects@FreeBSD.ORG Sat Dec 29 19:15:25 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7AEB616A41B; Sat, 29 Dec 2007 19:15:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4020616A418 for ; Sat, 29 Dec 2007 19:15:25 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 163D613C447 for ; Sat, 29 Dec 2007 19:15:25 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTJFOHh077613 for ; Sat, 29 Dec 2007 19:15:24 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTJFOD9077602 for perforce@freebsd.org; Sat, 29 Dec 2007 19:15:24 GMT (envelope-from peter@freebsd.org) Date: Sat, 29 Dec 2007 19:15:24 GMT Message-Id: <200712291915.lBTJFOD9077602@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 131978 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 19:15:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=131978 Change 131978 by peter@peter_repocopy on 2007/12/29 19:15:05 Rename out of the way, like bsdtar once was. It was an interesting experiment... Affected files ... .. //depot/projects/hammer/usr.bin/svn/svn/Makefile#4 edit .. //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#4 edit .. //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#4 edit .. //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#4 edit .. //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#4 edit .. //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#4 edit .. //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#4 edit Differences ... ==== //depot/projects/hammer/usr.bin/svn/svn/Makefile#4 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/svn -PROG= svn +PROG= bsdsvn NO_MAN= svn.1 SRCS= add-cmd.c blame-cmd.c cat-cmd.c checkout-cmd.c cleanup-cmd.c \ ==== //depot/projects/hammer/usr.bin/svn/svnadmin/Makefile#4 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/svnadmin -PROG= svnadmin +PROG= bsdsvnadmin NO_MAN= svnadmin.1 SRCS= main.c ==== //depot/projects/hammer/usr.bin/svn/svndumpfilter/Makefile#4 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/svndumpfilter -PROG= svndumpfilter +PROG= bsdsvndumpfilter NO_MAN= svndumpfilter.1 SRCS= main.c ==== //depot/projects/hammer/usr.bin/svn/svnlook/Makefile#4 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/svnlook -PROG= svnlook +PROG= bsdsvnlook NO_MAN= svnlook.1 SRCS= main.c ==== //depot/projects/hammer/usr.bin/svn/svnserve/Makefile#4 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/svnserve -PROG= svnserve +PROG= bsdsvnserve NO_MAN= svnserve.1 SRCS= main.c serve.c winservice.c ==== //depot/projects/hammer/usr.bin/svn/svnsync/Makefile#4 (text+ko) ==== @@ -4,7 +4,7 @@ .PATH: ${SVNDIR}/svnsync -PROG= svnsync +PROG= bsdsvnsync NO_MAN= svnsync.1 SRCS= main.c ==== //depot/projects/hammer/usr.bin/svn/svnversion/Makefile#4 (text+ko) ==== @@ -4,8 +4,8 @@ .PATH: ${SVNDIR}/svnversion -PROG= svnversion -NO_MAN= svn.1version +PROG= bsdsvnversion +NO_MAN= svnversion.1 SRCS= main.c From owner-p4-projects@FreeBSD.ORG Sat Dec 29 20:08:22 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3DD1816A421; Sat, 29 Dec 2007 20:08:22 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 03C3416A41A for ; Sat, 29 Dec 2007 20:08:22 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CDC9413C45A for ; Sat, 29 Dec 2007 20:08:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTK8LK2097696 for ; Sat, 29 Dec 2007 20:08:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTK8Lul097691 for perforce@freebsd.org; Sat, 29 Dec 2007 20:08:21 GMT (envelope-from jb@freebsd.org) Date: Sat, 29 Dec 2007 20:08:21 GMT Message-Id: <200712292008.lBTK8Lul097691@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 131982 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 20:08:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=131982 Change 131982 by jb@jb_freebsd1 on 2007/12/29 20:08:09 Add an compatibility header to feed OpenSolaris code. Affected files ... .. //depot/projects/dtrace/src/sys/compat/opensolaris/sys/feature_tests.h#3 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Dec 29 21:19:47 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6DD2616A469; Sat, 29 Dec 2007 21:19:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2169616A41B for ; Sat, 29 Dec 2007 21:19:47 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0F20A13C442 for ; Sat, 29 Dec 2007 21:19:47 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTLJkqt037776 for ; Sat, 29 Dec 2007 21:19:46 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTLJkfb037773 for perforce@freebsd.org; Sat, 29 Dec 2007 21:19:46 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 21:19:46 GMT Message-Id: <200712292119.lBTLJkfb037773@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131987 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 21:19:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=131987 Change 131987 by gcooper@shiina-ibook on 2007/12/29 21:18:53 - Convert follow_link flag from int to unsigned char to save memory. - Reorder structs for better memory alignment (I think at least, given my info of the structs involved..). Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg.h#4 edit .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_private.h#3 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg.h#4 (text+ko) ==== @@ -49,7 +49,7 @@ */ struct pkgfile; -struct pkgfile *pkgfile_new_from_disk(const char *, int); +struct pkgfile *pkgfile_new_from_disk(const char *, unsigned char); struct pkgfile *pkgfile_new_regular(const char *, const char *, uint64_t); struct pkgfile *pkgfile_new_symlink(const char *, const char *); struct pkgfile *pkgfile_new_hardlink(const char *, const char *); ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_private.h#3 (text+ko) ==== @@ -51,20 +51,19 @@ pkgfile_dir /**< A directory */ } pkgfile_type; -/** @todo Reorder the struct to remove alignment gaps */ struct pkgfile { char *name; char *cwd; char *real_name; - pkgfile_type type; - pkgfile_loc loc; - int follow_link; - FILE *fd; char *data; + unsigned char follow_link; + char md5[33]; + mode_t mode; uint64_t length; uint64_t offset; - mode_t mode; - char md5[33]; + FILE *fd; + pkgfile_type type; + pkgfile_loc loc; }; /* @@ -103,10 +102,11 @@ void *data; char *manifest_version; + char *name; + char *attrs[pkgm_max]; + struct pkgfile *file; - char *name; - char *attrs[pkgm_max]; STAILQ_HEAD(, pkgm_deps) deps; STAILQ_HEAD(, pkgm_conflicts) conflicts; STAILQ_HEAD(, pkgm_items) items; From owner-p4-projects@FreeBSD.ORG Sat Dec 29 22:07:37 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0E8916A420; Sat, 29 Dec 2007 22:07:37 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 464E116A41A for ; Sat, 29 Dec 2007 22:07:37 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3416C13C447 for ; Sat, 29 Dec 2007 22:07:37 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTM7bpq057546 for ; Sat, 29 Dec 2007 22:07:37 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTM7aGA057543 for perforce@freebsd.org; Sat, 29 Dec 2007 22:07:36 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 22:07:36 GMT Message-Id: <200712292207.lBTM7aGA057543@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131990 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 22:07:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=131990 Change 131990 by gcooper@shiina-ibook on 2007/12/29 22:06:47 Get rid of a few more todos... 1. Add in $PKG_DIR pluggable support. 2. Get rid of repeated code and toss in a loop. 3. Add .tgz support (yes, .tgz files are valid too!). Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_local_freebsd.c#5 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkg_repo_local_freebsd.c#5 (text+ko) ==== @@ -28,7 +28,9 @@ #include #include +#include #include +#include #include #include "pkg.h" @@ -75,48 +77,129 @@ /** * @brief Retrieves a package from either . or /usr/ports/packages/All/ - * @todo Check if the file we opened is a package. If not try the next file. - * @todo Make DEFAULT_PKG_DIR pluggable via the $PKG_DIR environment variable. * @return a package object or NULL */ static struct pkg * file_get_pkg(struct pkg_repo *repo, const char *pkg_name) { - char dir[MAXPATHLEN + 1]; + char pkg_filename[MAXPATHLEN + 1]; + char *pkg_dir; struct pkg *pkg; FILE *fd; + int i; + assert(repo != NULL); assert(pkg_name != NULL); - /* - * XXX Check the file is a package file after every - * attempt to open it. - */ - snprintf(dir, MAXPATHLEN + 1,"%s.tbz", pkg_name); - fd = fopen(dir, "r"); - if (fd == NULL) { - snprintf(dir, MAXPATHLEN + 1, - DEFAULT_PKG_DIR "/All/%s.tbz", pkg_name); - fd = fopen(dir, "r"); + /** Grab user defined package directory **/ + pkg_dir = getenv("PKG_DIR"); + + if (pkg_dir == NULL) { + pkg_dir = strdup(DEFAULT_PKG_DIR); } - if (fd == NULL) { - fd = fopen(pkg_name, "r"); + + if ((MAXPATHLEN+1) <= strlen(pkg_name)) { + warnx("Package name length (%d) meets / exceeds" + "maximum path length, %d", + strlen(pkg_name), (MAXPATHLEN+1)); + return NULL; } - if (fd == NULL) { - snprintf(dir, MAXPATHLEN + 1, - DEFAULT_PKG_DIR "/All/%s", pkg_name); - fd = fopen(dir, "r"); + +#define NUM_EXTENSIONS 3 + + char extensions[NUM_EXTENSIONS][4] = { + ".tbz", ".tgz", "" + }; + + enum pkg_check_iteration { + file_localdir_bz2 = 0, + file_localdir_gz, + file_localdir_no_ext, + file_fullpath_bz2, + file_fullpath_gz, + file_fullpath_no_ext + }; + + for (i = file_localdir_bz2; i <= file_fullpath_no_ext; i++) { + + /* + * Feed back the right set of arguments to test all + * possible extension and directory permutations. + */ + snprintf(pkg_filename, MAXPATHLEN + 1, "%s/%s%s%s", + ( i < file_localdir_no_ext ? "." : pkg_dir), + ( i < file_localdir_no_ext ? "" : "All/" ), + pkg_name, + extensions[i % NUM_EXTENSIONS] + ); + + /* + * Try opening the file for a read + */ + fd = fopen(pkg_filename, "r"); + + /* + * Continue on if the file wasn't opened due to a + * non-permission related item.. + */ + if (fd == NULL && errno != EACCES) { + continue; + } + /* + * Can't read the file; bail! + */ + else if (errno == EACCES) { + break; + } + /* + * Happy day! File descriptor wasn't null, so let's see if + * it's a real package! + */ + else { + + pkg = pkg_new_freebsd_from_file(fd); + + /* + * File exists, but according to + * pkg_new_freebsd_from_file(..), it wasn't valid. So + * just exit the loop.. + */ + if (pkg == NULL) { + + /* + * fclose(3) failed, so either we have a coding + * error somewhere or something nasty is going + * on with the FS. Prevent any continued nastiness + * from occurring by erroring out. + */ + if (fclose(fd) < 0) { + errx("Error encountered when closing " + "file. Errno is: %d", ferror(fd)); + } + + break; + + } + + } + } - if (fd == NULL) - return NULL; - pkg = pkg_new_freebsd_from_file(fd); - if (pkg == NULL) { - fclose(fd); - return NULL; + /* + * Same reasoning as above. + */ + if (fd != NULL && fclose(fd) < 0) { + errx("Error encountered when closing file. Errno is: %d", + ferror(fd)); } + /* + * We possibly strdup'ed the string, so attempt to free(2) to avoid memory + * leaks. Hopefully glibc won't complain too much about free errors :\.. + */ + free(pkg_dir); return pkg; + } /** From owner-p4-projects@FreeBSD.ORG Sat Dec 29 22:09:40 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F1F2616A469; Sat, 29 Dec 2007 22:09:39 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B7C0416A421 for ; Sat, 29 Dec 2007 22:09:39 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A5EBC13C459 for ; Sat, 29 Dec 2007 22:09:39 +0000 (UTC) (envelope-from gcooper@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTM9dpU057614 for ; Sat, 29 Dec 2007 22:09:39 GMT (envelope-from gcooper@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTM9dbj057611 for perforce@freebsd.org; Sat, 29 Dec 2007 22:09:39 GMT (envelope-from gcooper@FreeBSD.org) Date: Sat, 29 Dec 2007 22:09:39 GMT Message-Id: <200712292209.lBTM9dbj057611@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gcooper@FreeBSD.org using -f From: Garrett Cooper To: Perforce Change Reviews Cc: Subject: PERFORCE change 131991 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 22:09:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=131991 Change 131991 by gcooper@shiina-ibook on 2007/12/29 22:08:45 Style and convert follow_link from int to unsigned char to save memory in pkgfile struct. Affected files ... .. //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkgfile.c#5 edit Differences ... ==== //depot/projects/soc2007/revised_fbsd_pkgtools/pkg_revised/v2/contrib/libpkg/pkgfile.c#5 (text+ko) ==== @@ -142,7 +142,7 @@ return -1; if (S_ISREG(sb.st_mode) || - (file->follow_link && S_ISLNK(sb.st_mode))) { + (file->follow_link != 0 && S_ISLNK(sb.st_mode))) { file->type = pkgfile_regular; file->length = sb.st_size; } else if(S_ISLNK(sb.st_mode)) { @@ -221,7 +221,7 @@ * @return A new pkgfile object or NULL */ struct pkgfile * -pkgfile_new_from_disk(const char *filename, int follow_link) +pkgfile_new_from_disk(const char *filename, unsigned char follow_link) { struct pkgfile *file; From owner-p4-projects@FreeBSD.ORG Sat Dec 29 22:54:27 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 54BA216A41A; Sat, 29 Dec 2007 22:54:27 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 18BEF16A417 for ; Sat, 29 Dec 2007 22:54:27 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 05E5613C44B for ; Sat, 29 Dec 2007 22:54:27 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTMsQlw074674 for ; Sat, 29 Dec 2007 22:54:26 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTMsQcu074668 for perforce@freebsd.org; Sat, 29 Dec 2007 22:54:26 GMT (envelope-from pgj@FreeBSD.org) Date: Sat, 29 Dec 2007 22:54:26 GMT Message-Id: <200712292254.lBTMsQcu074668@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 131994 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 22:54:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=131994 Change 131994 by pgj@disznohal on 2007/12/29 22:53:42 Add initial Hungarian translation of Appendix A: Obtaining FreeBSD. This and translation of Appendix C will need translated "mirrors.xml" and "mirrors-local.xsl" (in our local "share" directory) to have a fully localized content. Affected files ... .. //depot/projects/docproj_hu/books/handbook/mirrors/chapter.sgml#4 edit Differences ... ==== //depot/projects/docproj_hu/books/handbook/mirrors/chapter.sgml#4 (text+ko) ==== @@ -3,19 +3,24 @@ $FreeBSD: doc/en_US.ISO8859-1/books/handbook/mirrors/chapter.sgml,v 1.442 2007/12/08 10:21:49 gabor Exp $ --> + - - Obtaining FreeBSD + + A &os; beszerzése - CDROM and DVD Publishers + CD és DVD kiadók - Retail Boxed Products + Kiskereskedelmi dobozos termékek - FreeBSD is available as a boxed product (FreeBSD CDs, - additional software, and printed documentation) from several - retailers: + A &os; beszerezhetõ számos + kiskereskedõtõl dobozos termék + formájában is (&os; CD-k, egyéb szoftverek + és nyomtatott dokumentáció): @@ -35,21 +40,21 @@ - CD and DVD Sets + CD- és DVD-készletek - FreeBSD CD and DVD sets are available from many online - retailers: + &os; CD- és DVD-készletek rengeteg + helyrõl rendelhetõek:
- BSD Mall by Daemon News + BSD Mall (Daemon News) PO Box 161 Nauvoo, IL 62354 - USA - Phone: +1 866 273-6255 + Egyesült Államok + Telefon: +1 866 273-6255 Fax: +1 217 453-9956 - Email: sales@bsdmall.com + e-mail: sales@bsdmall.com WWW:
@@ -57,7 +62,7 @@
BSD-Systems - Email: info@bsd-systems.co.uk + e-mail: info@bsd-systems.co.uk WWW:
@@ -67,10 +72,10 @@ FreeBSD Mall, Inc. 3623 Sanford Street Concord, CA 94520-1405 - USA - Phone: +1 925 240-6652 + Egyesült Államok + Telefon: +1 925 240-6652 Fax: +1 925 674-0821 - Email: info@freebsdmall.com + e-mail: info@freebsdmall.com WWW:
@@ -80,8 +85,8 @@ Dr. Hinner EDV St. Augustinus-Str. 10 D-81825 München - Germany - Phone: (089) 428 419 + Németország + Telefon: (089) 428 419 WWW: @@ -91,7 +96,7 @@ Ikarios 22-24 rue Voltaire 92000 Nanterre - France + Franciaország WWW: @@ -99,8 +104,8 @@
JMC Software - Ireland - Phone: 353 1 6291282 + Írország + Telefon: 353 1 6291282 WWW:
@@ -110,8 +115,8 @@ Linux CD Mall Private Bag MBE N348 Auckland 1030 - New Zealand - Phone: +64 21 866529 + Új-Zéland + Telefon: +64 21 866529 WWW: @@ -122,8 +127,8 @@ Hilliard House, Lester Way Wallingford OX10 9TA - United Kingdom - Phone: +44 1491 837010 + Egyesült Királyság + Telefon: +44 1491 837010 Fax: +44 1491 837016 WWW: @@ -135,9 +140,9 @@ Lewartowskiego 6 Warsaw 00-190 - Poland - Phone: +48 22 860 18 18 - Email: editors@lpmagazine.org + Lengyelország + Telefon: +48 22 860 18 18 + e-mail: editors@lpmagazine.org WWW: @@ -148,8 +153,8 @@ 21 Ray Drive Balwyn North VIC - 3104 - Australia - Phone: +61 3 9857 5918 + Ausztrália + Telefon: +61 3 9857 5918 Fax: +61 3 9857 8974 WWW: @@ -158,12 +163,12 @@
LinuxCenter.Ru - Galernaya Street, 55 - Saint-Petersburg + Galernaya utca, 55 + Szentpétervár 190000 - Russia - Phone: +7-812-3125208 - Email: info@linuxcenter.ru + Oroszország + Telefon: +7-812-3125208 + e-mail: info@linuxcenter.ru WWW:
@@ -172,10 +177,12 @@
- Distributors + Terjesztõk - If you are a reseller and want to carry FreeBSD CDROM products, - please contact a distributor: + Ha viszonteladók vagyunk és szeretnénk + CD-s &os; termékeket forgalmazni, akkor az alábbi + terjesztõk valamelyikével kell felvennünk a + kapcsolatot: @@ -183,10 +190,10 @@ Cylogistics 809B Cuesta Dr., #2149 Mountain View, CA 94040 - USA - Phone: +1 650 694-4949 + Egyesült Államok + Telefon: +1 650 694-4949 Fax: +1 650 694-4953 - Email: sales@cylogistics.com + e-mail: sales@cylogistics.com WWW: @@ -196,8 +203,8 @@ Ingram Micro 1600 E. St. Andrew Place Santa Ana, CA 92705-4926 - USA - Phone: 1 (800) 456-8000 + Egyesült Államok + Telefon: 1 (800) 456-8000 WWW: @@ -207,22 +214,22 @@ Kudzu, LLC 7375 Washington Ave. S. Edina, MN 55439 - USA - Phone: +1 952 947-0822 + Egyesült Államok + Telefon: +1 952 947-0822 Fax: +1 952 947-0876 - Email: sales@kudzuenterprises.com + e-mail: sales@kudzuenterprises.com
LinuxCenter.Ru - Galernaya Street, 55 - Saint-Petersburg + Galernaya utca, 55 + Szentpétervár 190000 - Russia - Phone: +7-812-3125208 - Email: info@linuxcenter.ru + Oroszország + Telefon: +7-812-3125208 + e-mail: info@linuxcenter.ru WWW:
@@ -232,8 +239,8 @@ Navarre Corp 7400 49th Ave South New Hope, MN 55428 - USA - Phone: +1 763 535-8333 + Egyesült Államok + Telefon: +1 763 535-8333 Fax: +1 763 535-0341 WWW: @@ -243,209 +250,280 @@ - FTP Sites + FTP oldalak - The official sources for FreeBSD are available via anonymous FTP - from a worldwide set of mirror sites. The site - is well - connected and allows a large number of connections to it, but - you are probably better off finding a closer - mirror site (especially if you decide to set up some sort of - mirror site). + A &os; hivatalos forrásai anonim FTP-n keresztül + is elérhetõek a világban levõ + különféle tükrözésekrõl. + Az oldal + ugyan jó minõségû kapcsolattal rendelkezik + és rengeteg felhasználót is enged + egyidejûleg kapcsolódni, azonban + valószínûleg jobban járunk, ha egy + hozzánk közelebbi + tükrözést választunk + (különösen abban az esetben, amikor mi magunk is + egy tükrözést akarunk + készíteni). - The FreeBSD mirror - sites database is more accurate than the mirror listing in the - Handbook, as it gets its information from the DNS rather than relying on - static lists of hosts. + A &os; + tükrözések adatbázisában az + itt megtalálhatónál sokkalta pontosabb + leltárt kaphatunk az elérhetõ + tükrözésekrõl, mivel az + közvetlenül névfeloldás + segítségével állapítja meg a + szükséges adatokat és nem egy + rögzített listát tárol. - Additionally, FreeBSD is available via anonymous FTP from the - following mirror sites. If you choose to obtain FreeBSD via anonymous - FTP, please try to use a site near you. The mirror sites listed as - Primary Mirror Sites typically have the entire FreeBSD archive (all - the currently available versions for each of the architectures) but - you will probably have faster download times from a site that is - in your country or region. The regional sites carry the most recent - versions for the most popular architecture(s) but might not carry - the entire FreeBSD archive. All sites provide access via anonymous - FTP but some sites also provide access via other methods. The access - methods available for each site are provided in parentheses - after the hostname. + Emellett az alábbi tükrözésekrõl + a &os; elérhetõ anonim FTP-n keresztül is. + Amennyiben az anonim FTP használata mellett + döntenénk, igyekezzünk a hozzánk + legközelebb levõ szervert használni. Az + Elsõdleges + tükrözésekként feltüntetett + oldalak általában a teljes &os; archívumot + tartalmazzák (az összes jelenleg elérhetõ + változatot az összes architektúrára), de + a környékünkön vagy országunkban + elhelyezkedõ tükörszerverekrõl többnyire + gyorsabban tudunk majd letölteni. A regionális + oldalakon gyakorta csak a népszerûbb + architektúrákon futó népszerûbb + változatokat találhatjuk meg, nem a teljes &os; + archívumot. Minden szerver elérhetõ anonim + FTP-vel, de közülük néhány még + további más módszereket is támogat. + Az egyes oldalak által ismert konkrét + módszereket a névük után + zárójelben közüljük. &chap.mirrors.ftp.inc; - Anonymous CVS + Anonim CVS - <anchor id="anoncvs-intro">Introduction + <anchor id="anoncvs-intro">Bevezetés CVS - anonymous + anonim - Anonymous CVS (or, as it is otherwise known, - anoncvs) is a feature provided by the CVS - utilities bundled with FreeBSD for synchronizing with a remote - CVS repository. Among other things, it allows users of FreeBSD - to perform, with no special privileges, read-only CVS operations - against one of the FreeBSD project's official anoncvs servers. - To use it, one simply sets the CVSROOT - environment variable to point at the appropriate anoncvs server, - provides the well-known password anoncvs with the - cvs login command, and then uses the - &man.cvs.1; command to access it like any local - repository. + Az anonim CVS (vagy más néven + anoncvs) a &os;-hez mellékelt CVS + segédprogramok által nyújtott + lehetõség, amely a távoli CVS + tárházakkal történõ + szinkronizálásra használható. + Több más dolog mellett lehetõvé teszi + a &os; felhasználói számára, hogy + kiemelt jogosultságok nélkül képesek + legyenek olvasással kapcsolatos CVS mûveleteket + végrehajtani a &os; projekt hivatalos anoncvs + szerverein. A használatához egyszerûen + csak a kiválasztott anoncvs szervert kell + beállítani a CVSROOT + környezeti változó + értékének, ahol aztán a + cvs login parancsnak a szerver által + ismert anoncvs jelszót kell megadni. + Ezután a &man.cvs.1; paranccsal a többi CVS + szerverhez hasonlóan lehetõségünk + nyílik hozzáférni. - The cvs login command, stores the passwords - that are used for authenticating to the CVS server in a file - called .cvspass in your - HOME directory. If this file does not exist, - you might get an error when trying to use cvs - login for the first time. Just make an empty - .cvspass file, and retry to login. + A cvs login parancs a + bejelentkezésekhez szükséges jelszavakat + a HOME könyvtárunkban levõ + .cvspass állományban + tárolja. Ha ez az állomány nem + létezik, akkor a cvs login + elsõ használatakor hibát kapunk. + Ilyenkor csak hozzunk létre egy üres + .cvspass állományt, majd + próbálkozzunk újra. - While it can also be said that the CVSup and anoncvs - services both perform essentially the same function, there are - various trade-offs which can influence the user's choice of - synchronization methods. In a nutshell, - CVSup is much more efficient in its - usage of network resources and is by far the most technically - sophisticated of the two, but at a price. To use - CVSup, a special client must first be - installed and configured before any bits can be grabbed, and - then only in the fairly large chunks which - CVSup calls - collections. + Habár azt mondhatnánk, hogy a CVSup és az + anoncvs lényegében egyazon + feladatot oldják meg, mind a két esetben + léteznek olyan kompromisszumok, amelyek + befolyásolhatják a felhasználó + választását a két + szinkronizációs módszer között. + Dióhéjban ezt úgy tudnánk + összefoglalni, hogy a CVSup a + hálózati erõforrásokat + hatékonyabban kihasználja és + kettejük közül ez a fejlettebb, azonban ennek + meg kell fizetnünk az árát. A + CVSup használatához + elõször ugyanis fel kell telepítenünk + és be kell állítanunk egy + speciális klienst, illetve az adatokat a + CVSup által + gyûjteményeknek (collection) + nevezett, viszonylag nagy méretû + egyeségekben érhetjük el. - Anoncvs, by contrast, can be used - to examine anything from an individual file to a specific - program (like ls or grep) - by referencing the CVS module name. Of course, - anoncvs is also only good for - read-only operations on the CVS repository, so if it is your - intention to support local development in one repository shared - with the FreeBSD project bits then - CVSup is really your only - option. + Ezzel szemben az anoncvs + használata során a megfelelõ CVS modul + nevének felhasználásával + tetszõlegesen megvizsgálhatunk + önálló állományokat vagy + akár programokat (mint az ls vagy a + grep). Természetesen az + anoncvs + segítségével csupán az + olvasást igénylõ CVS mûveleteket + végezhetjük el, ezért ha a &os; projekt + keretein belül fejleszteni is szeretnénk, akkor + inkább érdemes a + CVSup alkalmazást + választani. - <anchor id="anoncvs-usage">Using Anonymous CVS + <anchor id="anoncvs-usage">Az anonim CVS + használata - Configuring &man.cvs.1; to use an Anonymous CVS repository - is a simple matter of setting the CVSROOT - environment variable to point to one of the FreeBSD project's - anoncvs servers. At the time of this - writing, the following servers are available: + A &man.cvs.1; parancsot nagyon könnyû + beállítani az anonim CVS tárházak + használatához, hiszen mindössze annyit kell + tennünk, hogy a CVSROOT környezeti + változó értékének megadjuk + a &os; projekt valamelyik anoncvs + szerverét. Ezen sorok írásának + pillanatában a következõ szerverek + érhetõek el: - Austria: - :pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs - (Use cvs login and enter any - password when prompted.) + Ausztria: + :pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs (a + cvs login használatával + tetszõleges jelszó megadható) - France: + Franciaország: :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs - (pserver (password anoncvs), ssh (no password)) - + (pserver (a jelszó anoncvs), ssh + (nincs jelszó)) - Germany: + Németország: :pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs - (rsh, pserver, ssh, ssh/2022) - + (rsh, pserver, ssh, ssh/2022) - Japan: - :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs - (Use cvs login and enter the password + Japán: + :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (Use + cvs login and enter the password anoncvs when prompted.) - Taiwan: + Tajvan: :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs - (pserver (use cvs login and enter any - password when prompted), ssh (no password)) + (pserver (a cvs login + használatával tetszõleges jelszó + megadható), ssh (nincs jelszó)) SSH2 HostKey: 1024 e8:3b:29:7b:ca:9f:ac:e9:45:cb:c8:17:ae:9b:eb:55 /etc/ssh/ssh_host_dsa_key.pub - + - USA: - freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs - (ssh only - no password) + Egyesült Államok: + freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs (csak ssh + — nincs jelszó) SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub - USA: - anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (ssh2 only - no - password) + Egyesült Államok: + anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (csak ssh2 — + nincs jelszó) SSH2 HostKey: 2048 53:1f:15:a3:72:5c:43:f6:44:0e:6a:e9:bb:f8:01:62 /etc/ssh/ssh_host_dsa_key.pub - Since CVS allows one to check out virtually - any version of the FreeBSD sources that ever existed (or, in - some cases, will exist), you need to be - familiar with the revision () flag to - &man.cvs.1; and what some of the permissible values for it in - the FreeBSD Project repository are. + Mivel a CVS használatával + kikérhetjük (check out) + tulajdonképpen a &os; forrásainak + akármelyik eddigi (vagy majd ezután + keletkezõ) változatát, érdemes + megismerkednünk a &man.cvs.1; által alkalmazott + revízió (revision) (az + opcióval állítható) + fogalmával és a &os; projekt + tárházain belül engedélyezett + értékeivel. - There are two kinds of tags, revision tags and branch tags. - A revision tag refers to a specific revision. Its meaning stays - the same from day to day. A branch tag, on the other hand, - refers to the latest revision on a given line of development, at - any given time. Because a branch tag does not refer to a - specific revision, it may mean something different tomorrow than - it means today. + Címkéket (tag) két esetben + használhatunk: a revíziók és az + ágak esetén. A revíziós + címkék mindig egy adott revízióra + hivatkoznak, ami állandóan ugyanazt jelenti. + Ezzel szemben az ágak címkéi a + fejlesztés adott irányú menetének + az adott pillanatban legfrissebb + revízióját hivatkozzák. Mivel az + ágak címkéi nem egy adott + revízióra vonatkoznak, ezért elmondhatjuk + róluk, hogy naponta változik a + jelentésük. - contains revision tags that users - might be interested - in. Again, none of these are valid for the Ports Collection - since the Ports Collection does not have multiple - branches of development. + Az tartalmazza a + felhasználók számára fontos + revíziós címkéket. Ezek azonban + nem igazak a Portgyûjteményre, mivel a + Portgyûjteménynek nincs egyszerre több + fejlesztési iránya. - When you specify a branch tag, you normally receive the - latest versions of the files on that line of development. If - you wish to receive some past version, you can do so by - specifying a date with the flag. - See the &man.cvs.1; manual page for more details. + Egy ág címkéjének + megadásával általában az adott + irányhoz tartozó állományok + legfrissebb változatát kapjuk meg. Ha viszont + az állományok egy korábbi + változatára lenne szükségünk, + akkor a opció + megadásával meg tudjuk adni annak + idõpontját. Errõl részletesebben a + &man.cvs.1; man oldalán olvashatunk. - Examples + Példák - While it really is recommended that you read the manual page - for &man.cvs.1; thoroughly before doing anything, here are some - quick examples which essentially show how to use Anonymous - CVS: + Habár a továbbhaladáshoz + mindenképpen javasoljuk a &man.cvs.1; man + oldalának részletes + áttanulmányozását, mutatunk + néhány gyors példát az anonim CVS + használatának tömör + illusztrálására: - Checking Out Something from -CURRENT (&man.ls.1;): - + Valami (az &man.ls.1;) kikérése a + -CURRENT ágból: &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs &prompt.user; cvs login -At the prompt, enter any word for password. +Jelszóként ezután bármit megadhatunk. &prompt.user; cvs co ls - Using SSH to check out the <filename>src/</filename> - tree: + Az <filename>src/</filename> fa kikérése + SSH-n keresztül: &prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established. DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65. @@ -454,32 +532,35 @@ - Checking Out the Version of &man.ls.1; in the 6-STABLE - Branch: + Az &man.ls.1; 6-STABLE ágban szereplõ + változatának kikérése: &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs &prompt.user; cvs login -At the prompt, enter any word for password. +Amikor kéri, jelszóként bármit megadhatunk. &prompt.user; cvs co -rRELENG_6 ls - Creating a List of Changes (as Unified Diffs) to &man.ls.1; + Az &man.ls.1; változásainak (Unified Diff + formátumban történõ) + listázása: &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs &prompt.user; cvs login -At the prompt, enter any word for password. +Itt jelszóként bármit megadhatunk. &prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls - Finding Out What Other Module Names Can Be Used: + A használható modulok nevének + kiderítése: &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs &prompt.user; cvs login -At the prompt, enter any word for password. +Ezután jelszóként bármit megadhatunk. &prompt.user; cvs co modules &prompt.user; more modules/modules @@ -487,323 +568,463 @@ - Other Resources + Egyéb helyek - The following additional resources may be helpful in learning - CVS: + A következõ helyeken találhatunk + még hasznos információkat a CVS + használatáról: CVS Tutorial from Cal Poly. + url="http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/cvs/">A CVS bemutatása (írta: Cal Poly). - CVS Home, - the CVS development and support community. + A CVS + honlapja, a CVS fejlesztésével + és alkalmazásával foglalkozó + közösség oldala. - CVSweb is - the FreeBSD Project web interface for CVS. + A CVSweb + a &os; projekt által használt CVS + rendszerének webes felülete. - - + - Using CTM + A CTM használata CTM - CTM is a method for keeping a - remote directory tree in sync with a central one. It has been - developed for usage with FreeBSD's source trees, though other - people may find it useful for other purposes as time goes by. - Little, if any, documentation currently exists at this time on the - process of creating deltas, so contact the &a.ctm-users.name; mailing list for more - information and if you wish to use CTM - for other things. + A CTM a távoli + könyvtárak központi változatukkal + szinkronban tartásának egyik módszere. + Eredetileg a &os; forrásaihoz fejlesztették ki, de + idõvel mások más célokra is hasznosnak + találhatják majd. Az eltérések + (delták) feldolgozásával kapcsolatban + kevéske dokumentáció áll + rendelkezésre, ezért a &a.ctm-users.name; + levelezési listát érdemes felkeresni, ha + többet szeretnénk megtudni a + CTM egyéb célú + alkalmazásairól. - Why Should I Use <application>CTM</application>? + Miért használnánk a + <application>CTM</application>-et? - CTM will give you a local copy of - the FreeBSD source trees. There are a number of - flavors of the tree available. Whether you wish - to track the entire CVS tree or just one of the branches, - CTM can provide you the information. - If you are an active developer on FreeBSD, but have lousy or - non-existent TCP/IP connectivity, or simply wish to have the - changes automatically sent to you, - CTM was made for you. You will need - to obtain up to three deltas per day for the most active - branches. However, you should consider having them sent by - automatic email. The sizes of the updates are always kept as - small as possible. This is typically less than 5K, with an - occasional (one in ten) being 10-50K and every now and then a - large 100K+ or more coming around. + A CTM + segítségével a &os; forrásainak + helyi másolatát hozhatjuk létre. A + források több különbözõ + kivitelben is + hozzáférhetõek. A + CTM minden esetben képes + eleget tenni az igényeinknek, akár az + egész CVS fát, akár annak egy + részét kívánjuk csak figyelemmel + követni. Ha netalán &os; fejlesztõk + lennénk, és híján vagyunk vagy + éppen gyenge az adatátvitele a TCP/IP + kapcsolatnak, esetleg egyszerûen csak automatikusan + értesülni szeretnénk a + változásokról, a + CTM-et nekünk + találták ki. A leggyorsabban fejlõdõ + ágakból is naponta legfeljebb három + deltát fogunk kapni, azonban érdemes megfontolni + a változások levélben + történõ automatikus + küldését is. A szükséges + frissítések méretét mindig + igyekszünk minimalizálni. Ez + egyébként általában alig 5 KB, de + néha (tízbõl egyszer) elõfordul, hogy + 10 és 50 KB között van, és + idõnként 100 KB vagy afeletti + mennyiségû frissítés is + érkezhet. - You will also need to make yourself aware of the various - caveats related to working directly from the development sources - rather than a pre-packaged release. This is particularly true - if you choose the current sources. It is - recommended that you read Staying - current with FreeBSD. + Amikor a fejlesztõk által használt + forrásokat töltjük le, magunknak kell + gondoskodnunk a menet közben felmerülõ + különbözõ problémák + megoldásáról. Ez + kiváltképp igaz abban az esetben, amikor az + aktuális, vagy hivatalos nevén + current ágat követjük. + Mielõtt azonban egy ilyenbe belevágnánk, + érdemes fellapozni a &os; + legfrissebb változatának + használatáról szóló + fejezetet. - What Do I Need to Use - <application>CTM</application>? + Mire van szükségünk a + <application>CTM</application> + használatához? + + A mûködéshez két komponens + szükségeltetik: a CTM + kliensprogramja és hozzá a kezdeti delták + (amivel majd letöltjük a current + forrásait). - You will need two things: The CTM - program, and the initial deltas to feed it (to get up to - current levels). - - The CTM program has been part of - FreeBSD ever since version 2.0 was released, and lives in - /usr/src/usr.sbin/ctm if you have a copy - of the source available. + A CTM program már a 2.0 + kiadástól kezdve a &os; része, és + a források között a + /usr/src/usr.sbin/ctm + könyvtárban találjuk meg (ha felraktuk + õket). - The deltas you feed - CTM can be had two ways, FTP or - email. If you have general FTP access to the Internet then the - following FTP sites support access to - CTM: + A CTM + mûködéséhez kellõ + deltákat két módon, FTP-n + vagy e-mailen keresztül szerezhetjük be. Ha el + tudunk érni interneten levõ FTP oldalakat, akkor + az alábbi FTP helyeken találunk a + CTM-hez használható + adatokat: - or see section mirrors. + valamint ld. a tükrözéseket. - FTP the relevant directory and fetch the - README file, starting from there. + FTP-n keresztül lépjünk be a + könyvtárba, töltsük le a + README nevû állományt + és kövessük a benne szereplõ + utasításokat. - If you wish to get your deltas via email: + Ha viszont e-mailen keresztül akarjuk megszerezni a + deltákat: - Subscribe to one of the - CTM distribution lists. - &a.ctm-cvs-cur.name; supports the entire CVS tree. - &a.ctm-src-cur.name; supports the head of the development - branch. &a.ctm-src-4.name; supports the 4.X release - branch, etc.. (If you do not know how to subscribe yourself - to a list, click on the list name above or go to - &a.mailman.lists.link; and click on the list that you - wish to subscribe to. The list page should contain all of - the necessary subscription instructions.) + Iratkozzunk fel a CTM + terjesztési listáinak egyikére. A + &a.ctm-cvs-cur.name; lista az egész CVS fát, + míg a &a.ctm-src-cur.name; a fõ fejlesztési + ágat teszi elérhetõvé. A + &a.ctm-src-4.name; a 4.X kiadásaihoz ágakat + tartalmazza, és így tovább. (Ha nem + tudjuk, hogyan kell feliratkozni egy levelezési + listára, akkor kattintsunk a lista nevére vagy + kövessük a &a.mailman.lists.link; linket, majd + kattintsunk arra a listára, ahova fel akarunk + iratkozni. Ezen az oldalon az összes, a + feliratkozáshoz nélkülözhetetlen + információnak szerepelnie kell.) - When you begin receiving your CTM - updates in the mail, you may use the - ctm_rmail program to unpack and apply them. - You can actually use the ctm_rmail program - directly from a entry in /etc/aliases if - you want to have the process run in a fully automated fashion. - Check the ctm_rmail manual page for more - details. + Miután elkezdenek megérkezni a + CTM-frissítéseket + tartalmazó levelek, a tartalmukat a + ctm_rmail programmal tudjuk kicsomagolni + és felhasználni. Az + /etc/aliases állományba + akár közvetlenül is beírhatjuk a + ctm_rmail programot, és ezzel a + önállósítani tudjuk a + levélben érkezõ frissítések + feldolgozását. A ctm_rmail + man oldalán olvashatjuk ennek részleteit. - No matter what method you use to get the - CTM deltas, you should subscribe to - the &a.ctm-announce.name; mailing list. In - the future, this will be the only place where announcements - concerning the operations of the - CTM system will be posted. Click - on the list name above and follow the instructions - to subscribe to the - list. + Nem számít, milyen módon jutunk + hozzá a CTM által + használt deltákhoz, minden esetben fel kell >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Dec 29 23:58:34 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C562216A473; Sat, 29 Dec 2007 23:58:33 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8949B16A41B for ; Sat, 29 Dec 2007 23:58:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 755C313C4D9 for ; Sat, 29 Dec 2007 23:58:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBTNwXq5099727 for ; Sat, 29 Dec 2007 23:58:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBTNwXQr099724 for perforce@freebsd.org; Sat, 29 Dec 2007 23:58:33 GMT (envelope-from jb@freebsd.org) Date: Sat, 29 Dec 2007 23:58:33 GMT Message-Id: <200712292358.lBTNwXQr099724@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 131996 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Dec 2007 23:58:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=131996 Change 131996 by jb@jb_freebsd1 on 2007/12/29 23:57:38 Add a system initialisation level for the OpenSolaris compatibility module which contains things that are shared by OpenSolaris ported modules like DTrace, Cyclic and ZFS. These things tend to be in the Solaris kernel by default and are subject to CDDL licensing restrictions. Affected files ... .. //depot/projects/dtrace/src/sys/sys/kernel.h#17 edit Differences ... ==== //depot/projects/dtrace/src/sys/sys/kernel.h#17 (text+ko) ==== @@ -122,7 +122,8 @@ SI_SUB_DDB_SERVICES = 0x2380000, /* capture, scripting, etc. */ SI_SUB_RUN_QUEUE = 0x2400000, /* set up run queue*/ SI_SUB_KTRACE = 0x2480000, /* ktrace */ - SI_SUB_CYCLIC = 0x2490000, /* Cyclic timers */ + SI_SUB_OPENSOLARIS = 0x2490000, /* OpenSolaris compatibility */ + SI_SUB_CYCLIC = 0x24A0000, /* Cyclic timers */ SI_SUB_DTRACE = 0x24B0000, /* DTrace subsystem */ SI_SUB_DTRACE_PROVIDER = 0x24B8000, /* DTrace providers */ SI_SUB_DTRACE_ANON = 0x24BC000, /* DTrace anon enabling */