From owner-p4-projects@FreeBSD.ORG Sun Jun 18 02:38:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2109316A481; Sun, 18 Jun 2006 02:38:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CFE5916A47D; Sun, 18 Jun 2006 02:38:14 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (vc4-2-0-87.dsl.netrack.net [199.45.160.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id 79EA543D46; Sun, 18 Jun 2006 02:38:14 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (localhost.village.org [IPv6:::1] (may be forged)) by harmony.bsdimp.com (8.13.4/8.13.4) with ESMTP id k5I2Z8qH012692; Sat, 17 Jun 2006 20:35:08 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Sat, 17 Jun 2006 20:35:23 -0600 (MDT) Message-Id: <20060617.203523.353410589.imp@bsdimp.com> To: ryanb@freebsd.org From: "M. Warner Losh" In-Reply-To: <200606150629.k5F6T1lO099650@repoman.freebsd.org> References: <200606150629.k5F6T1lO099650@repoman.freebsd.org> X-Mailer: Mew version 4.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 99283 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 02:38:15 -0000 In message: <200606150629.k5F6T1lO099650@repoman.freebsd.org> Ryan Beasley writes: : http://perforce.freebsd.org/chv.cgi?CH=99283 : : Change 99283 by ryanb@ryanb_yuki on 2006/06/15 06:28:44 : : Correct misuse of strncpy's length argument. : : Affected files ... : : .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#3 edit : : Differences ... : : ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#3 (text+ko) ==== : : @@ -1140,8 +1140,8 @@ : static char si_product[] = "OSS/FreeBSD"; : static char si_version[] = "4.0.0a"; : : - strncpy(si->product, si_product, sizeof(si->product)); : - strncpy(si->version, si_version, sizeof(si->version)); : + strncpy(si->product, si_product, sizeof(si->product) - 1); : + strncpy(si->version, si_version, sizeof(si->version) - 1); : si->versionnum = SOUND_VERSION; : si->numaudios = (pcm_devclass != NULL) ? : devclass_get_count(pcm_devclass) : strlcpy likely is better. Warner From owner-p4-projects@FreeBSD.ORG Sun Jun 18 11:50:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2F82916A47D; Sun, 18 Jun 2006 11:50:30 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0B92D16A474 for ; Sun, 18 Jun 2006 11:50:30 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CEA4F43D45 for ; Sun, 18 Jun 2006 11:50:29 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IBoT31000832 for ; Sun, 18 Jun 2006 11:50:29 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IBoTx0000829 for perforce@freebsd.org; Sun, 18 Jun 2006 11:50:29 GMT (envelope-from bushman@freebsd.org) Date: Sun, 18 Jun 2006 11:50:29 GMT Message-Id: <200606181150.k5IBoTx0000829@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99506 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 11:50:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=99506 Change 99506 by bushman@bushman_nss_ldap_cached on 2006/06/18 11:49:31 Nss_icmp module was made from the ICMP-related part of the net/name6.c file. It differs a bit from the initial implementation, as it currently implements gethostbyaddr() instead of getipnodebyaddr(). Besides, FQDN query and reply structures were not defined in the name6.c - they're defined now. The module is not tested yet. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/icmp_hosts_namadr.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/icmp_hosts_namadr.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/nss_icmp.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/nss_icmp.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sun Jun 18 12:49:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 30F7F16A47C; Sun, 18 Jun 2006 12:49:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E337E16A47E for ; Sun, 18 Jun 2006 12:49:35 +0000 (UTC) (envelope-from netchild@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 25ADB43D53 for ; Sun, 18 Jun 2006 12:49:35 +0000 (GMT) (envelope-from netchild@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5ICnZ9R013071 for ; Sun, 18 Jun 2006 12:49:35 GMT (envelope-from netchild@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5ICmjJZ013045 for perforce@freebsd.org; Sun, 18 Jun 2006 12:48:45 GMT (envelope-from netchild@freebsd.org) Date: Sun, 18 Jun 2006 12:48:45 GMT Message-Id: <200606181248.k5ICmjJZ013045@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to netchild@freebsd.org using -f From: Alexander Leidinger To: Perforce Change Reviews Cc: Subject: PERFORCE change 99514 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 12:49:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=99514 Change 99514 by netchild@netchild_magellan on 2006/06/18 12:47:44 IFC & add the regression test subtree to the branch. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/regression/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/TODO#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/aio/aiotest/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/aio/aiotest/aiotest.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/aio/kqueue/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/aio/kqueue/aio_kqueue.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/aio/kqueue/lio/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/aio/kqueue/lio/lio_kqueue.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/Funcs.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/RunTest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/harp/atm_udp.ng#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/harp/memory_leak.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/proto_cc/RunTest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/proto_sscfu/RunTest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/proto_sscop/RunTest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/atm/proto_uni/RunTest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/audit/audit_pipe_ioctl/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/audit/audit_pipe_ioctl/audit_pipe_ioctl.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/alias.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/alias.0.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/alias.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/alias.1.stderr#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command3.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command3.0.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command4.127#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command5.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command5.0.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command6.127#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/command6.127.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/hash1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/hash1.0.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/hash2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/hash2.0.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/hash3.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/hash3.0.stdout#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/return1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/return2.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/return3.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/unalias.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/builtins/var-assign.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/errors/option-error.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/errors/redirection-error.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/and1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/and2.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/and3.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/and4.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/background1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/cmd1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/cmd2.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/elif1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/elif2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/for1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/func1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/func2.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/if1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/if2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/if3.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/not1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/not2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/or1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/or2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/or3.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/pipe1.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/pipe2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/return1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/semi1.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/semi2.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/subshell1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/subshell2.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/until1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/until2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/until3.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/while1.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/while2.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/bin/sh/set-e/while3.0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/a.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/b.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ccd.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ccd0.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.128k_128k_128k_128k_0_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.128k_128k_128k_128k_0_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.128k_128k_128k_128k_4_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.128k_128k_128k_128k_4_2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.128k_128k_128k_128k_4_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_128k_128k_0_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_128k_128k_0_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_128k_128k_4_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_128k_128k_4_2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_128k_128k_4_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_0_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_0_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_16_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_16_2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_16_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_4_0#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_4_2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ccd/layout/ref.256k_128k_384k_128k_4_4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/doexec.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/execve.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/badinterplen#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/devnullscript#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/goodaout.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/goodscript#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/nonexistshell#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/scriptarg#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/execve/tests/scriptarg-nospace#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_create/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_create/fifo_create.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_io/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_io/fifo_io.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_misc/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_misc/fifo_misc.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_open/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_open/fifo_open.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fsx/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fsx/fsx.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/gaithrstress/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/gaithrstress/gaithrstress.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/ConfCmp.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a1.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a1a.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a1b.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a1c.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a1d.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a2.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a2a.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a2b.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a2c.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/ConfCmp/a2d.conf#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.alpha.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.alpha2.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.apple.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.beast.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.critter.ad0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.empty.flp.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.far.ad0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.flat.da1.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.kern.flp.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.msdos.ext.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.msdos.flp.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.pc98.wdc0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.sun.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.sun.da1.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Data/disk.typo.ad0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/MdLoad/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/MdLoad/MdLoad.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.alpha.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.alpha2.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.apple.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.beast.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.critter.ad0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.empty.flp.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.far.ad0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.flat.da1.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.kern.flp.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.msdos.ext.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.msdos.flp.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.pc98.wdc0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.sun.da0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.sun.da1.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/Ref/disk.typo.ad0.xml#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/RunTest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom/RunTest.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_concat/conf.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_concat/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_concat/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/attach-d.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/delkey.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/detach-l.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/init-a.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/init-i-P.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/init.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/integrity-copy.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/integrity-data.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/integrity-hmac.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/kill.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/nokey.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/onetime-a.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/onetime-d.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/onetime.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_eli/setkey.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/runtests.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/test-1.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/test-2.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/test-3.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gate/test-3.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gpt/gctl.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_gpt/test.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/conf.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-3.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-4.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-5.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-6.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_mirror/test-7.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_nop/conf.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_nop/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_nop/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/conf.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-10.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-11.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-12.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-3.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-4.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-5.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-6.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-7.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-8.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_raid3/test-9.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_shsec/conf.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_shsec/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_shsec/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_stripe/conf.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_stripe/test-1.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_stripe/test-2.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_subr.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/.cvsignore#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/etalon/etalon.txt#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/runtests.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/test-1.img.uzip.uue#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/test-1.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/geom_uzip/test-2.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ia64/unaligned/test.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ia64/unaligned/unaligned.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/include/tgmath/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/include/tgmath/tgmath.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/include/tgmath/tgmath.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ipsec/ipsec.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/gen/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/gen/test-fpclassify.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/gen/test-wordexp.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-btowc.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-btowc.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-iswctype.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-iswctype.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mblen.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mblen.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbrlen.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbrlen.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbrtowc.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbrtowc.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbsnrtowcs.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbsnrtowcs.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbsrtowcs.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbsrtowcs.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbstowcs.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbstowcs.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbtowc.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-mbtowc.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-towctrans.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-towctrans.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcrtomb.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcrtomb.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcsnrtombs.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcsnrtombs.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcsrtombs.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcsrtombs.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcstombs.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wcstombs.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wctomb.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/locale/test-wctomb.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64_aton.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64_aton.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64_line.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64_line.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64_ntoa.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/net/test-eui64_ntoa.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/regex/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/resolv/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/resolv/mach#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/resolv/resolv.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/resolv/resolv.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/test-perror.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/test-perror.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/test-printfloat.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/test-printfloat.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/test-scanfloat.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdio/test-scanfloat.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-heapsort.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-heapsort.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-mergesort.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-mergesort.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-qsort.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-qsort.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/stdlib/test-sort.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/string/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/string/test-strerror.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libc/string/test-strerror.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libutil/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libutil/test-trimdomain-nodomain.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libutil/test-trimdomain-nodomain.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libutil/test-trimdomain.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libutil/test-trimdomain.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-fenv.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-fenv.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-ilogb.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-ilogb.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-lrint.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-lrint.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-lround.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-lround.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-next.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-next.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-rem.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/msun/test-rem.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mac/mac_bsdextended/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mac/mac_bsdextended/test_matches.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mac/mac_bsdextended/test_ugidfw.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mlock/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mlock/mlock.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest1/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest1/mqtest1.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest2/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest2/mqtest2.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest3/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest3/mqtest3.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest4/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest4/mqtest4.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest5/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/mqueue/mqtest5/mqtest5.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/msdosfs/msdosfstest-2.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/msdosfs/msdosfstest-3.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/msdosfs/msdosfstest-4.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/msdosfs/msdosfstest-5.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/msdosfs/msdosfstest-6.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/msdosfs/msdosfstest.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/net80211/ccmp/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/net80211/ccmp/test_ccmp.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/net80211/tkip/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/net80211/tkip/test_tkip.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/net80211/wep/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/net80211/wep/test_wep.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netatalk/simple_send/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netatalk/simple_send/simple_send.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/ipsockopt/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/ipsockopt/ipsockopt.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/ipsockopt/ipsockopt.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/msocket/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/msocket/msocket.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/msocket_ifnet_remove/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/msocket_ifnet_remove/msocket_ifnet_remove.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/rawconnect/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/rawconnect/rawconnect.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/rawconnect/rawconnect.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpconnect/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpconnect/tcpconnect.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpdrop/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpdrop/tcpdrop.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpfullwindowrst/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpfullwindowrst/tcpfullwindowrst.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpfullwindowrst/tcpfullwindowrsttest.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsockclosebeforeaccept/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsockclosebeforeaccept/tcpsockclosebeforeaccept.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsocktimewait/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsocktimewait/tcpsocktimewait.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpstream/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpstream/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpstream/tcpstream.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/udpconnectjail/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/udpconnectjail/udpconnectjail.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/ipxdgramloopback/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/ipxdgramloopback/ipxdgramloopback.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/ipxsocket/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/ipxsocket/ipxsocket.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxabort/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxabort/spxabort.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxloopback/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxloopback/spxloopback.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test1/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test1/test1.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test1/test1.good.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test1/test1.zeros.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test2/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test2/test2.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test2/test2.good.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/nfsmmap/test2/test2.zeros.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/fifo.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/main.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/memlock.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/p26.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/prutil.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/prutil.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/sched.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/p1003_1b/yield.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/bigpipetest.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/bigpipetest.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/pipe-fstatbug.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/pipe-overcommit1.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/pipe-overcommit2.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/pipe-reverse.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/pipe/pipe-wraparound.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/redzone9/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/redzone9/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/redzone9/redzone.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/redzone9/test.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/access/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/access/testaccess.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/proc_to_proc/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/proc_to_proc/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/proc_to_proc/scenario.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/proc_to_proc/scenario.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/security/proc_to_proc/testuid.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sigqueue/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sigqueue/sigqtest1/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sigqueue/sigqtest1/sigqtest1.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sigqueue/sigqtest2/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sigqueue/sigqtest2/sigqtest2.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/accept_fd_leak/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/accept_fd_leak/accept_fd_leak.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/accept_fd_leak/accept_fd_leak.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/accf_data_attach/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/accf_data_attach/accf_data_attach.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/accf_data_attach/accf_data_attach.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/kqueue/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/kqueue/kqueue.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/kqueue/kqueue.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/listen_backlog/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/listen_backlog/listen_backlog.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/listenclose/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/listenclose/listenclose.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/reconnect/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/reconnect/reconnect.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/rtsocket/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/rtsocket/rtsocket.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/sendfile/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/sendfile/sendfile.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/shutdown/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/shutdown/shutdown.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/sigpipe/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/sigpipe/sigpipe.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/socketpair/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/socketpair/socketpair.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_bindconnect/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_bindconnect/unix_bindconnect.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_cmsg/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_cmsg/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_cmsg/unix_cmsg.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_cmsg/unix_cmsg.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_passfd/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_passfd/unix_passfd.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_socket/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_socket/unix_socket.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvmsg/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvmsg/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvmsg/msgtest.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvsem/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvsem/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvsem/semtest.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvshm/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvshm/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/sysvshm/shmtest.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/Makefile.inc#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/libxx/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/libxx/xx.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/libyy/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/libyy/yy.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls1/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls1/ttls1.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls2/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls2/ttls2.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls3/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls3/elftls.S#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls3/tls-test-lib.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls3/tls-test.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls4/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/tls/ttls4/ttls4.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ufs/uprintf/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ufs/uprintf/ufs_uprintf.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/env/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/env/regress-env.rgdata#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/env/regress-sb.rb#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.1.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.2.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.3.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.4.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.5.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.6.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.7.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.8.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.9.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/file2c/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/join/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/join/regress.1.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/join/regress.2.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/join/regress.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/join/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/join/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/jot/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/jot/regress.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/jot/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/jot/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/m4/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/m4/regress.changecom.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/m4/regress.changecom.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/m4/regress.gchangecom.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/m4/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/m4/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/README#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/all.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.status.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stderr.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/expected.stdout.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/libtest.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.status.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stderr.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/expected.stdout.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/libtest.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_44bsd_mod/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.status.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stderr.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.6#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/expected.stdout.7#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/libtest.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/archives/fmt_oldbsd/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t0/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t0/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t0/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t0/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t1/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t1/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t1/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t1/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t1/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t2/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t2/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t2/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t2/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t2/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t3/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t3/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t3/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/basic/t3/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/common.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/builtin/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/meta/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/shell#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/path_select/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/shell#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/replace/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/shell/select/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/basic/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/basic/TEST1.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/basic/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/basic/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/basic/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/basic/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/TEST1.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/TEST2.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild1/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/TEST1.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/TEST2.a#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/suffixes/src_wild2/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.status.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.status.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.status.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stderr.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stderr.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stderr.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stdout.3#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stdout.4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/expected.stdout.5#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/enl/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/expected.status.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/expected.stderr.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/expected.stdout.2#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/syntax/semi/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/modifier_M/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/modifier_M/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/modifier_M/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/modifier_M/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/modifier_M/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/t0/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/t0/expected.status.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/t0/expected.stderr.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/t0/expected.stdout.1#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/make/variables/t0/test.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-F.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-G.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-LF.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-P.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-S.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-U.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-g.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-i.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-j.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-l.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-n.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-o.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-s.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-t.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-v.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pgrep-x.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-F.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-G.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-LF.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-P.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-U.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-g.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-i.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-j.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-s.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-t.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/pkill/pkill-x.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.b.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.d.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.f.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.m1.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.m2.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.m3.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.m4.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.s.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/printf/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/regress.m4#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.G.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.P.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.bcb.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.psl.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.s3.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.s4.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.s5.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.sg.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/sed/regress.y.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uudecode/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uudecode/regress.base64.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uudecode/regress.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uudecode/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uudecode/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uudecode/regress.traditional.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uuencode/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uuencode/regress.base64.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uuencode/regress.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uuencode/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uuencode/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/uuencode/regress.traditional.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.I.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.J.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.L.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.R.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.in#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.normal.out#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.sh#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/usr.bin/xargs/regress.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/NOTES#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_proto.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_syscall.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_sysent.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/syscalls.master#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/inckern.S#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/pmap.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/if_ate.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/conf/KB920X#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/conf/SIMICS#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/include/cpuconf.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/include/cpufunc.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/include/pmap.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/sa11x0/sa11x0_var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/sa11x0/uart_cpu_sa1110.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/sa11x0/uart_dev_sa1110.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/bsm/audit.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/bsm/audit_record.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/cam/cam_ccb.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/cam/cam_xpt.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linprocfs/linprocfs.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/ndis/winx32_wrap.S#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/Makefile.arm#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/NOTES#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files.arm#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files.powerpc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/kern.mk#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/kern.post.mk#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/options#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/options.arm#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/COPYRIGHT#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/README#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/ah_desc.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/freebsd/ah_if.m#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/freebsd/ah_osdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/freebsd/ah_osdep.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/armv4-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/armv4-le-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/i386-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips-le-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips1-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips1-le-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sh4-le-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/x86_64-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/xscale-be-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/xscale-le-elf.inc#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/dev/ath/version.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/pf/net/if_pfsync.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/crypto/via/padlock.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ddb/db_sym.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/aac/aac_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpica/acpi.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpica/acpivar.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ahb/ahb.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_ath_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/atkbdc/atkbdc_isa.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/awi/awi.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bfe/if_bfereg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bge/if_bge.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ciss/ciss.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/dc/if_dc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ed/if_ed.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ed/if_ed_novell.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ed/if_edvar.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/em/if_em.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/gem/if_gem.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/le/if_le_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/lmc/if_lmc.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mfi/mfi.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_pci.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_raid.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_raid.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_reg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/my/if_my.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/soc2006/rbeasley_sound/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/soc2006/rbeasley_sound/sys/dev/myri10ge/if_myri10ge.c#2 delete .. //depot/projects/soc2006/rbeasley_sound/sys/dev/myri10ge/if_myri10ge_var.h#2 delete >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jun 18 13:51:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34B2216A5D7; Sun, 18 Jun 2006 13:51:53 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ECE2916A614 for ; Sun, 18 Jun 2006 13:51:52 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BAAA743D46 for ; Sun, 18 Jun 2006 13:51:52 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IDpqp5017098 for ; Sun, 18 Jun 2006 13:51:52 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IDpq7W017095 for perforce@freebsd.org; Sun, 18 Jun 2006 13:51:52 GMT (envelope-from bushman@freebsd.org) Date: Sun, 18 Jun 2006 13:51:52 GMT Message-Id: <200606181351.k5IDpq7W017095@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99517 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 13:51:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=99517 Change 99517 by bushman@bushman_nss_ldap_cached on 2006/06/18 13:51:03 libnssutil reworked to include only commonly used functions for parsing passwd- and group- related strings and __copy_hostent() function. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/hosts_namadr.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/hosts_namadr.h#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/hosts_name6.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/hosts_name6.h#3 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/pw_scan.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/pw_scan.h#1 add Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ # $FreeBSD$ LIB= nssutil -SRCS= hosts_namadr.c hosts_name6.c +SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c NO_PIC= .include From owner-p4-projects@FreeBSD.ORG Sun Jun 18 13:55:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 678A516A47B; Sun, 18 Jun 2006 13:55:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 314D516A474 for ; Sun, 18 Jun 2006 13:55:59 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8375943D4C for ; Sun, 18 Jun 2006 13:55:58 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IDtwA7017292 for ; Sun, 18 Jun 2006 13:55:58 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IDtw6K017289 for perforce@freebsd.org; Sun, 18 Jun 2006 13:55:58 GMT (envelope-from bushman@freebsd.org) Date: Sun, 18 Jun 2006 13:55:58 GMT Message-Id: <200606181355.k5IDtw6K017289@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99518 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 13:55:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=99518 Change 99518 by bushman@bushman_nss_ldap_cached on 2006/06/18 13:55:09 Support for "passwd" and "group" databases added to the nss-modules. IPv4 to IPv6 mapping was tested in ghby_emul test. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/res_config.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_group.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_group.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_namadr.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_passwd.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_passwd.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/tests/ghby_emul/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/tests/ghby_emul/ghby_emul_test.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/tests/ghby_emul/hosts_list#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/Makefile#3 (text+ko) ==== @@ -25,7 +25,7 @@ # Otherwise, the SUBDIR list should be in alphabetical order. SUBDIR= ${_csu} libbsm libcom_err libcrypt libkvm msun libmd libncurses \ - nss_files nss_dns\ + nss_files nss_dns nss_icmp ${_nss_nis}\ libnetgraph libradius librpcsvc libsbuf libtacplus libutil \ ${_libypclnt} libalias libarchive ${_libatm} \ libbegemot ${_libbluetooth} libbsnmp libbz2 libc ${_libc_r} \ ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#2 (text+ko) ==== @@ -5,8 +5,7 @@ .PATH: ${.CURDIR}/${MACHINE_ARCH}/net ${.CURDIR}/net SRCS+= addr2ascii.c ascii2addr.c base64.c ether_addr.c eui64.c \ - gai_strerror.c getaddrinfo.c \ - gethostbydns.c gethostbyht.c gethostbynis.c gethostnamadr.c \ + gai_strerror.c getaddrinfo.c gethostnamadr.c \ getifaddrs.c getifmaddrs.c getnameinfo.c \ getnetbydns.c getnetbyht.c getnetbynis.c getnetnamadr.c \ getproto.c getprotoent.c getprotoname.c getservent.c \ @@ -120,4 +119,3 @@ SRCS+= hesiod.c MAN+= hesiod.3 .endif - ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#2 (text+ko) ==== @@ -3,14 +3,10 @@ LIB= nss_dns SHLIB_MAJOR= 1 SHLIBDIR?= /lib -#PROG= nss_dns +PROG= nss_dns CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ - -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil -SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_name6.c\ - dns_hosts_addrinfo.c ${.CURDIR}/../libc/net/map_v4v6.c -DPADD+= nssutil -LDADD+= -lnssutil -LDFLAGS+= -L${.CURDIR}/../libnssutil + -I${.CURDIR}/../libc/net +SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c INCS= MAN= ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.c#4 (text+ko) ==== @@ -182,6 +182,9 @@ static int res_querydomainN(const char *, const char *, struct res_target *, res_state); +static int str2number(const char *p); + + static int get_canonname(const struct addrinfo *pai, struct addrinfo *ai, const char *str) { @@ -992,6 +995,22 @@ } #endif /*RESOLVSORT*/ +static int +str2number(const char *p) +{ + char *ep; + unsigned long v; + + if (*p == '\0') + return -1; + ep = NULL; + errno = 0; + v = strtoul(p, &ep, 10); + if (errno == 0 && ep && *ep == '\0' && v <= UINT_MAX) + return v; + else + return -1; +} /*ARGSUSED*/ int ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#4 (text+ko) ==== @@ -77,7 +77,6 @@ #include "reentrant.h" #include "netdb_private.h" #include "nss_dns.h" -#include "hosts_namadr.h" NETDB_THREAD_ALLOC(hostent) NETDB_THREAD_ALLOC(dns_hostent_data) @@ -99,6 +98,68 @@ free(hed); } +static int +__copy_hostent(struct hostent *he, struct hostent *hptr, char *buf, + size_t buflen) +{ + char *cp; + char **ptr; + int i, n; + int nptr, len; + + /* Find out the amount of space required to store the answer. */ + nptr = 2; /* NULL ptrs */ + len = (char *)ALIGN(buf) - buf; + for (i = 0; he->h_addr_list[i]; i++, nptr++) { + len += he->h_length; + } + for (i = 0; he->h_aliases[i]; i++, nptr++) { + len += strlen(he->h_aliases[i]) + 1; + } + len += strlen(he->h_name) + 1; + len += nptr * sizeof(char*); + + if (len > buflen) { + errno = ERANGE; + return (-1); + } + + /* copy address size and type */ + hptr->h_addrtype = he->h_addrtype; + n = hptr->h_length = he->h_length; + + ptr = (char **)ALIGN(buf); + cp = (char *)ALIGN(buf) + nptr * sizeof(char *); + + /* copy address list */ + hptr->h_addr_list = ptr; + for (i = 0; he->h_addr_list[i]; i++ , ptr++) { + memcpy(cp, he->h_addr_list[i], n); + hptr->h_addr_list[i] = cp; + cp += n; + } + hptr->h_addr_list[i] = NULL; + ptr++; + + /* copy official name */ + n = strlen(he->h_name) + 1; + strcpy(cp, he->h_name); + hptr->h_name = cp; + cp += n; + + /* copy aliases */ + hptr->h_aliases = ptr; + for (i = 0 ; he->h_aliases[i]; i++) { + n = strlen(he->h_aliases[i]) + 1; + strcpy(cp, he->h_aliases[i]); + hptr->h_aliases[i] = cp; + cp += n; + } + hptr->h_aliases[i] = NULL; + + return (0); +} + #define SPRINTF(x) ((size_t)sprintf x) static const char AskedForGot[] = @@ -163,7 +224,7 @@ static int gethostanswer(const querybuf *answer, int anslen, const char *qname, int qtype, - struct hostent *he, struct hostent_data *hed, res_state statp) + struct hostent *he, struct dns_hostent_data *hed, res_state statp) { const HEADER *hp; const u_char *cp; @@ -359,15 +420,15 @@ break; #else he->h_name = bp; - if (statp->options & RES_USE_INET6) { - n = strlen(bp) + 1; /* for the \0 */ - if (n >= MAXHOSTNAMELEN) { - had_error++; - break; - } - bp += n; - _map_v4v6_hostent(he, &bp, ep); - } +// if (statp->options & RES_USE_INET6) { +// n = strlen(bp) + 1; /* for the \0 */ +// if (n >= MAXHOSTNAMELEN) { +// had_error++; +// break; +// } +// bp += n; +// _map_v4v6_hostent(he, &bp, ep); +// } RES_SET_H_ERRNO(statp, NETDB_SUCCESS); return (0); #endif @@ -443,8 +504,8 @@ he->h_name = bp; bp += n; } - if (statp->options & RES_USE_INET6) - _map_v4v6_hostent(he, &bp, ep); +// if (statp->options & RES_USE_INET6) +// _map_v4v6_hostent(he, &bp, ep); RES_SET_H_ERRNO(statp, NETDB_SUCCESS); return (0); } @@ -458,13 +519,13 @@ __dns_getanswer(const char *answer, int anslen, const char *qname, int qtype) { struct hostent *he; - struct hostent_data *hed; + struct dns_hostent_data *hed; int error; res_state statp; statp = __res_state(); if ((he = __hostent_init()) == NULL || - (hed = __hostent_data_init()) == NULL) { + (hed = __dns_hostent_data_init()) == NULL) { RES_SET_H_ERRNO(statp, NETDB_INTERNAL); return (NULL); } @@ -699,11 +760,11 @@ memcpy(hed->host_addr, uaddr, len); hed->h_addr_ptrs[0] = (char *)hed->host_addr; hed->h_addr_ptrs[1] = NULL; - if (af == AF_INET && (statp->options & RES_USE_INET6)) { - _map_v4v6_address((char*)hed->host_addr, (char*)hed->host_addr); - he.h_addrtype = AF_INET6; - he.h_length = NS_IN6ADDRSZ; - } +// if (af == AF_INET && (statp->options & RES_USE_INET6)) { +// _map_v4v6_address((char*)hed->host_addr, (char*)hed->host_addr); +// he.h_addrtype = AF_INET6; +// he.h_length = NS_IN6ADDRSZ; +// } RES_SET_H_ERRNO(statp, NETDB_SUCCESS); if (__copy_hostent(&he, hptr, buffer, buflen) != 0) { *h_errnop = statp->res_h_errno; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#3 (text+ko) ==== @@ -32,14 +32,43 @@ #include #include #include "dns_hosts_namadr.h" -#include "dns_hosts_name6.h" #include "dns_hosts_addrinfo.h" +#include "dns_passwd.h" +#include "dns_group.h" + +/* TODO: for testing purposes only */ +/*#ifdef NSDB_HOSTS +#undef NSDB_HOSTS +#endif +#define NSDB_HOSTS "hosts_"*/ static ns_mtab methods[] = { + {NSDB_GROUP, "getgrnam_r", __dns_group, (void *)nss_lt_name}, + {NSDB_GROUP, "getgrgid_r", __dns_group, (void *)nss_lt_id}, + {NSDB_GROUP, "getgrent_r", __dns_group, (void *)nss_lt_all}, + {NSDB_GROUP, "endgrent", __dns_setgrent, NULL}, + {NSDB_GROUP, "setgrent", __dns_setgrent, NULL}, + + {NSDB_PASSWD, "getpwnam_r", __dns_passwd, (void *)nss_lt_name}, + {NSDB_PASSWD, "getpwuid_r", __dns_passwd, (void *)nss_lt_id}, + {NSDB_PASSWD, "getpwent_r", __dns_passwd, (void *)nss_lt_all}, + {NSDB_PASSWD, "endpwent", __dns_setpwent, NULL}, + {NSDB_PASSWD, "setpwent", __dns_setpwent, NULL}, + + {NSDB_GROUP_COMPAT, "getgrnam_r", __dns_group, (void *)nss_lt_name}, + {NSDB_GROUP_COMPAT, "getgrgid_r", __dns_group, (void *)nss_lt_id}, + {NSDB_GROUP_COMPAT, "getgrent_r", __dns_group, (void *)nss_lt_all}, + {NSDB_GROUP_COMPAT, "endgrent", __dns_setgrent, NULL}, + {NSDB_GROUP_COMPAT, "setgrent", __dns_setgrent, NULL}, + + {NSDB_PASSWD_COMPAT, "getpwnam_r", __dns_passwd, (void *)nss_lt_name}, + {NSDB_PASSWD_COMPAT, "getpwuid_r", __dns_passwd, (void *)nss_lt_id}, + {NSDB_PASSWD_COMPAT, "getpwent_r", __dns_passwd, (void *)nss_lt_all}, + {NSDB_PASSWD_COMPAT, "endpwent", __dns_setpwent, NULL}, + {NSDB_PASSWD_COMPAT, "setpwent", __dns_setpwent, NULL}, + {NSDB_HOSTS, "gethostbyname2_r", __dns_gethostbyname2_r, NULL}, {NSDB_HOSTS, "gethostbyaddr_r", __dns_gethostbyaddr_r, NULL}, - {NSDB_HOSTS, "ghbyname", __dns_ghbyname, NULL}, - {NSDB_HOSTS, "ghbyaddr", __dns_ghbyaddr, NULL}, {NSDB_HOSTS, "getaddrinfo", __dns_getaddrinfo, NULL} }; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#2 (text+ko) ==== @@ -3,14 +3,14 @@ LIB= nss_files SHLIB_MAJOR= 1 SHLIBDIR?= /lib -#PROG= nss_files + CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil SRCS= nss_files.c files_passwd.c files_group.c files_hosts_namadr.c\ - files_hosts_name6.c files_hosts_addrinfo.c files_serv.c files_proto.c\ + files_hosts_addrinfo.c files_serv.c files_proto.c\ files_net.c files_rpc.c DPADD+= nssutil -LDADD+= -lnssutil +LDADD+= -lnssutil LDFLAGS+= -L${.CURDIR}/../libnssutil INCS= ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.c#2 (text+ko) ==== @@ -48,6 +48,7 @@ #include #include "nss_files.h" #include "nss_tls.h" +#include "gr_scan.h" struct files_state { FILE *fp; @@ -69,107 +70,6 @@ free(p); } -static int -is_comment_line(const char *s, size_t n) -{ - const char *eom; - - eom = &s[n]; - - for (; s < eom; s++) - if (*s == '#' || !isspace((unsigned char)*s)) - break; - return (*s == '#' || s == eom); -} - -/* - * common group line matching and parsing - */ -int -__gr_match_entry(const char *line, size_t linesize, enum nss_lookup_type how, - const char *name, gid_t gid) -{ - size_t namesize; - const char *p, *eol; - char *q; - unsigned long n; - int i, needed; - - if (linesize == 0 || is_comment_line(line, linesize)) - return (NS_NOTFOUND); - switch (how) { - case nss_lt_name: needed = 1; break; - case nss_lt_id: needed = 2; break; - default: needed = 2; break; - } - eol = &line[linesize]; - for (p = line, i = 0; i < needed && p < eol; p++) - if (*p == ':') - i++; - if (i < needed) - return (NS_NOTFOUND); - switch (how) { - case nss_lt_name: - namesize = strlen(name); - if (namesize + 1 == (size_t)(p - line) && - memcmp(line, name, namesize) == 0) - return (NS_SUCCESS); - break; - case nss_lt_id: - n = strtoul(p, &q, 10); - if (q < eol && *q == ':' && gid == (gid_t)n) - return (NS_SUCCESS); - break; - case nss_lt_all: - return (NS_SUCCESS); - default: - break; - } - return (NS_NOTFOUND); -} - - -int -__gr_parse_entry(char *line, size_t linesize, struct group *grp, char *membuf, - size_t membufsize, int *errnop) -{ - char *s_gid, *s_mem, *p, **members; - unsigned long n; - int maxmembers; - - memset(grp, 0, sizeof(*grp)); - members = (char **)ALIGN(membuf); - membufsize -= (char *)members - membuf; - maxmembers = membufsize / sizeof(*members); - if (maxmembers <= 0 || - (grp->gr_name = strsep(&line, ":")) == NULL || - grp->gr_name[0] == '\0' || - (grp->gr_passwd = strsep(&line, ":")) == NULL || - (s_gid = strsep(&line, ":")) == NULL || - s_gid[0] == '\0') - return (NS_NOTFOUND); - s_mem = line; - n = strtoul(s_gid, &s_gid, 10); - if (s_gid[0] != '\0') - return (NS_NOTFOUND); - grp->gr_gid = (gid_t)n; - grp->gr_mem = members; - while (maxmembers > 1 && s_mem != NULL) { - p = strsep(&s_mem, ","); - if (p != NULL && *p != '\0') { - *members++ = p; - maxmembers--; - } - } - *members = NULL; - if (s_mem == NULL) - return (NS_SUCCESS); - else { - *errnop = ERANGE; - return (NS_RETURN); - } -} - int __files_setgrent(void *retval, void *mdata, va_list ap) { ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.c#3 (text+ko) ==== @@ -58,6 +58,7 @@ #include #include #include +#include #include #include #include @@ -69,7 +70,6 @@ #include "reentrant.h" #include "netdb_private.h" #include "nss_files.h" -#include "hosts_namadr.h" NETDB_THREAD_ALLOC(hostent) NETDB_THREAD_ALLOC(files_hostent_data) @@ -83,7 +83,7 @@ static void files_hostent_data_free(void *ptr) { - struct hostent_data *hed = ptr; + struct files_hostent_data *hed = ptr; if (hed == NULL) return; @@ -95,6 +95,68 @@ free(hed); } +static int +__copy_hostent(struct hostent *he, struct hostent *hptr, char *buf, + size_t buflen) +{ + char *cp; + char **ptr; + int i, n; + int nptr, len; + + /* Find out the amount of space required to store the answer. */ + nptr = 2; /* NULL ptrs */ + len = (char *)ALIGN(buf) - buf; + for (i = 0; he->h_addr_list[i]; i++, nptr++) { + len += he->h_length; + } + for (i = 0; he->h_aliases[i]; i++, nptr++) { + len += strlen(he->h_aliases[i]) + 1; + } + len += strlen(he->h_name) + 1; + len += nptr * sizeof(char*); + + if (len > buflen) { + errno = ERANGE; + return (-1); + } + + /* copy address size and type */ + hptr->h_addrtype = he->h_addrtype; + n = hptr->h_length = he->h_length; + + ptr = (char **)ALIGN(buf); + cp = (char *)ALIGN(buf) + nptr * sizeof(char *); + + /* copy address list */ + hptr->h_addr_list = ptr; + for (i = 0; he->h_addr_list[i]; i++ , ptr++) { + memcpy(cp, he->h_addr_list[i], n); + hptr->h_addr_list[i] = cp; + cp += n; + } + hptr->h_addr_list[i] = NULL; + ptr++; + + /* copy official name */ + n = strlen(he->h_name) + 1; + strcpy(cp, he->h_name); + hptr->h_name = cp; + cp += n; + + /* copy aliases */ + hptr->h_aliases = ptr; + for (i = 0 ; he->h_aliases[i]; i++) { + n = strlen(he->h_aliases[i]) + 1; + strcpy(cp, he->h_aliases[i]); + hptr->h_aliases[i] = cp; + cp += n; + } + hptr->h_aliases[i] = NULL; + + return (0); +} + static void sethosthtent(int f, struct files_hostent_data *hed) { @@ -115,7 +177,7 @@ } static int -gethostent_p(struct hostent *he, struct files_hostent_data *hed, int mapped, +gethostent_p(struct hostent *he, struct files_hostent_data *hed, res_state statp) { char *p, *bp, *ep; @@ -144,15 +206,15 @@ af = AF_INET6; len = IN6ADDRSZ; } else if (inet_pton(AF_INET, p, hed->host_addr) > 0) { - if (mapped) { +/* if (mapped) { _map_v4v6_address((char *)hed->host_addr, (char *)hed->host_addr); af = AF_INET6; len = IN6ADDRSZ; - } else { + } else {*/ af = AF_INET; len = INADDRSZ; - } +/* }*/ } else { goto again; } @@ -231,15 +293,15 @@ } sethosthtent(0, hed); - while ((error = gethostent_p(&he, hed, 0, statp)) == 0) { + while ((error = gethostent_p(&he, hed, statp)) == 0) { if (he.h_addrtype != af) continue; - if (he.h_addrtype == AF_INET && +/* if (he.h_addrtype == AF_INET && statp->options & RES_USE_INET6) { _map_v4v6_address(he.h_addr, he.h_addr); he.h_length = IN6ADDRSZ; he.h_addrtype = AF_INET6; - } + }*/ if (strcasecmp(he.h_name, name) == 0) break; for (cp = he.h_aliases; *cp != 0; cp++) @@ -294,14 +356,14 @@ } sethosthtent(0, hed); - while ((error = gethostent_p(&he, hed, 0, statp)) == 0) + while ((error = gethostent_p(&he, hed, statp)) == 0) if (he.h_addrtype == af && !bcmp(he.h_addr, addr, len)) { - if (he.h_addrtype == AF_INET && +/* if (he.h_addrtype == AF_INET && statp->options & RES_USE_INET6) { _map_v4v6_address(he.h_addr, he.h_addr); he.h_length = IN6ADDRSZ; he.h_addrtype = AF_INET6; - } + }*/ break; } endhosthtent(hed); @@ -345,7 +407,7 @@ *h_errnop = statp->res_h_errno; return (NS_NOTFOUND); } - if (gethostent_p(&he, hed, statp->options & RES_USE_INET6, statp) != 0) + if (gethostent_p(&he, hed, statp) != 0) return (NS_NOTFOUND); if (__copy_hostent(&he, hptr, buffer, buflen) != 0) return (NS_NOTFOUND); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#4 (text+ko) ==== @@ -36,7 +36,6 @@ #include "files_passwd.h" #include "files_group.h" #include "files_hosts_namadr.h" -#include "files_hosts_name6.h" #include "files_hosts_addrinfo.h" #include "files_net.h" #include "files_proto.h" @@ -45,6 +44,12 @@ #include "netdb_private.h" #include "nss_files.h" +/* TODO: for testing purposes only */ +/*#ifdef NSDB_HOSTS +#undef NSDB_HOSTS +#endif +#define NSDB_HOSTS "hosts_"*/ + static struct servent_mdata getservbyname_mdata = { nss_lt_name, 0 }; static struct servent_mdata getservbyport_mdata = { nss_lt_id, 0 }; static struct servent_mdata getservent_mdata = { nss_lt_all, 0 }; @@ -76,8 +81,6 @@ {NSDB_HOSTS, "gethostbyname2_r", __files_gethostbyname2_r, NULL}, {NSDB_HOSTS, "gethostbyaddr_r", __files_gethostbyaddr_r, NULL}, - {NSDB_HOSTS, "ghbyname", __files_ghbyname, NULL}, - {NSDB_HOSTS, "ghbyaddr", __files_ghbyaddr, NULL}, {NSDB_HOSTS, "getaddrinfo", __files_getaddrinfo, NULL}, {NSDB_HOSTS_INTERNAL, "gethostent_r", __files_gethostent_r, NULL}, {NSDB_HOSTS_INTERNAL, "sethostent", __files_sethostent, NULL}, ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#2 (text+ko) ==== @@ -3,15 +3,14 @@ LIB= nss_nis SHLIB_MAJOR= 1 SHLIBDIR?= /lib -PROG= nss_nis CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil -SRCS= nss_nis.c nis_hosts_namadr.c nis_hosts_name6.c\ - nis_hosts_addrinfo.c +SRCS= nss_nis.c nis_hosts_namadr.c nis_hosts_addrinfo.c nis_passwd.c\ + nis_group.c DPADD+= nssutil -LDADD+= -lnssutil +LDADD+= -lnssutil LDFLAGS+= -L${.CURDIR}/../libnssutil -INCS= +INCS= MAN= ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_namadr.c#3 (text+ko) ==== @@ -50,7 +50,6 @@ #include "reentrant.h" #include "netdb_private.h" #include "nss_nis.h" -#include "hosts_namadr.h" NETDB_THREAD_ALLOC(hostent) NETDB_THREAD_ALLOC(nis_hostent_data) @@ -71,6 +70,68 @@ free(hed); } +static int +__copy_hostent(struct hostent *he, struct hostent *hptr, char *buf, + size_t buflen) +{ + char *cp; + char **ptr; + int i, n; + int nptr, len; + + /* Find out the amount of space required to store the answer. */ + nptr = 2; /* NULL ptrs */ + len = (char *)ALIGN(buf) - buf; + for (i = 0; he->h_addr_list[i]; i++, nptr++) { + len += he->h_length; + } + for (i = 0; he->h_aliases[i]; i++, nptr++) { + len += strlen(he->h_aliases[i]) + 1; + } + len += strlen(he->h_name) + 1; + len += nptr * sizeof(char*); + + if (len > buflen) { + errno = ERANGE; + return (-1); + } + + /* copy address size and type */ + hptr->h_addrtype = he->h_addrtype; + n = hptr->h_length = he->h_length; + + ptr = (char **)ALIGN(buf); + cp = (char *)ALIGN(buf) + nptr * sizeof(char *); + + /* copy address list */ + hptr->h_addr_list = ptr; + for (i = 0; he->h_addr_list[i]; i++ , ptr++) { + memcpy(cp, he->h_addr_list[i], n); + hptr->h_addr_list[i] = cp; + cp += n; + } + hptr->h_addr_list[i] = NULL; + ptr++; + + /* copy official name */ + n = strlen(he->h_name) + 1; + strcpy(cp, he->h_name); + hptr->h_name = cp; + cp += n; + + /* copy aliases */ + hptr->h_aliases = ptr; + for (i = 0 ; he->h_aliases[i]; i++) { + n = strlen(he->h_aliases[i]) + 1; + strcpy(cp, he->h_aliases[i]); + hptr->h_aliases[i] = cp; + cp += n; + } + hptr->h_aliases[i] = NULL; + + return (0); +} + //#ifdef YP static int _gethostbynis(const char *name, char *map, int af, struct hostent *he, @@ -127,12 +188,12 @@ addrok = inet_aton(result, (struct in_addr *)hed->host_addr); if (addrok != 1) break; - if (statp->options & RES_USE_INET6) { +/* if (statp->options & RES_USE_INET6) { _map_v4v6_address((char *)hed->host_addr, (char *)hed->host_addr); af = AF_INET6; size = NS_IN6ADDRSZ; - } + }*/ break; case AF_INET6: addrok = inet_pton(af, result, hed->host_addr); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#2 (text+ko) ==== @@ -32,14 +32,37 @@ #include #include #include "nis_hosts_namadr.h" -#include "nis_hosts_name6.h" #include "nis_hosts_addrinfo.h" +#include "nis_passwd.h" +#include "nis_group.h" static ns_mtab methods[] = { + {NSDB_GROUP, "getgrnam_r", __nis_group, (void *)nss_lt_name}, + {NSDB_GROUP, "getgrgid_r", __nis_group, (void *)nss_lt_id}, + {NSDB_GROUP, "getgrent_r", __nis_group, (void *)nss_lt_all}, + {NSDB_GROUP, "endgrent", __nis_setgrent, NULL}, + {NSDB_GROUP, "setgrent", __nis_setgrent, NULL}, + + {NSDB_PASSWD, "getpwnam_r", __nis_passwd, (void *)nss_lt_name}, + {NSDB_PASSWD, "getpwuid_r", __nis_passwd, (void *)nss_lt_id}, + {NSDB_PASSWD, "getpwent_r", __nis_passwd, (void *)nss_lt_all}, + {NSDB_PASSWD, "endpwent", __nis_setpwent, NULL}, + {NSDB_PASSWD, "setpwent", __nis_setpwent, NULL}, + + {NSDB_GROUP_COMPAT, "getgrnam_r", __nis_group, (void *)nss_lt_name}, + {NSDB_GROUP_COMPAT, "getgrgid_r", __nis_group, (void *)nss_lt_id}, + {NSDB_GROUP_COMPAT, "getgrent_r", __nis_group, (void *)nss_lt_all}, + {NSDB_GROUP_COMPAT, "endgrent", __nis_setgrent, NULL}, + {NSDB_GROUP_COMPAT, "setgrent", __nis_setgrent, NULL}, + + {NSDB_PASSWD_COMPAT, "getpwnam_r", __nis_passwd, (void *)nss_lt_name}, + {NSDB_PASSWD_COMPAT, "getpwuid_r", __nis_passwd, (void *)nss_lt_id}, + {NSDB_PASSWD_COMPAT, "getpwent_r", __nis_passwd, (void *)nss_lt_all}, + {NSDB_PASSWD_COMPAT, "endpwent", __nis_setpwent, NULL}, + {NSDB_PASSWD_COMPAT, "setpwent", __nis_setpwent, NULL}, + {NSDB_HOSTS, "gethostbyname2_r", __nis_gethostbyname2_r, NULL}, {NSDB_HOSTS, "gethostbyaddr_r", __nis_gethostbyaddr_r, NULL}, - {NSDB_HOSTS, "ghbyname", __nis_ghbyname, NULL}, - {NSDB_HOSTS, "ghbyaddr", __nis_ghbyaddr, NULL}, {NSDB_HOSTS, "getaddrinfo", __nis_getaddrinfo, NULL} }; ==== //depot/projects/soc2006/nss_ldap_cached/tests/ghby_emul/Makefile#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/tests/ghby_emul/ghby_emul_test.c#2 (text+ko) ==== @@ -52,8 +52,7 @@ if (hed == NULL) return; - hed->stayopen = 0; - _endhosthtent(hed); + free(hed); } @@ -68,7 +67,7 @@ size_t buflen) { char *oldbuf, *cp; - char **ptr; + char **ptr, **list; int i, n; int nptr, len; @@ -84,10 +83,7 @@ for (i = 0; he->h_addr_list[i]; i++, nptr++) { len += IN6ADDRSZ; } - for (i = 0; he->h_aliases[i]; i++, nptr++) { - printf("2alias: %s\n", he->h_aliases[i]); - len += strlen(he->h_aliases[i]) + 1; - } + len += strlen(he->h_name) + 1; len += nptr * sizeof(char*); @@ -97,10 +93,13 @@ } oldbuf = buf; - /* TODO: len + ALIGNBYTES? */ - buf = (char *)malloc(len); - assert(buf != NULL); - memset(buf, 0, len); + /* NOTE: we add ALIGNBYTES in case if newly allocated memory segment + * wouldn't be properly aligned, whereas buf is aligned correctly */ + buf = (char *)malloc(len + ALIGNBYTES); + if (buf == NULL) { + errno = ENOMEM; + return (-1); + } /* copy address size and type */ hptr->h_addrtype = he->h_addrtype; @@ -109,17 +108,7 @@ ptr = (char **)ALIGN(buf); cp = (char *)ALIGN(buf) + nptr * sizeof(char *); - /* copy address list */ -/* hptr->h_addr_list = ptr; - for (i = 0; he->h_addr_list[i]; i++ , ptr++) { - memcpy(cp, he->h_addr_list[i], n); - hptr->h_addr_list[i] = cp; - cp += n; - } - hptr->h_addr_list[i] = NULL;*/ - /* TODO: use 1 memcpy here */ - - char **list = hptr->h_addr_list; + list = hptr->h_addr_list; hptr->h_addr_list = ptr; for (i = 0; list[i]; i++ , ptr++) { _map_v4v6_address(list[i], cp); @@ -129,8 +118,6 @@ hptr->h_addr_list[i] = NULL; ptr++; -// _map_v4v6_hostent(hptr, &cp, buf + len); - /* copy official name */ n = strlen(he->h_name) + 1; strcpy(cp, he->h_name); @@ -144,25 +131,26 @@ n = strlen(list[i]) + 1; strcpy(cp, list[i]); hptr->h_aliases[i] = cp; - printf("4alias %s\n", list[i]); cp += n; } hptr->h_aliases[i] = NULL; - - memcpy((char *)ALIGN(oldbuf), (char *)ALIGN(buf), len - (size_t)((char *)ALIGN(buf) - buf)); + + /* copying temporary buffer to the provided buffer and fixing + * hostent's pointers */ + oldbuf = (char *)ALIGN(oldbuf); + memcpy(oldbuf, (char *)ALIGN(buf), + len - (size_t)((char *)ALIGN(buf) - buf)); free(buf); buf = (char *)ALIGN(buf); - oldbuf = (char *)ALIGN(oldbuf); he->h_name = oldbuf + (size_t)(he->h_name - buf); - printf("name %s\n", he->h_name); - he->h_aliases = (char **)(oldbuf + (size_t)((char *)he->h_aliases - buf)); - he->h_addr_list = (char **)(oldbuf + (size_t)((char *)he->h_addr_list - buf)); + he->h_aliases = (char **)(oldbuf + + (size_t)((char *)he->h_aliases - buf)); + he->h_addr_list = (char **)(oldbuf + + (size_t)((char *)he->h_addr_list - buf)); char **p; - for (p = he->h_aliases; *p; ++p) { + for (p = he->h_aliases; *p; ++p) *p = oldbuf + (size_t)(*p - buf); - printf("alias %s\n", *p); - } for (p = he->h_addr_list; *p; ++p) *p = oldbuf + (size_t)(*p - buf); @@ -323,8 +311,8 @@ printf("rval: %d\n", rval); if ((*result != NULL) && (statp->options & RES_USE_INET6)) { - printf("yo\n"); -// __map_v4v6_hostent(hp, buf, buflen); + printf("mapping %p %p %ld\n", (void *)hp, (void *)buf, buflen); + __map_v4v6_hostent(hp, buf, buflen); } return ((rval == NS_SUCCESS) ? 0 : -1); @@ -390,6 +378,12 @@ "gethostbyaddr_r", default_src, uaddr, len, af, hp, buf, buflen, &ret_errno, h_errnop); + printf("rval: %d %p %d\n", rval, (void *)*result, statp->options & RES_USE_INET6); + if ((*result != NULL) && (statp->options & RES_USE_INET6)) { + printf("mapping %p %p %ld\n", (void *)hp, (void *)buf, buflen); + __map_v4v6_hostent(hp, buf, buflen); + } + return ((rval == NS_SUCCESS) ? 0 : -1); } @@ -515,7 +509,7 @@ assert(he1->h_name != NULL); assert(he2->h_name != NULL); if (strcmp(he1->h_name, he2->h_name) != 0) { - printf("ne %d\n", __LINE__); + printf("ne %d %s %s\n", __LINE__, he1->h_name, he2->h_name); return (-1); } @@ -523,6 +517,7 @@ char **p1, **p2; for (p1 = he1->h_aliases, p2 = he2->h_aliases; *p1 && *p2; ++p1, ++p2) { + printf("%s %s\n", *p1, *p2); if (strcmp(*p1, *p2) != 0) { printf("ne %d\n", __LINE__); return (-1); @@ -592,7 +587,7 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jun 18 14:07:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9C7F116A481; Sun, 18 Jun 2006 14:07:13 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4AD2316A47E for ; Sun, 18 Jun 2006 14:07:13 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E9C2D43D45 for ; Sun, 18 Jun 2006 14:07:12 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IE7Cx0019021 for ; Sun, 18 Jun 2006 14:07:12 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IE7Cga019011 for perforce@freebsd.org; Sun, 18 Jun 2006 14:07:12 GMT (envelope-from bushman@freebsd.org) Date: Sun, 18 Jun 2006 14:07:12 GMT Message-Id: <200606181407.k5IE7Cga019011@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99519 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 14:07:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=99519 Change 99519 by bushman@bushman_nss_ldap_cached on 2006/06/18 14:06:36 Header files added, that allow use of __copy_hostent and __copy_netent form the libnssutil. Sources integrated. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/etc/periodic/daily/470.status-named#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/etc/sendmail/freebsd.mc#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/etc/sendmail/freebsd.submit.mc#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/string/strlcpy.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/sys/stat.2#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copynetent.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/Makefile#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.8#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.h#1 branch .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf_kld.c#1 branch .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf_kvm.c#1 branch .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf_prog.c#1 branch .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cron/cron/do_command.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cron/cron/popen.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/jail/jail.8#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/add/main.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/create/main.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/delete/main.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/info/main.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/lib/global.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/lib/lib.h#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/version/main.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/ypserv/yp_server.c#2 integrate Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/periodic/daily/470.status-named#2 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/periodic/daily/470.status-named,v 1.7 2005/11/22 22:24:27 dougb Exp $ +# $FreeBSD: src/etc/periodic/daily/470.status-named,v 1.8 2006/06/11 20:39:12 maxim Exp $ # # If there is a global system configuration file, suck it in. @@ -31,7 +31,7 @@ start=`date -v-1d '+%b %e'` rc=$(catmsgs | - fgrep -E ".*named\[[[:digit:]]+\]: transfer of .*failed .*: REFUSED" | + fgrep -E "^$start.*named\[[[:digit:]]+\]: transfer of .*failed .*: REFUSED" | sed -e "s/.*transfer of \'\(.*\)\/IN\' from \(.*\)#[0-9]*: .*/\1 from \2/" | sort -f | uniq -ic | ( usedns=0 ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/sendmail/freebsd.mc#2 (text+ko) ==== @@ -44,7 +44,7 @@ # divert(0) -VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.31 2006/04/13 03:56:03 gshapiro Exp $') +VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.32 2006/06/14 23:03:41 gshapiro Exp $') OSTYPE(freebsd6) DOMAIN(generic) ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/sendmail/freebsd.submit.mc#2 (text+ko) ==== @@ -16,7 +16,7 @@ # divert(0)dnl -VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.submit.mc,v 1.2 2006/04/13 03:56:03 gshapiro Exp $') +VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.submit.mc,v 1.3 2006/06/14 23:03:41 gshapiro Exp $') define(`confCF_VERSION', `Submit')dnl define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/string/strlcpy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ static char *rcsid = "$OpenBSD: strlcpy.c,v 1.4 1999/05/01 18:56:41 millert Exp $"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/string/strlcpy.c,v 1.8 2004/10/14 21:31:42 stefanf Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/string/strlcpy.c,v 1.9 2006/06/15 15:56:55 maxim Exp $"); #include #include @@ -41,7 +41,8 @@ * will be copied. Always NUL terminates (unless siz == 0). * Returns strlen(src); if retval >= siz, truncation occurred. */ -size_t strlcpy(dst, src, siz) +size_t +strlcpy(dst, src, siz) char *dst; const char *src; size_t siz; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/sys/stat.2#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)stat.2 8.4 (Berkeley) 5/1/95 -.\" $FreeBSD: src/lib/libc/sys/stat.2,v 1.43 2006/01/10 23:24:47 grog Exp $ +.\" $FreeBSD: src/lib/libc/sys/stat.2,v 1.45 2006/06/13 12:49:14 maxim Exp $ .\" .Dd November 15, 2004 .Dt STAT 2 @@ -315,6 +315,7 @@ .Xr chmod 2 , .Xr chown 2 , .Xr fhstat 2 , +.Xr statfs 2 , .Xr utimes 2 , .Xr symlink 7 , .Xr sticky 8 ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/Makefile#2 (text+ko) ==== @@ -1,6 +1,12 @@ -# $FreeBSD: src/usr.sbin/asf/Makefile,v 1.2 2003/06/08 08:38:11 jmallett Exp $ +# $FreeBSD: src/usr.sbin/asf/Makefile,v 1.3 2006/06/18 11:14:40 yar Exp $ PROG= asf +SRCS= asf.c asf_kld.c asf_kvm.c asf_prog.c MAN= asf.8 +DPADD= ${LIBKVM} +LDADD= -lkvm + +WARNS?= 4 + .include ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.8#2 (text+ko) ==== @@ -21,9 +21,9 @@ .\" out of the use of this software, even if advised of the possibility of .\" such damage. .\" -.\" $FreeBSD: src/usr.sbin/asf/asf.8,v 1.7 2005/01/18 20:02:29 ru Exp $ +.\" $FreeBSD: src/usr.sbin/asf/asf.8,v 1.8 2006/06/18 11:14:40 yar Exp $ .\" -.Dd June 8, 2003 +.Dd June 18, 2006 .Os .Dt ASF 8 .Sh NAME @@ -31,14 +31,20 @@ .Nd add symbol files .Sh SYNOPSIS .Nm -.Op Fl afksx +.Op Fl afKksVx +.Op Fl M Ar core +.Op Fl N Ar system +.Op Fl o Ar outfile +.Op Fl X Ar suffix .Op Ar modules-path Op Ar outfile .Sh DESCRIPTION By default, .Nm reads .Xr kldstat 8 -output from standard input and writes to standard output a list of +output from standard input and writes to the +.Pa \&.asf +file a list of .Xr gdb 1 commands to add symbol files from KLDs in subdirectories of the subdirectory .Pa modules @@ -62,7 +68,13 @@ .Ar outfile is specified, .Nm -writes to it instead of standard output. +writes to it instead of +.Pa .asf . +If +.Ar outfile +is a single dash +.Pq Sq \&- , +the standard output is used. .Sh OPTIONS The following options modify the function of .Nm : @@ -78,26 +90,72 @@ does to locate an exact path for each module, no matter where in .Ar modules-path it is located. +.It Fl K +Instead of reading from standard input, use the conventional +system interface to get the list of modules currently loaded. .It Fl k Instead of reading from standard input, start a .Xr kldstat 8 and read the information from it. +.It Fl M +Specify the core file for +.Xr kvm 3 . +Impiles +.Fl V . +.It Fl N +Specify the system file for +.Xr kvm 3 . +Implies +.Fl V . +.It Fl o +Specify the file for +.Nm +to write or append its output to. +If +.Ar outfile +is a single dash +.Pq Sq \&- , +the standard output is used. .It Fl s Do not prepend a (guessed) subdirectory of the module path. +.It Fl V +Instead of reading from standard input, use the +.Xr kvm 3 +interface to get the list of modules. +This interface allows for inspecting system crash dumps, +as well as the live system. +The +.Fl M +and +.Fl N +options will be of use if inspecting a crash dump. +Elevated privileges, e.g., those of a superuser, +may be needed to use this option. +.It Fl X +Add +.Ar suffix +to the list of suffixes +.Nm +tries to append to KLD file names. +The default list consists of +.Pa .debug , +.Pa .symbols , +and the null suffix. +The null suffix always stays at the list tail, after the suffix added. +Should it be needed in the middle of the list, +a blank suffix can be specified to +.Fl X +instead. .It Fl x -Normally +Clear the list of suffixes .Nm -looks for KLDs with names of the form -.Ao Ar module Ac Ns Pa .ko.debug . -The -.Fl x -option tells -.Nm -to look for KLDs with names of the form -.Ao Ar module Ac Ns Pa .ko . +tries to append to KLD file names. +Only the null suffix is left in the list. .El .Sh SEE ALSO .Xr gdb 1 , +.Xr kvm 3 , +.Xr kld 4 , .Xr kldstat 8 .Sh HISTORY The @@ -107,6 +165,8 @@ .Sh AUTHORS .An Greg Lehey Aq grog@FreeBSD.org .Sh BUGS -It should be possible to write to an -.Ar outfile -without specifying a module path. +Module paths are guessed in a rather naive way by default. +It is likely to lag behind the changes to the build tree layout. +Using +.Fl f +is recommended. ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 2002, 2003 Greg Lehey * All rights reserved. * @@ -24,26 +24,77 @@ * software, even if advised of the possibility of such damage. */ /* $Id: asf.c,v 1.4 2003/05/04 02:55:20 grog Exp grog $ */ -/* $FreeBSD: src/usr.sbin/asf/asf.c,v 1.8 2005/09/21 05:33:46 grog Exp $ */ + +#include +__FBSDID("$FreeBSD: src/usr.sbin/asf/asf.c,v 1.9 2006/06/18 11:14:40 yar Exp $"); -#define MAXLINE 1024 +#include +#include +#include #include +#include #include +#include +#include +#include #include #include #include -#include -#include -#include -#include -#include -#include #include -#define MAXTOKEN 10 -const char *modules_path; /* path relative to kernel - * build directory */ -const char *outfile; /* and where to write the output */ +#include "asf.h" + +struct kfile { + char *name; + caddr_t addr; + int seen; + STAILQ_ENTRY(kfile) link; +}; + +static STAILQ_HEAD(,kfile) kfile_head = STAILQ_HEAD_INITIALIZER(kfile_head); + +void +kfile_add(const char *name, caddr_t addr) +{ + struct kfile *kfp; + + if ((kfp = malloc(sizeof(*kfp))) == NULL || + (kfp->name = strdup(name)) == NULL) + errx(2, "out of memory"); + kfp->addr = addr; + kfp->seen = 0; + STAILQ_INSERT_TAIL(&kfile_head, kfp, link); +} + +static struct kfile * +kfile_find(const char *name) +{ + struct kfile *kfp; + + STAILQ_FOREACH(kfp, &kfile_head, link) + if (strcmp(kfp->name, name) == 0) + return (kfp); /* found */ + + return (NULL); /* not found */ +} + +static int +kfile_allseen(void) +{ + struct kfile *kfp; + + STAILQ_FOREACH(kfp, &kfile_head, link) + if (!kfp->seen) + return (0); /* at least one unseen */ + + return (1); /* all seen */ +} + +static int +kfile_empty(void) +{ + return (STAILQ_EMPTY(&kfile_head)); +} /* * Take a blank separated list of tokens and turn it into a list of @@ -52,7 +103,7 @@ * number of tokens, or -1 on error (typically a missing string * delimiter). */ -static int +int tokenize(char *cptr, char *token[], int maxtoken) { char delim; /* delimiter to search for */ @@ -92,70 +143,109 @@ return maxtoken; /* can't get here */ } -static char * -findmodule(char *modules_path, const char *module_name) +static void +doobj(const char *path, caddr_t addr, FILE *out) { - char *const path_argv[2] = { modules_path, NULL }; - char *module_path = NULL; - int module_name_len = strlen(module_name); - FTS *fts; - FTSENT *ftsent; + uintmax_t base = (uintptr_t)addr; + uintmax_t textaddr = 0; + uintmax_t dataaddr = 0; + uintmax_t bssaddr = 0; + uintmax_t *up; + int octokens; + char *octoken[MAXTOKEN]; + char ocbuf[LINE_MAX + PATH_MAX]; + FILE *objcopy; - if (modules_path == NULL) { - fprintf(stderr, - "Can't allocate memory to traverse a path: %s (%d)\n", - strerror(errno), - errno); - exit(1); + snprintf(ocbuf, sizeof(ocbuf), + "/usr/bin/objdump --section-headers %s", path); + if ((objcopy = popen(ocbuf, "r")) == NULL) + err(2, "can't start %s", ocbuf); + while (fgets(ocbuf, sizeof(ocbuf), objcopy)) { + octokens = tokenize(ocbuf, octoken, MAXTOKEN); + if (octokens <= 1) + continue; + up = NULL; + if (strcmp(octoken[1], ".text") == 0) + up = &textaddr; + else if (strcmp(octoken[1], ".data") == 0) + up = &dataaddr; + else if (strcmp(octoken[1], ".bss") == 0) + up = &bssaddr; + if (up == NULL) + continue; + *up = strtoumax(octoken[3], NULL, 16) + base; } - fts = fts_open(path_argv, FTS_PHYSICAL | FTS_NOCHDIR, NULL); - if (fts == NULL) { - fprintf(stderr, - "Can't begin traversing path %s: %s (%d)\n", - modules_path, - strerror(errno), - errno); - exit(1); + if (textaddr) { /* we must have a text address */ + fprintf(out, "add-symbol-file %s 0x%jx", path, textaddr); + if (dataaddr) + fprintf(out, " -s .data 0x%jx", dataaddr); + if (bssaddr) + fprintf(out, " -s .bss 0x%jx", bssaddr); + fprintf(out, "\n"); } - while ((ftsent = fts_read(fts)) != NULL) { - if (ftsent->fts_info == FTS_DNR || - ftsent->fts_info == FTS_ERR || - ftsent->fts_info == FTS_NS) { - fprintf(stderr, - "Error while traversing path %s: %s (%d)\n", - modules_path, - strerror(errno), - errno); - exit(1); +} + +static void +findmodules(const char *modules_path, const char *sfx[], FILE *out) +{ + char *path_argv[2]; + char *p; + FTS *fts; + FTSENT *ftsent; + struct kfile *kfp; + int i; + int sl; + + /* Have to copy modules_path here because it's const */ + if ((path_argv[0] = strdup(modules_path)) == NULL) + errx(2, "out of memory"); + path_argv[1] = NULL; + + /* Have to fts once per suffix to find preferred suffixes first */ + do { + sl = *sfx ? strlen(*sfx) : 0; /* current suffix length */ + fts = fts_open(path_argv, FTS_PHYSICAL | FTS_NOCHDIR, NULL); + if (fts == NULL) + err(2, "can't begin traversing path %s", modules_path); + while ((ftsent = fts_read(fts)) != NULL) { + if (ftsent->fts_info == FTS_DNR || + ftsent->fts_info == FTS_ERR || + ftsent->fts_info == FTS_NS) { + errno = ftsent->fts_errno; + err(2, "error while traversing path %s", ftsent->fts_path); + } + if (ftsent->fts_info != FTS_F) + continue; /* not a plain file */ + + if (sl > 0) { + /* non-blank suffix; see if file name has it */ + i = ftsent->fts_namelen - sl; + if (i <= 0 || strcmp(ftsent->fts_name + i, *sfx) != 0) + continue; /* no such suffix */ + if ((p = strdup(ftsent->fts_name)) == NULL) + errx(2, "out of memory"); + p[i] = '\0'; /* remove suffix in the copy */ + kfp = kfile_find(p); + free(p); + } else + kfp = kfile_find(ftsent->fts_name); + + if (kfp && !kfp->seen) { + doobj(ftsent->fts_path, kfp->addr, out); + kfp->seen = 1; + /* Optimization: stop fts as soon as seen all loaded modules */ + if (kfile_allseen()) { + fts_close(fts); + goto done; + } + } } - if (ftsent->fts_info != FTS_F || - ftsent->fts_namelen != module_name_len || - memcmp(module_name, ftsent->fts_name, module_name_len) != 0) - continue; - if (asprintf(&module_path, - "%.*s", - ftsent->fts_pathlen, - ftsent->fts_path) == -1) { - fprintf(stderr, - "Can't allocate memory traversing path %s: %s (%d)\n", - modules_path, - strerror(errno), - errno); - exit(1); - } - break; - } - if (ftsent == NULL && errno != 0) { - fprintf(stderr, - "Couldn't complete traversing path %s: %s (%d)\n", - modules_path, - strerror(errno), - errno); - exit(1); - } - fts_close(fts); - free(modules_path); - return (module_path); + if (ftsent == NULL && errno != 0) + err(2, "couldn't complete traversing path %s", modules_path); + fts_close(fts); + } while (*sfx++); +done: + free(path_argv[0]); } static void @@ -163,169 +253,161 @@ { fprintf(stderr, "Usage:\n" - "%s [-a] [-f] [-k] [-s] [-x] [modules-path [outfile]]\n\n" - "\t-a\tappend to outfile)\n" - "\t-f\tfind the module in any subdirectory of module-path\n" + "%s [-afKksVx] [-M core] [-N system ] [-o outfile] [-X suffix]\n" + "%*s [modules-path [outfile]]\n\n" + "\t-a\tappend to outfile\n" + "\t-f\tfind the module in any subdirectory of modules-path\n" + "\t-K\tuse kld(2) to get the list of modules\n" "\t-k\ttake input from kldstat(8)\n" + "\t-M\tspecify core name for kvm(3)\n" + "\t-N\tspecify system name for kvm(3)\n" + "\t-o\tuse outfile instead of \".asf\"\n" "\t-s\tdon't prepend subdir for module path\n" - "\t-x\tdon't append \".debug\" to module name\n", - myname); + "\t-V\tuse kvm(3) to get the list of modules\n" + "\t-X\tappend suffix to list of possible module file name suffixes\n" + "\t-x\tclear list of possible module file name suffixes\n", + myname, strlen(myname), ""); + exit(2); } +#define MAXSUFFIXES 15 + +/* KLD file names end in this */ +static int nsuffixes = 2; +static const char *suffixes[MAXSUFFIXES + 1] = { + ".debug", + ".symbols", + NULL +}; + int main(int argc, char *argv[]) { - char buf[MAXLINE]; - FILE *kldstat; - FILE *objcopy; + char basename[PATH_MAX]; + char path[PATH_MAX]; + const char *filemode = "w"; /* mode for outfile */ + const char *modules_path = "modules"; /* path to kernel build directory */ + const char *outfile = ".asf"; /* and where to write the output */ + const char *corefile = NULL; /* for kvm(3) */ + const char *sysfile = NULL; /* for kvm(3) */ + const char **sfx; + struct kfile *kfp; + struct stat st; FILE *out; /* output file */ - char ocbuf[MAXLINE]; - int tokens; /* number of tokens on line */ - char basetoken[MAXLINE]; + int dofind = 0; + int dokld = 0; + int dokvm = 0; + int nosubdir = 0; + int runprog = 0; int i; - const char *filemode = "w"; /* mode for outfile */ - char cwd[MAXPATHLEN]; /* current directory */ - const char *debugname = ".debug"; /* some file names end in this */ - char *token[MAXTOKEN]; - int nosubdir = 0; - int dofind = 0; + const int sl = strlen(KLDSUFFIX); - getcwd(cwd, MAXPATHLEN); /* find where we are */ - kldstat = stdin; - for (i = 1; i < argc; i++) { - if (argv[i][0] == '-') { - if (strcmp(argv[i], "-k") == 0) { /* get input from kldstat(8) */ - if (!(kldstat = popen("kldstat", "r"))) { - perror("Can't start kldstat"); - return 1; - } - } else if (strcmp(argv[i], "-a") == 0) /* append to outfile */ - filemode = "a"; - else if (strcmp(argv[i], "-x") == 0) /* no .debug extension */ - debugname = ""; /* nothing */ - else if (strcmp(argv[i], "-s") == 0) /* no subdir */ - nosubdir = 1; /* nothing */ - else if (strcmp(argv[i], "-f") == 0) /* find .ko (recursively) */ - dofind = 1; - else { - fprintf(stderr, - "Invalid option: %s, aborting\n", - argv[i]); - usage(argv[0]); - return 1; - } - } else if (modules_path == NULL) - modules_path = argv[i]; - else if (outfile == NULL) - outfile = argv[i]; - else { - fprintf(stderr, - "Extraneous startup information: \"%s\", aborting\n", - argv[i]); + while ((i = getopt(argc, argv, "afKkM:N:o:sVX:x")) != -1) + switch (i) { + case 'a': + filemode = "a"; /* append to outfile */ + break; + case 'f': + dofind = 1; /* find .ko (recursively) */ + break; + case 'K': + dokld = 1; /* use kld(2) interface */ + break; + case 'k': + runprog = 1; /* get input from kldstat(8) */ + break; + case 'M': + corefile = optarg; /* core file for kvm(3) */ + break; + case 'N': + sysfile = optarg; /* system file (kernel) for kvm(3) */ + break; + case 'o': + outfile = optarg; /* output file name */ + break; + case 's': + nosubdir = 1; /* don't descend into subdirs */ + break; + case 'V': + dokvm = 1; /* use kvm(3) interface */ + break; + case 'X': + if (nsuffixes >= MAXSUFFIXES) + errx(2, "only %d suffixes can be specified", MAXSUFFIXES); + suffixes[nsuffixes++] = optarg; + suffixes[nsuffixes] = NULL; + break; + case 'x': + nsuffixes = 0; + suffixes[0] = NULL; + break; + default: usage(argv[0]); - return 1; } + + argc -= optind; + argv += optind; + + if (argc > 0) { + modules_path = argv[0]; + argc--, argv++; } - if (modules_path == NULL) - modules_path = "modules"; - if (outfile == NULL) - outfile = ".asf"; - if ((out = fopen(outfile, filemode)) == NULL) { - fprintf(stderr, - "Can't open output file %s: %s (%d)\n", - outfile, - strerror(errno), - errno); - return 1; + if (argc > 0) { + outfile = argv[0]; + argc--, argv++; } - while (fgets(buf, MAXLINE, kldstat)) { - if ((!(strstr(buf, "kernel"))) - && buf[0] != 'I') { - quad_t base; - quad_t textaddr = 0; - quad_t dataaddr = 0; - quad_t bssaddr = 0; + if (argc > 0) + usage(argv[0]); + + if (strcmp(outfile, "-") == 0) + out = stdout; + else + if ((out = fopen(outfile, filemode)) == NULL) + err(2, "can't open output file %s", outfile); - tokens = tokenize(buf, token, MAXTOKEN); - if (tokens < 4) - continue; - base = strtoll(token[2], NULL, 16); - if (!dofind) { - strcpy(basetoken, token[4]); - basetoken[strlen(basetoken) - 3] = '/'; - basetoken[strlen(basetoken) - 2] = '\0'; /* cut off the .ko */ - snprintf(ocbuf, - MAXLINE, - "/usr/bin/objdump --section-headers %s/%s%s%s", - modules_path, - nosubdir ? "" : basetoken, - token[4], - debugname); - } else { - char *modpath; + if (dokvm || corefile || sysfile) { + if (dokld || runprog) + warnx("using kvm(3) instead"); + asf_kvm(sysfile, corefile); + } else if (dokld) { + if (runprog) + warnx("using kld(2) instead"); + asf_kld(); + } else + asf_prog(runprog); - modpath = findmodule(strdup(modules_path), token[4]); - if (modpath == NULL) - continue; - snprintf(ocbuf, - MAXLINE, - "/usr/bin/objdump --section-headers %s%s", - modpath, - debugname); - free(modpath); - } - if (!(objcopy = popen(ocbuf, "r"))) { - fprintf(stderr, - "Can't start %s: %s (%d)\n", - ocbuf, - strerror(errno), - errno); - return 1; - } - while (fgets(ocbuf, MAXLINE, objcopy)) { - int octokens; - char *octoken[MAXTOKEN]; + /* Avoid long operations like module tree traversal when nothing to do */ + if (kfile_empty()) { + warnx("no kernel modules loaded"); + return (0); + } - octokens = tokenize(ocbuf, octoken, MAXTOKEN); - if (octokens > 1) { - if (!strcmp(octoken[1], ".text")) - textaddr = strtoll(octoken[3], NULL, 16) + base; - else if (!strcmp(octoken[1], ".data")) - dataaddr = strtoll(octoken[3], NULL, 16) + base; - else if (!strcmp(octoken[1], ".bss")) - bssaddr = strtoll(octoken[3], NULL, 16) + base; - } + if (!dofind) + STAILQ_FOREACH(kfp, &kfile_head, link) { + if (!nosubdir) { + /* prepare basename of KLD, w/o suffix */ + strlcpy(basename, kfp->name, sizeof(basename) - 1); + i = strlen(basename); + if (i > sl && strcmp(basename + i - sl, KLDSUFFIX) == 0) + i -= sl; + basename[i] = '/'; + basename[i + 1] = '\0'; } - if (textaddr) { /* we must have a text address */ - if (!dofind) { - fprintf(out, - "add-symbol-file %s/%s/%s%s%s 0x%llx", - cwd, - modules_path, - nosubdir ? "" : basetoken, - token[4], - debugname, - textaddr); - } else { - char *modpath; - - modpath = findmodule(strdup(modules_path), token[4]); - if (modpath == NULL) - continue; - fprintf(out, - "add-symbol-file %s%s 0x%llx", - modpath, - debugname, - textaddr); - free(modpath); + for (sfx = suffixes;; sfx++) { + snprintf(path, sizeof(path), + "%s/%s%s%s", + modules_path, + nosubdir ? "" : basename, + kfp->name, + *sfx ? *sfx : ""); + if (*sfx == NULL || stat(path, &st) == 0) { + doobj(path, kfp->addr, out); + break; } - if (dataaddr) - fprintf(out, " -s .data 0x%llx", dataaddr); - if (bssaddr) - fprintf(out, " -s .bss 0x%llx", bssaddr); - fprintf(out, "\n"); } } - } - return 0; + else + findmodules(modules_path, suffixes, out); + + return (0); } ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cron/cron/do_command.c#3 (text+ko) ==== @@ -17,7 +17,7 @@ #if !defined(lint) && !defined(LINT) static const char rcsid[] = - "$FreeBSD: src/usr.sbin/cron/cron/do_command.c,v 1.24 2006/06/01 15:03:06 maxim Exp $"; + "$FreeBSD: src/usr.sbin/cron/cron/do_command.c,v 1.26 2006/06/11 21:13:49 maxim Exp $"; #endif @@ -243,7 +243,7 @@ (void) endpwent(); # endif /* set our directory, uid and gid. Set gid first, - * since once we set uid, we've lost root privledges. + * since once we set uid, we've lost root privileges. */ if (setgid(e->gid) != 0) { log_it(usernm, getpid(), ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cron/cron/popen.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ static char sccsid[] = "@(#)popen.c 5.7 (Berkeley) 2/14/89"; #endif static const char rcsid[] = - "$FreeBSD: src/usr.sbin/cron/cron/popen.c,v 1.13 2006/06/01 15:03:06 maxim Exp $"; + "$FreeBSD: src/usr.sbin/cron/cron/popen.c,v 1.15 2006/06/11 21:13:49 maxim Exp $"; #endif /* not lint */ #include "cron.h" @@ -172,8 +172,10 @@ /* fall back to the old method */ (void) endpwent(); # endif - /* set our directory, uid and gid. Set gid first, - * since once we set uid, we've lost root privledges. + /* + * Set our directory, uid and gid. Set gid + * first since once we set uid, we've lost + * root privileges. */ if (setgid(e->gid) != 0) _exit(ERROR_EXIT); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/jail/jail.8#2 (text+ko) ==== @@ -31,9 +31,9 @@ .\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp .\" ---------------------------------------------------------------------------- .\" -.\" $FreeBSD: src/usr.sbin/jail/jail.8,v 1.79 2006/05/28 09:44:13 simon Exp $ +.\" $FreeBSD: src/usr.sbin/jail/jail.8,v 1.80 2006/06/11 12:57:41 bz Exp $ .\" -.Dd May 28, 2006 +.Dd June 11, 2006 .Dt JAIL 8 .Os .Sh NAME @@ -161,7 +161,7 @@ to build the jail directory tree. For the sake of this example, we will assume you built it in -.Pa /data/jail/192.168.11.100 , +.Pa /data/jail/192.0.2.100 , named for the jailed IP address. Substitute below as needed with your own directory, IP address, and hostname. @@ -187,11 +187,11 @@ in the host environment: .Bd -literal -offset indent sendmail_enable="NO" -inetd_flags="-wW -a 192.168.11.23" +inetd_flags="-wW -a 192.0.2.23" rpcbind_enable="NO" .Ed .Pp -.Li 192.168.11.23 +.Li 192.0.2.23 is the native IP address for the host system, in this example. Daemons that run out of .Xr inetd 8 @@ -260,7 +260,7 @@ .Pp Start a shell in the jail: .Pp -.Dl "jail /data/jail/192.168.11.100 testhostname 192.168.11.100 /bin/sh" +.Dl "jail /data/jail/192.0.2.100 testhostname 192.0.2.100 /bin/sh" .Pp Assuming no errors, you will end up with a shell prompt within the jail. You can now run @@ -313,7 +313,7 @@ .Xr syslogd 8 in the host environment to listen on the syslog socket in the jail environment; in this example, the syslog socket would be stored in -.Pa /data/jail/192.168.11.100/var/run/log . +.Pa /data/jail/192.0.2.100/var/run/log . .Pp Exit from the shell, and the jail will be shut down. .Ss "Starting the Jail" @@ -340,9 +340,9 @@ If you do decide to set this variable, it must be set before starting any jails, and once each boot. .Bd -literal -offset indent -ifconfig ed0 inet alias 192.168.11.100/32 -mount -t procfs proc /data/jail/192.168.11.100/proc -jail /data/jail/192.168.11.100 testhostname 192.168.11.100 \\ +ifconfig ed0 inet alias 192.0.2.100/32 +mount -t procfs proc /data/jail/192.0.2.100/proc +jail /data/jail/192.0.2.100 testhostname 192.0.2.100 \\ /bin/sh /etc/rc .Ed .Pp ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/pkg_install/add/main.c#2 (text+ko) ==== @@ -19,7 +19,7 @@ */ #include -__FBSDID("$FreeBSD: src/usr.sbin/pkg_install/add/main.c,v 1.67 2006/03/09 14:49:19 phk Exp $"); +__FBSDID("$FreeBSD: src/usr.sbin/pkg_install/add/main.c,v 1.68 2006/06/12 22:39:31 obrien Exp $"); #include #include @@ -108,7 +108,7 @@ while ((ch = getopt(argc, argv, Options)) != -1) { switch(ch) { case 'v': - Verbose = TRUE; + Verbose++; break; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jun 18 14:34:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF36E16A47D; Sun, 18 Jun 2006 14:34:50 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AC1C816A47B for ; Sun, 18 Jun 2006 14:34:50 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6B9E043D48 for ; Sun, 18 Jun 2006 14:34:50 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IEYoOM020464 for ; Sun, 18 Jun 2006 14:34:50 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IEYnSp020461 for perforce@freebsd.org; Sun, 18 Jun 2006 14:34:49 GMT (envelope-from bushman@freebsd.org) Date: Sun, 18 Jun 2006 14:34:49 GMT Message-Id: <200606181434.k5IEYnSp020461@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99525 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 14:34:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=99525 Change 99525 by bushman@bushman_nss_ldap_cached on 2006/06/18 14:33:56 nss_files module now properly support "networks" source Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.h#3 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#2 (text+ko) ==== @@ -56,9 +56,31 @@ #include #include #include "netdb_private.h" +#include "reentrant.h" +#include "copynetent.h" +#include "nss_files.h" + +static void _setnethtent(int, struct files_netent_data *); +static void _endnethtent(struct files_netent_data *); +static int getnetent_p(struct netent *, struct files_netent_data *); +static void files_netent_data_free(void *); + +NETDB_THREAD_ALLOC(files_netent_data) + +static void +files_netent_data_free(void *ptr) +{ + struct files_netent_data *ned = ptr; + + if (ned == NULL) + return; + ned->stayopen = 0; + _endnethtent(ned); + free(ned); +} static void -_setnethtent(int f, struct netent_data *ned) +_setnethtent(int f, struct files_netent_data *ned) { if (ned->netf == NULL) @@ -69,7 +91,7 @@ } static void -_endnethtent(struct netent_data *ned) +_endnethtent(struct files_netent_data *ned) { if (ned->netf) { @@ -80,7 +102,7 @@ } static int -getnetent_p(struct netent *ne, struct netent_data *ned) +getnetent_p(struct netent *ne, struct files_netent_data *ned) { char *p, *bp, *ep; char *cp, **q; @@ -153,7 +175,7 @@ size_t buflen; int *errnop, *h_errnop; - struct netent_data *ned; + struct files_netent_data *ned; struct netent ne, *nptr; res_state statp; int error; @@ -165,7 +187,7 @@ h_errnop = va_arg(ap, int *); statp = __res_state(); - if ((ned = __netent_data_init()) == NULL) { + if ((ned = __files_netent_data_init()) == NULL) { RES_SET_H_ERRNO(statp, NETDB_INTERNAL); *h_errnop = statp->res_h_errno; return (NS_UNAVAIL); @@ -183,14 +205,14 @@ int __files_setnetent(void *rval, void *cb_data, va_list ap) { - struct netent_data *ned; + struct files_netent_data *ned; res_state statp; int f; f = va_arg(ap, int); statp = __res_state(); - if ((ned = __netent_data_init()) == NULL) { + if ((ned = __files_netent_data_init()) == NULL) { RES_SET_H_ERRNO(statp, NETDB_INTERNAL); return (NS_UNAVAIL); } @@ -203,11 +225,11 @@ int __files_endnetent(void *rval, void *cb_data, va_list ap) { - struct netent_data *ned; + struct files_netent_data *ned; res_state statp; statp = __res_state(); - if ((ned = __netent_data_init()) == NULL) { + if ((ned = __files_netent_data_init()) == NULL) { RES_SET_H_ERRNO(statp, NETDB_INTERNAL); return (NS_UNAVAIL); } @@ -225,7 +247,7 @@ size_t buflen; int *errnop, *h_errnop; struct netent *nptr, ne; - struct netent_data *ned; + struct files_netent_data *ned; char **cp; res_state statp; int error; @@ -238,7 +260,7 @@ h_errnop = va_arg(ap, int *); statp = __res_state(); - if ((ned = __netent_data_init()) == NULL) { + if ((ned = __files_netent_data_init()) == NULL) { RES_SET_H_ERRNO(statp, NETDB_INTERNAL); *h_errnop = statp->res_h_errno; return (NS_UNAVAIL); @@ -276,7 +298,7 @@ size_t buflen; int *errnop, *h_errnop; struct netent *nptr, ne; - struct netent_data *ned; + struct files_netent_data *ned; res_state statp; int error; @@ -289,7 +311,7 @@ h_errnop = va_arg(ap, int *); statp = __res_state(); - if ((ned = __netent_data_init()) == NULL) { + if ((ned = __files_netent_data_init()) == NULL) { RES_SET_H_ERRNO(statp, NETDB_INTERNAL); *h_errnop = statp->res_h_errno; return (NS_UNAVAIL); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#5 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.h#3 (text+ko) ==== @@ -43,6 +43,9 @@ #ifndef _HOSTBUFSIZE #define _HOSTBUFSIZE (8 * 1024) #endif +#ifndef _NETBUFSIZE +#define _NETBUFSIZE 1025 +#endif struct files_hostent_data { uint32_t host_addr[4]; /* IPv4 or IPv6 */ @@ -52,3 +55,10 @@ FILE *hostf; int stayopen; }; + +struct files_netent_data { + char *net_aliases[_MAXALIASES]; + char netbuf[_NETBUFSIZE]; + FILE *netf; + int stayopen; +}; From owner-p4-projects@FreeBSD.ORG Sun Jun 18 15:23:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C326A16A47B; Sun, 18 Jun 2006 15:23:52 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9FF5B16A479 for ; Sun, 18 Jun 2006 15:23:52 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 597F543D46 for ; Sun, 18 Jun 2006 15:23:52 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IFNqeO023695 for ; Sun, 18 Jun 2006 15:23:52 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IFNqQY023691 for perforce@freebsd.org; Sun, 18 Jun 2006 15:23:52 GMT (envelope-from scottl@freebsd.org) Date: Sun, 18 Jun 2006 15:23:52 GMT Message-Id: <200606181523.k5IFNqQY023691@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 99528 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 15:23:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=99528 Change 99528 by scottl@scottl-wv1u on 2006/06/18 15:23:05 Start working out the periph locking API: cam_periph_lock: Take a hard reference on the SIM via an interlock with the XPT. Returns with the SIM lock held. cam_periph_unlock: removes a reference and returns with the SIM unlocked. cam_periph_acquire: Take a reference on the SIM. Requires the SIM lock to already be held. cam_periph_release: Removes a reference a releases the periph if the refcount reaches 0. Requires the SIM lock to already be held. Adapt the da, pass, and ses drivers to this API. Also, this codifies the lock order as xpt_lock first and sim lock second, so rearrange locking in the camisr to honor this. Affected files ... .. //depot/projects/scottl-camlock/src/sys/cam/cam_periph.c#11 edit .. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#38 edit .. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.h#4 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_da.c#11 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_pass.c#9 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_ses.c#7 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/cam/cam_periph.c#11 (text+ko) ==== @@ -51,6 +51,7 @@ #include #include #include +#include #include #include @@ -277,6 +278,7 @@ return(CAM_REQ_CMP_ERR); s = splsoftcam(); + mtx_assert(periph->sim->mtx, MA_OWNED); periph->refcount++; splx(s); @@ -292,6 +294,7 @@ return; s = splsoftcam(); + mtx_assert(periph->sim->mtx, MA_OWNED); if ((--periph->refcount == 0) && (periph->flags & CAM_PERIPH_INVALID)) { camperiphfree(periph); @@ -500,23 +503,25 @@ int cam_periph_lock(struct cam_periph *periph, int priority) { - int error; + + /* + * Interlock the SIM lock with the XPT lock to protect against the + * SIM going away unexpectedly while we are trying reference it. + */ + xpt_lock_buses(); + + /* + * Now it's safe to take the SIM lock. + */ + mtx_lock(periph->sim->mtx); + xpt_unlock_buses(); /* - * Increment the reference count on the peripheral - * while we wait for our lock attempt to succeed - * to ensure the peripheral doesn't disappear out - * from under us while we sleep. + * Increment the reference count on the peripheral. */ - if (cam_periph_acquire(periph) != CAM_REQ_CMP) + if (cam_periph_acquire(periph) != CAM_REQ_CMP) { + mtx_unlock(periph->sim->mtx); return(ENXIO); - - while ((periph->flags & CAM_PERIPH_LOCKED) != 0) { - periph->flags |= CAM_PERIPH_LOCK_WANTED; - if ((error = tsleep(periph, priority, "caplck", 0)) != 0) { - cam_periph_release(periph); - return error; - } } periph->flags |= CAM_PERIPH_LOCKED; @@ -530,12 +535,9 @@ cam_periph_unlock(struct cam_periph *periph) { periph->flags &= ~CAM_PERIPH_LOCKED; - if ((periph->flags & CAM_PERIPH_LOCK_WANTED) != 0) { - periph->flags &= ~CAM_PERIPH_LOCK_WANTED; - wakeup(periph); - } cam_periph_release(periph); + mtx_unlock(periph->sim->mtx); } /* ==== //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#38 (text+ko) ==== @@ -7181,6 +7181,18 @@ { } +void +xpt_lock_buses(void) +{ + mtx_lock(&xsoftc.xpt_lock); +} + +void +xpt_unlock_buses(void) +{ + mtx_unlock(&xsoftc.xpt_lock); +} + static void camisr(void *V_queue) { @@ -7205,8 +7217,6 @@ int runq; TAILQ_REMOVE(&queue, ccb_h, sim_links.tqe); - sim = ccb_h->path->bus->sim; - mtx_lock(sim->mtx); ccb_h->pinfo.index = CAM_UNQUEUED_INDEX; splx(s); @@ -7228,7 +7238,6 @@ * Increment the count since this command is done. */ xsoftc.num_highpower++; - mtx_unlock(&xsoftc.xpt_lock); /* * Any high powered commands queued up? @@ -7236,11 +7245,17 @@ if (send_ccb != NULL) { STAILQ_REMOVE_HEAD(hphead, xpt_links.stqe); + mtx_unlock(&xsoftc.xpt_lock); xpt_release_devq(send_ccb->ccb_h.path, /*count*/1, /*runqueue*/TRUE); - } + } else + mtx_unlock(&xsoftc.xpt_lock); } + + sim = ccb_h->path->bus->sim; + mtx_lock(sim->mtx); + if ((ccb_h->func_code & XPT_FC_USER_CCB) == 0) { struct cam_ed *dev; ==== //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.h#4 (text+ko) ==== @@ -71,6 +71,8 @@ struct cam_periph *xpt_path_periph(struct cam_path *path); void xpt_async(u_int32_t async_code, struct cam_path *path, void *async_arg); +void xpt_lock_buses(void); +void xpt_unlock_buses(void); #endif /* _KERNEL */ #endif /* _CAM_CAM_XPT_H */ ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_da.c#11 (text+ko) ==== @@ -531,11 +531,6 @@ splx(s); return (ENXIO); } - mtx_lock(periph->sim->mtx); - - unit = periph->unit_number; - - softc = (struct da_softc *)periph->softc; CAM_DEBUG(periph->path, CAM_DEBUG_TRACE, ("daopen: disk=%s%d (unit %d)\n", dp->d_name, dp->d_unit, @@ -548,6 +543,9 @@ mtx_unlock(periph->sim->mtx); return(ENXIO); } + + unit = periph->unit_number; + softc = (struct da_softc *)periph->softc; softc->flags |= DA_FLAG_OPEN; if ((softc->flags & DA_FLAG_PACK_INVALID) != 0) { @@ -578,7 +576,6 @@ cam_periph_release(periph); } cam_periph_unlock(periph); - mtx_unlock(periph->sim->mtx); return (error); } @@ -593,14 +590,12 @@ if (periph == NULL) return (ENXIO); - mtx_lock(periph->sim->mtx); - softc = (struct da_softc *)periph->softc; - if ((error = cam_periph_lock(periph, PRIBIO)) != 0) { - mtx_unlock(periph->sim->mtx); return (error); /* error code from tsleep */ } + softc = (struct da_softc *)periph->softc; + if ((softc->quirks & DA_Q_NO_SYNC_CACHE) == 0) { union ccb *ccb; @@ -665,7 +660,6 @@ softc->flags &= ~DA_FLAG_OPEN; cam_periph_unlock(periph); cam_periph_release(periph); - mtx_unlock(periph->sim->mtx); return (0); } @@ -1201,7 +1195,7 @@ * Lock this peripheral until we are setup. * This first call can't block */ - (void)cam_periph_lock(periph, PRIBIO); + (void)cam_periph_acquire(periph); xpt_schedule(periph, /*priority*/5); return(CAM_REQ_CMP); @@ -1661,7 +1655,7 @@ * operation. */ xpt_release_ccb(done_ccb); - cam_periph_unlock(periph); + cam_periph_release(periph); return; } case DA_CCB_WAITING: ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_pass.c#9 (text+ko) ==== @@ -332,13 +332,17 @@ if (periph == NULL) return (ENXIO); + if ((error = cam_periph_lock(periph, PRIBIO | PCATCH)) != 0) { + splx(s); + return (error); + } + softc = (struct pass_softc *)periph->softc; s = splsoftcam(); - mtx_lock(periph->sim->mtx); if (softc->flags & PASS_FLAG_INVALID) { splx(s); - mtx_unlock(periph->sim->mtx); + cam_periph_unlock(periph); return(ENXIO); } @@ -348,7 +352,7 @@ error = securelevel_gt(td->td_ucred, 1); if (error) { splx(s); - mtx_unlock(periph->sim->mtx); + cam_periph_unlock(periph); return(error); } @@ -357,7 +361,7 @@ */ if (((flags & FWRITE) == 0) || ((flags & FREAD) == 0)) { splx(s); - mtx_unlock(periph->sim->mtx); + cam_periph_unlock(periph); return(EPERM); } @@ -368,26 +372,21 @@ xpt_print_path(periph->path); printf("can't do nonblocking accesss\n"); splx(s); - mtx_unlock(periph->sim->mtx); + cam_periph_unlock(periph); return(EINVAL); } - if ((error = cam_periph_lock(periph, PRIBIO | PCATCH)) != 0) { - splx(s); - mtx_unlock(periph->sim->mtx); - return (error); - } - splx(s); if ((softc->flags & PASS_FLAG_OPEN) == 0) { - if (cam_periph_acquire(periph) != CAM_REQ_CMP) + if (cam_periph_acquire(periph) != CAM_REQ_CMP) { + cam_periph_unlock(periph); return(ENXIO); + } softc->flags |= PASS_FLAG_OPEN; } cam_periph_unlock(periph); - mtx_unlock(periph->sim->mtx); return (error); } @@ -403,19 +402,15 @@ if (periph == NULL) return (ENXIO); - softc = (struct pass_softc *)periph->softc; - - mtx_lock(periph->sim->mtx); if ((error = cam_periph_lock(periph, PRIBIO)) != 0) { - mtx_unlock(periph->sim->mtx); return (error); } + softc = (struct pass_softc *)periph->softc; softc->flags &= ~PASS_FLAG_OPEN; cam_periph_unlock(periph); cam_periph_release(periph); - mtx_unlock(periph->sim->mtx); return (0); } ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_ses.c#7 (text+ko) ==== @@ -420,17 +420,14 @@ splx(s); return (ENXIO); } - mtx_lock(periph->sim->mtx); if ((error = cam_periph_lock(periph, PRIBIO | PCATCH)) != 0) { splx(s); - mtx_unlock(periph->sim->mtx); return (error); } splx(s); if (cam_periph_acquire(periph) != CAM_REQ_CMP) { cam_periph_unlock(periph); - mtx_unlock(periph->sim->mtx); return (ENXIO); } @@ -463,7 +460,6 @@ cam_periph_release(periph); } cam_periph_unlock(periph); - mtx_unlock(periph->sim->mtx); return (error); } @@ -480,19 +476,15 @@ if (periph == NULL) return (ENXIO); - softc = (struct ses_softc *)periph->softc; - - mtx_lock(periph->sim->mtx); if ((error = cam_periph_lock(periph, PRIBIO)) != 0) { - mtx_unlock(periph->sim->mtx); return (error); } + softc = (struct ses_softc *)periph->softc; softc->ses_flags &= ~SES_FLAG_OPEN; cam_periph_unlock(periph); cam_periph_release(periph); - mtx_unlock(periph->sim->mtx); return (0); } From owner-p4-projects@FreeBSD.ORG Sun Jun 18 16:59:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3227416A47C; Sun, 18 Jun 2006 16:59:20 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CF26016A47A for ; Sun, 18 Jun 2006 16:59:19 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E26A43D45 for ; Sun, 18 Jun 2006 16:59:19 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IGxJsT036809 for ; Sun, 18 Jun 2006 16:59:19 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IGxJWB036806 for perforce@freebsd.org; Sun, 18 Jun 2006 16:59:19 GMT (envelope-from csjp@freebsd.org) Date: Sun, 18 Jun 2006 16:59:19 GMT Message-Id: <200606181659.k5IGxJWB036806@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 99535 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 16:59:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=99535 Change 99535 by csjp@csjp_rnd01 on 2006/06/18 16:59:05 Use bus_get_dma_tag(9) to initialize the parent instead of using NULL. This fixes a null pointer dereference and allows the bge(4) devices to be attached to the system properly. Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/dev/bge/if_bge.c#6 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/dev/bge/if_bge.c#6 (text+ko) ==== @@ -1726,7 +1726,7 @@ /* * Allocate the parent bus DMA tag appropriate for PCI. */ - error = bus_dma_tag_create(NULL, /* parent */ + error = bus_dma_tag_create(bus_get_dma_tag(sc->bge_dev),/* parent */ PAGE_SIZE, 0, /* alignment, boundary */ BUS_SPACE_MAXADDR, /* lowaddr */ BUS_SPACE_MAXADDR, /* highaddr */ From owner-p4-projects@FreeBSD.ORG Sun Jun 18 20:03:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 121EE16A47D; Sun, 18 Jun 2006 20:03:21 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C8A5F16A47A for ; Sun, 18 Jun 2006 20:03:20 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8338943D45 for ; Sun, 18 Jun 2006 20:03:20 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IK3Kks052726 for ; Sun, 18 Jun 2006 20:03:20 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IK3KKk052723 for perforce@freebsd.org; Sun, 18 Jun 2006 20:03:20 GMT (envelope-from cognet@freebsd.org) Date: Sun, 18 Jun 2006 20:03:20 GMT Message-Id: <200606182003.k5IK3KKk052723@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 99553 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 20:03:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=99553 Change 99553 by cognet@cognet on 2006/06/18 20:03:05 Reserve additional space for the boot_commands array, or else we'll end up writing in the bootiic code when flashing a new one, which is not good. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/bootiic/arm_init.S#4 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/bootiic/arm_init.S#4 (text+ko) ==== @@ -117,3 +117,4 @@ .string "tftp 0x20000000 kernel.bin " .string "e 0x20000000 " #endif + .space 0x50 From owner-p4-projects@FreeBSD.ORG Sun Jun 18 20:04:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E0D6A16A47E; Sun, 18 Jun 2006 20:04:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A483C16A47C for ; Sun, 18 Jun 2006 20:04:22 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73FC143D46 for ; Sun, 18 Jun 2006 20:04:22 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IK4Mp1052768 for ; Sun, 18 Jun 2006 20:04:22 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IK4MRx052765 for perforce@freebsd.org; Sun, 18 Jun 2006 20:04:22 GMT (envelope-from cognet@freebsd.org) Date: Sun, 18 Jun 2006 20:04:22 GMT Message-Id: <200606182004.k5IK4MRx052765@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 99554 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 20:04:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=99554 Change 99554 by cognet@cognet on 2006/06/18 20:04:18 #ifdef BOOT_TSC some code which is only used in the BOOT_TSC case. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/emac.c#17 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/emac.c#17 (text+ko) ==== @@ -361,6 +361,7 @@ * This private function reads the PHY device. * .KB_C_FN_DEFINITION_END */ +#ifdef BOOT_TSC static unsigned short AT91F_MII_WritePhy (AT91PS_EMAC pEmac, unsigned char addr, unsigned short s) { @@ -372,6 +373,7 @@ pEmac->EMAC_CTL &= ~AT91C_EMAC_MPE; return (pEmac->EMAC_MAN & 0x0000ffff); } +#endif /* * .KB_C_FN_DEFINITION_START @@ -384,8 +386,10 @@ { unsigned short stat2; unsigned update; +#ifdef BOOT_TSC unsigned sec; int i; +#endif #if 0 // AT91F_MII_WritePhy(pEmac, 20, 0x70); From owner-p4-projects@FreeBSD.ORG Sun Jun 18 20:38:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1889616A47D; Sun, 18 Jun 2006 20:38:06 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D0BC616A47A for ; Sun, 18 Jun 2006 20:38:05 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A00A443D45 for ; Sun, 18 Jun 2006 20:38:05 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5IKc5XN054823 for ; Sun, 18 Jun 2006 20:38:05 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5IKc5Df054820 for perforce@freebsd.org; Sun, 18 Jun 2006 20:38:05 GMT (envelope-from cognet@freebsd.org) Date: Sun, 18 Jun 2006 20:38:05 GMT Message-Id: <200606182038.k5IKc5Df054820@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 99555 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 18 Jun 2006 20:38:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=99555 Change 99555 by cognet@cognet on 2006/06/18 20:37:24 - Spell BOOT_MP920X BOOT_KB9202. - Reset the timeout each time we received a packet. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/emac.c#18 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/emac.c#18 (text+ko) ==== @@ -232,7 +232,7 @@ * any here. * .KB_C_FN_DEFINITION_END */ -static void +static int CheckForNewPacket(ip_header_t *pHeader) { unsigned short *pFrameType; @@ -252,7 +252,7 @@ } if (!process) - return ; + return (0); process = i; @@ -334,6 +334,7 @@ } } p_rxBD[process].address &= ~0x01; + return (1); } @@ -613,7 +614,7 @@ AT91C_PA8_ETXEN | AT91C_PA16_EMDIO | AT91C_PA9_ETX0 | AT91C_PA10_ETX1 | AT91C_PA11_ECRS_ECRSDV | AT91C_PA15_EMDC | AT91C_PA7_ETXCK_EREFCK; -#ifdef BOOT_MB920X /* Really !RMII */ +#ifdef BOOT_KB9202 /* Really !RMII */ AT91C_BASE_PIOB->PIO_BSR = AT91C_PB12_ETX2 | AT91C_PB13_ETX3 | AT91C_PB14_ETXER | AT91C_PB15_ERX2 | AT91C_PB16_ERX3 | AT91C_PB17_ERXDV | @@ -641,16 +642,18 @@ ackBlock = -1; while (running && timeout) { + int newpacket; - CheckForNewPacket(&IpHeader); + newpacket = CheckForNewPacket(&IpHeader); tickUpdate = 0; - if (thisSeconds != GetSeconds()) { + if (!newpacket && thisSeconds != GetSeconds()) { tickUpdate = 1; --timeout; thisSeconds = GetSeconds(); - } + } else if (newpacket) + timeout = 10; switch (state) { From owner-p4-projects@FreeBSD.ORG Mon Jun 19 01:22:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C7CB416A47C; Mon, 19 Jun 2006 01:22:15 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8156016A47A for ; Mon, 19 Jun 2006 01:22:15 +0000 (UTC) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 202F943D62 for ; Mon, 19 Jun 2006 01:22:15 +0000 (GMT) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J1MFQt089772 for ; Mon, 19 Jun 2006 01:22:15 GMT (envelope-from dongmei@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J1MEHa089769 for perforce@freebsd.org; Mon, 19 Jun 2006 01:22:14 GMT (envelope-from dongmei@FreeBSD.org) Date: Mon, 19 Jun 2006 01:22:14 GMT Message-Id: <200606190122.k5J1MEHa089769@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to dongmei@FreeBSD.org using -f From: dongmei To: Perforce Change Reviews Cc: Subject: PERFORCE change 99577 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 01:22:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=99577 Change 99577 by dongmei@soc-dongmei-sebsd on 2006/06/19 01:22:02 Modify the README file in accordance with the trustedbsd sebsd branch Affected files ... .. //depot/projects/soc2006/dongmei_sebsd/Makefile#2 integrate .. //depot/projects/soc2006/dongmei_sebsd/README#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/policy/Makefile#2 integrate Differences ... ==== //depot/projects/soc2006/dongmei_sebsd/Makefile#2 (text+ko) ==== @@ -310,9 +310,19 @@ sebsd_bootstrap: .if exists(${.CURDIR}/contrib/sebsd) @echo "Installing SEBSD policy" + +.if !exists(${DESTDIR}/etc/security/sebsd/targeted/policy) + (cd ${.CURDIR}/contrib/sebsd/refpolicy; gmake install-src) +.else + @echo "Existing SEBSD targeted policy sources found." + @echo "Will not reinstall them. To reinstall them by hand" + @echo "do \"cd contrib/sebsd/refpolicy && gmake install-src\"." +.endif + .if exists(${DESTDIR}/usr/bin/checkpolicy) .if !exists(${DESTDIR}/etc/security/sebsd/targeted/policy/policy.20) + mkdir -p ${DESTDIR}/etc/security/sebsd/targeted/policy (${DESTDIR}/usr/bin/checkpolicy -o ${DESTDIR}/etc/security/sebsd/targeted/policy/policy.20 ${.CURDIR}/contrib/sebsd/support/policy.conf) .else @echo "Binary policy file found. Not overwriting." ==== //depot/projects/soc2006/dongmei_sebsd/README#2 (text+ko) ==== @@ -1,1 +1,165 @@ -Just for test! +This is the top level of the FreeBSD source directory. This file +was last revised on: +$FreeBSD: src/README,v 1.21 2002/07/21 16:45:30 wosch Exp $ + +For copyright information, please see the file COPYRIGHT in this +directory (additional copyright information also exists for some +sources in this tree - please see the specific source directories for +more information). + +The Makefile in this directory supports a number of targets for +building components (or all) of the FreeBSD source tree, the most +commonly used one being ``world'', which rebuilds and installs +everything in the FreeBSD system from the source tree except the +kernel, the kernel-modules and the contents of /etc. The +``buildkernel'' and ``installkernel'' targets build and install +the kernel and the modules (see below). Please see the top of +the Makefile in this directory for more information on the +standard build targets and compile-time flags. + +Building a kernel is a somewhat more involved process, documentation +for which can be found at: + http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html +And in the config(8) man page. +Note: If you want to build and install the kernel with the +``buildkernel'' and ``installkernel'' targets, you might need to build +world before. More information is available in the handbook. + +The sample kernel configuration files reside in the sys//conf +sub-directory (assuming that you've installed the kernel sources), the +file named GENERIC being the one used to build your initial installation +kernel. The file NOTES contains entries and documentation for all possible +devices, not just those commonly used. It is the successor of the ancient +LINT file, but in contrast to LINT, it is not buildable as a kernel but a +pure reference and documentation file. + + +Source Roadmap: +--------------- +bin System/user commands. + +contrib Packages contributed by 3rd parties. + +crypto Cryptography stuff (see crypto/README). + +etc Template files for /etc. + +games Amusements. + +gnu Various commands and libraries under the GNU Public License. + Please see gnu/COPYING* for more information. + +include System include files. + +kerberos5 Kerberos5 (Heimdal) package. + +kerberosIV KerberosIV (eBones) package. + +lib System libraries. + +libexec System daemons. + +release Release building Makefile & associated tools. + +sbin System commands. + +secure Cryptographic libraries and commands. + +share Shared resources. + +sys Kernel sources. + +tools Utilities for regression testing and miscellaneous tasks. + +usr.bin User commands. + +usr.sbin System administration commands. + + +For information on synchronizing your source tree with one or more of +the FreeBSD Project's development branches, please see: + + http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html +==== THEIRS README#4 +This is the top level of the FreeBSD source directory. This file +was last revised on: +$FreeBSD: src/README,v 1.23 2006/03/01 20:14:55 ceri Exp $ + +For copyright information, please see the file COPYRIGHT in this +directory (additional copyright information also exists for some +sources in this tree - please see the specific source directories for +more information). + +The Makefile in this directory supports a number of targets for +building components (or all) of the FreeBSD source tree, the most +commonly used one being ``world'', which rebuilds and installs +everything in the FreeBSD system from the source tree except the +kernel, the kernel-modules and the contents of /etc. The +``buildkernel'' and ``installkernel'' targets build and install +the kernel and the modules (see below). Please see the top of +the Makefile in this directory for more information on the +standard build targets and compile-time flags. + +Building a kernel is a somewhat more involved process, documentation +for which can be found at: + http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html +And in the config(8) man page. +Note: If you want to build and install the kernel with the +``buildkernel'' and ``installkernel'' targets, you might need to build +world before. More information is available in the handbook. + +The sample kernel configuration files reside in the sys//conf +sub-directory (assuming that you've installed the kernel sources), the +file named GENERIC being the one used to build your initial installation +kernel. The file NOTES contains entries and documentation for all possible +devices, not just those commonly used. It is the successor of the ancient +LINT file, but in contrast to LINT, it is not buildable as a kernel but a +pure reference and documentation file. + + +Source Roadmap: +--------------- +bin System/user commands. + +contrib Packages contributed by 3rd parties. + +crypto Cryptography stuff (see crypto/README). + +etc Template files for /etc. + +games Amusements. + +gnu Various commands and libraries under the GNU Public License. + Please see gnu/COPYING* for more information. + +include System include files. + +kerberos5 Kerberos5 (Heimdal) package. + +lib System libraries. + +libexec System daemons. + +release Release building Makefile & associated tools. + +rescue Build system for statically linked /rescue utilities. + +sbin System commands. + +secure Cryptographic libraries and commands. + +share Shared resources. + +sys Kernel sources. + +tools Utilities for regression testing and miscellaneous tasks. + +usr.bin User commands. + +usr.sbin System administration commands. + + +For information on synchronizing your source tree with one or more of +the FreeBSD Project's development branches, please see: + + http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/policy/Makefile#2 (text+ko) ==== @@ -33,7 +33,7 @@ .endif POLICYVER := policy.$(POLICYVERTMP) POLICYBIN = policy.bin -INSTALLDIR = $(DESTDIR)/etc/security/sebsd +INSTALLDIR = $(DESTDIR)/etc/security/sebsd/targeted POLICYPATH = $(INSTALLDIR)/policy SRCPATH = $(INSTALLDIR)/src CONTEXTPATH = $(INSTALLDIR)/contexts @@ -138,10 +138,10 @@ m4 $(M4PARAM) -Imacros -s $(POLICYFILES) > $@.tmp mv $@.tmp $@ -install-src: /etc/security/sebsd - rm -rf $(INSTALLDIR)/policy.old - -mv $(INSTALLDIR)/policy $(INSTALLDIR)/policy.old - cd ..; tar cf - policy | (cd $(INSTALLDIR); tar xf -) +install-src: $(SRCPATH) + rm -rf $(SRCPATH)/policy.old + -mv $(SRCPATH)/policy $(SRCPATH)/policy.old + cd ..; tar cf - policy | (cd $(SRCPATH); tar xf -) tmp/program_used_flags.te: $(wildcard domains/program/*.te) domains/program mkdir -p tmp From owner-p4-projects@FreeBSD.ORG Mon Jun 19 04:36:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D896116A47C; Mon, 19 Jun 2006 04:36:19 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8313316A47A for ; Mon, 19 Jun 2006 04:36:19 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3432F43D49 for ; Mon, 19 Jun 2006 04:36:19 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J4aJ7X001839 for ; Mon, 19 Jun 2006 04:36:19 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J4aISI001836 for perforce@freebsd.org; Mon, 19 Jun 2006 04:36:18 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 19 Jun 2006 04:36:18 GMT Message-Id: <200606190436.k5J4aISI001836@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 99581 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 04:36:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=99581 Change 99581 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/19 04:35:17 make process list per-cpu remove allproc_lock Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/ddb/db_command.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/ddb/db_main.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/ddb/db_print.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/ddb/db_ps.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/ddb/db_thread.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#10 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_switch.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_synch.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sysctl.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_kdb.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_sleepqueue.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_turnstile.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/db_interface.c#2 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/hv_pci.c#43 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/trap.c#15 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/vnex.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#3 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#6 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_object.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#3 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/ddb/db_command.c#5 (text+ko) ==== @@ -540,6 +540,7 @@ { db_expr_t old_radix, pid, sig; struct proc *p; + struct pcpu *pc; #define DB_ERROR(f) do { db_printf f; db_flush_lex(); goto out; } while (0) @@ -559,14 +560,19 @@ if (sig < 0 || sig > _SIG_MAXSIG) DB_ERROR(("Signal number out of range\n")); + /* gcc doesn't know that we have at least 1 pcpu */ + p = NULL; /* - * Find the process in question. allproc_lock is not needed + * Find the process in question. allpcpu_lock is not needed * since we're in DDB. */ - /* sx_slock(&allproc_lock); */ - LIST_FOREACH(p, &allproc, p_list) - if (p->p_pid == pid) - break; + /* sx_slock(&allpcpu_lock); */ + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + if (p->p_pid == pid) + break; + } + } /* sx_sunlock(&allproc_lock); */ if (p == NULL) DB_ERROR(("Can't find process with pid %ld\n", (long) pid)); @@ -674,18 +680,21 @@ char *dummy4) { struct proc *p; + struct pcpu *pc; struct thread *td; int quit; quit = 0; db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - LIST_FOREACH(p, &allproc, p_list) { - FOREACH_THREAD_IN_PROC(p, td) { - db_printf("\nTracing command %s pid %d tid %ld td %p\n", - p->p_comm, p->p_pid, (long)td->td_tid, td); - db_trace_thread(td, -1); - if (quit) + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + FOREACH_THREAD_IN_PROC(p, td) { + db_printf("\nTracing command %s pid %d tid %ld td %p\n", + p->p_comm, p->p_pid, (long)td->td_tid, td); + db_trace_thread(td, -1); + if (quit) return; + } } } } ==== //depot/projects/kmacy_sun4v/src/sys/ddb/db_main.c#3 (text+ko) ==== @@ -33,7 +33,6 @@ #include #include #include -#include #include #include ==== //depot/projects/kmacy_sun4v/src/sys/ddb/db_print.c#3 (text+ko) ==== @@ -38,7 +38,6 @@ #include #include -#include #include ==== //depot/projects/kmacy_sun4v/src/sys/ddb/db_ps.c#6 (text+ko) ==== @@ -71,17 +71,15 @@ volatile struct proc *p, *pp; volatile struct thread *td; struct ucred *cred; + struct pcpu *pc; struct pgrp *pgrp; char state[9]; + int proc0_seen; int np, quit, rflag, sflag, dflag, lflag, wflag; np = nprocs; quit = 0; - - if (!LIST_EMPTY(&allproc)) - p = LIST_FIRST(&allproc); - else - p = &proc0; + proc0_seen = 0; db_setup_paging(db_simple_pager, &quit, db_lines_per_page); #ifdef __LP64__ @@ -90,115 +88,125 @@ db_printf(" pid uid ppid pgrp state wmesg wchan cmd\n"); #endif while (--np >= 0 && !quit) { - if (p == NULL) { - db_printf("oops, ran out of processes early!\n"); - break; - } - pp = p->p_pptr; - if (pp == NULL) - pp = p; - - cred = p->p_ucred; - pgrp = p->p_pgrp; - db_printf("%5d %4d %5d %5d ", p->p_pid, - cred != NULL ? cred->cr_ruid : 0, pp->p_pid, - pgrp != NULL ? pgrp->pg_id : 0); - - /* Determine our primary process state. */ - switch (p->p_state) { - case PRS_NORMAL: - if (P_SHOULDSTOP(p)) - state[0] = 'T'; - else { - /* - * One of D, L, R, S, W. For a - * multithreaded process we will use - * the state of the thread with the - * highest precedence. The - * precendence order from high to low - * is R, L, D, S, W. If no thread is - * in a sane state we use '?' for our - * primary state. - */ - rflag = sflag = dflag = lflag = wflag = 0; - FOREACH_THREAD_IN_PROC(p, td) { - if (td->td_state == TDS_RUNNING || - td->td_state == TDS_RUNQ || - td->td_state == TDS_CAN_RUN) - rflag++; - if (TD_ON_LOCK(td)) - lflag++; - if (TD_IS_SLEEPING(td)) { - if (!td->td_flags & TDF_SINTR) - dflag++; + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + if (!LIST_EMPTY(&pc->pc_allproc)) { + p = LIST_FIRST(&pc->pc_allproc); + } else if (!proc0_seen) { + proc0_seen = 1; + p = &proc0; + } else { + continue; + } + if (p == NULL) { + db_printf("oops, ran out of processes early!\n"); + break; + } + pp = p->p_pptr; + if (pp == NULL) + pp = p; + + cred = p->p_ucred; + pgrp = p->p_pgrp; + db_printf("%5d %4d %5d %5d ", p->p_pid, + cred != NULL ? cred->cr_ruid : 0, pp->p_pid, + pgrp != NULL ? pgrp->pg_id : 0); + + /* Determine our primary process state. */ + switch (p->p_state) { + case PRS_NORMAL: + if (P_SHOULDSTOP(p)) + state[0] = 'T'; + else { + /* + * One of D, L, R, S, W. For a + * multithreaded process we will use + * the state of the thread with the + * highest precedence. The + * precendence order from high to low + * is R, L, D, S, W. If no thread is + * in a sane state we use '?' for our + * primary state. + */ + rflag = sflag = dflag = lflag = wflag = 0; + FOREACH_THREAD_IN_PROC(p, td) { + if (td->td_state == TDS_RUNNING || + td->td_state == TDS_RUNQ || + td->td_state == TDS_CAN_RUN) + rflag++; + if (TD_ON_LOCK(td)) + lflag++; + if (TD_IS_SLEEPING(td)) { + if (!td->td_flags & TDF_SINTR) + dflag++; else sflag++; + } + if (TD_AWAITING_INTR(td)) + wflag++; } - if (TD_AWAITING_INTR(td)) - wflag++; + if (rflag) + state[0] = 'R'; + else if (lflag) + state[0] = 'L'; + else if (dflag) + state[0] = 'D'; + else if (sflag) + state[0] = 'S'; + else if (wflag) + state[0] = 'W'; + else + state[0] = '?'; } - if (rflag) - state[0] = 'R'; - else if (lflag) - state[0] = 'L'; - else if (dflag) - state[0] = 'D'; - else if (sflag) - state[0] = 'S'; - else if (wflag) - state[0] = 'W'; - else - state[0] = '?'; + break; + case PRS_NEW: + state[0] = 'N'; + break; + case PRS_ZOMBIE: + state[0] = 'Z'; + break; + default: + state[0] = 'U'; + break; } - break; - case PRS_NEW: - state[0] = 'N'; - break; - case PRS_ZOMBIE: - state[0] = 'Z'; - break; - default: - state[0] = 'U'; - break; - } - state[1] = '\0'; - - /* Additional process state flags. */ - if (!p->p_sflag & PS_INMEM) - strlcat(state, "W", sizeof(state)); - if (p->p_flag & P_TRACED) - strlcat(state, "X", sizeof(state)); - if (p->p_flag & P_WEXIT && p->p_state != PRS_ZOMBIE) - strlcat(state, "E", sizeof(state)); - if (p->p_flag & P_PPWAIT) - strlcat(state, "V", sizeof(state)); - if (p->p_flag & P_SYSTEM || p->p_lock > 0) - strlcat(state, "L", sizeof(state)); - if (p->p_session != NULL && SESS_LEADER(p)) - strlcat(state, "s", sizeof(state)); - /* Cheated here and didn't compare pgid's. */ - if (p->p_flag & P_CONTROLT) - strlcat(state, "+", sizeof(state)); - if (cred != NULL && jailed(cred)) - strlcat(state, "J", sizeof(state)); - db_printf(" %-6.6s ", state); - if (p->p_flag & P_HADTHREADS) + state[1] = '\0'; + + /* Additional process state flags. */ + if (!p->p_sflag & PS_INMEM) + strlcat(state, "W", sizeof(state)); + if (p->p_flag & P_TRACED) + strlcat(state, "X", sizeof(state)); + if (p->p_flag & P_WEXIT && p->p_state != PRS_ZOMBIE) + strlcat(state, "E", sizeof(state)); + if (p->p_flag & P_PPWAIT) + strlcat(state, "V", sizeof(state)); + if (p->p_flag & P_SYSTEM || p->p_lock > 0) + strlcat(state, "L", sizeof(state)); + if (p->p_session != NULL && SESS_LEADER(p)) + strlcat(state, "s", sizeof(state)); + /* Cheated here and didn't compare pgid's. */ + if (p->p_flag & P_CONTROLT) + strlcat(state, "+", sizeof(state)); + if (cred != NULL && jailed(cred)) + strlcat(state, "J", sizeof(state)); + db_printf(" %-6.6s ", state); + if (p->p_flag & P_HADTHREADS) #ifdef __LP64__ - db_printf(" (threaded) %s\n", - p->p_comm); + db_printf(" (threaded) %s\n", + p->p_comm); #else db_printf(" (threaded) %s\n", p->p_comm); #endif - FOREACH_THREAD_IN_PROC(p, td) { - dumpthread(p, td, p->p_flag & P_HADTHREADS); - if (quit) - break; + FOREACH_THREAD_IN_PROC(p, td) { + dumpthread(p, td, p->p_flag & P_HADTHREADS); + if (quit) + break; + } + + p = LIST_NEXT(p, p_list); + if (p == NULL && np > 0) + p = LIST_FIRST(&pc->pc_zombproc); } - - p = LIST_NEXT(p, p_list); - if (p == NULL && np > 0) - p = LIST_FIRST(&zombproc); - } + } } static void ==== //depot/projects/kmacy_sun4v/src/sys/ddb/db_thread.c#4 (text+ko) ==== @@ -149,6 +149,7 @@ { struct thread *td; db_expr_t decaddr; + struct pcpu *pc; struct proc *p; /* @@ -163,13 +164,15 @@ if (td != NULL) return (td); if (check_pid) { - LIST_FOREACH(p, &allproc, p_list) { - if (p->p_pid == decaddr) - return (FIRST_THREAD_IN_PROC(p)); - } - LIST_FOREACH(p, &zombproc, p_list) { - if (p->p_pid == decaddr) - return (FIRST_THREAD_IN_PROC(p)); + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + if (p->p_pid == decaddr) + return (FIRST_THREAD_IN_PROC(p)); + } + LIST_FOREACH(p, &pc->pc_zombproc, p_list) { + if (p->p_pid == decaddr) + return (FIRST_THREAD_IN_PROC(p)); + } } } return ((struct thread *)addr); @@ -186,16 +189,19 @@ { db_expr_t decaddr; struct proc *p; + struct pcpu *pc; decaddr = hex2dec(addr); if (decaddr != -1) { - LIST_FOREACH(p, &allproc, p_list) { - if (p->p_pid == decaddr) - return (p); - } - LIST_FOREACH(p, &zombproc, p_list) { - if (p->p_pid == decaddr) - return (p); + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + if (p->p_pid == decaddr) + return (p); + } + LIST_FOREACH(p, &pc->pc_zombproc, p_list) { + if (p->p_pid == decaddr) + return (p); + } } } return ((struct proc *)addr); ==== //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#3 (text+ko) ==== @@ -553,9 +553,9 @@ */ static int pfs_iterate(struct thread *td, pid_t pid, struct pfs_node *pd, - struct pfs_node **pn, struct proc **p) + struct pfs_node **pn, struct proc **p, struct pcpu **pc) { - sx_assert(&allproc_lock, SX_SLOCKED); + sx_assert(&allpcpu_lock, SX_SLOCKED); again: if (*pn == NULL) { /* first node */ @@ -566,13 +566,22 @@ } if (*pn != NULL && (*pn)->pn_type == pfstype_procdir) { /* next process */ - if (*p == NULL) - *p = LIST_FIRST(&allproc); - else + if (*p == NULL) { + *p = LIST_FIRST(&(*pc)->pc_allproc); + PCPU_PROC_LOCK(*pc); + } else if ((LIST_NEXT(*p, p_list) == NULL) && (SLIST_NEXT(*pc, pc_allcpu) != NULL)) { + PCPU_PROC_UNLOCK(*pc); + *pc = SLIST_NEXT(*pc, pc_allcpu); + PCPU_PROC_LOCK(*pc); + *p = LIST_FIRST(&(*pc)->pc_allproc); + } else { *p = LIST_NEXT(*p, p_list); + } /* out of processes: next node */ - if (*p == NULL) + if (*p == NULL) { + PCPU_PROC_UNLOCK(*pc); *pn = (*pn)->pn_next; + } } if ((*pn) == NULL) @@ -599,6 +608,7 @@ struct dirent *entry; struct uio *uio; struct proc *p; + struct pcpu *pc; off_t offset; int error, i, resid; char *buf, *ent; @@ -623,17 +633,18 @@ PFS_RETURN (0); /* skip unwanted entries */ - sx_slock(&allproc_lock); + sx_slock(&allpcpu_lock); + pc = SLIST_FIRST(&cpuhead); for (pn = NULL, p = NULL; offset > 0; offset -= PFS_DELEN) - if (pfs_iterate(curthread, pid, pd, &pn, &p) == -1) { + if (pfs_iterate(curthread, pid, pd, &pn, &p, &pc) == -1) { /* nothing left... */ - sx_sunlock(&allproc_lock); + sx_sunlock(&allpcpu_lock); PFS_RETURN (0); } /* fill in entries */ ent = buf = malloc(resid, M_IOV, M_WAITOK | M_ZERO); - while (pfs_iterate(curthread, pid, pd, &pn, &p) != -1 && + while (pfs_iterate(curthread, pid, pd, &pn, &p, &pc) != -1 && resid >= PFS_DELEN) { entry = (struct dirent *)ent; entry->d_reclen = PFS_DELEN; @@ -678,7 +689,7 @@ resid -= PFS_DELEN; ent += PFS_DELEN; } - sx_sunlock(&allproc_lock); + sx_sunlock(&allpcpu_lock); error = uiomove(buf, ent - buf, uio); free(buf, M_IOV); PFS_RETURN (error); ==== //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#3 (text+ko) ==== @@ -142,16 +142,21 @@ __elfN(brand_inuse)(Elf_Brandinfo *entry) { struct proc *p; + struct pcpu *pc; int rval = FALSE; - sx_slock(&allproc_lock); - LIST_FOREACH(p, &allproc, p_list) { - if (p->p_sysent == entry->sysvec) { - rval = TRUE; - break; + sx_slock(&allpcpu_lock); + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + PCPU_PROC_LOCK(pc); + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + + if (p->p_sysent == entry->sysvec) { + rval = TRUE; + break; + } } } - sx_sunlock(&allproc_lock); + sx_sunlock(&allpcpu_lock); return (rval); } ==== //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#6 (text+ko) ==== @@ -431,7 +431,8 @@ /* * Create process 0 (the swapper). */ - LIST_INSERT_HEAD(&allproc, p, p_list); + p->p_pcpu = pcpup; + LIST_INSERT_HEAD(&p->p_pcpu->pc_allproc, p, p_list); LIST_INSERT_HEAD(PIDHASH(0), p, p_hash); mtx_init(&pgrp0.pg_mtx, "process group", NULL, MTX_DEF | MTX_DUPOK); p->p_pgrp = &pgrp0; @@ -529,17 +530,23 @@ { struct timespec ts; struct proc *p; + struct pcpu *pc; /* * Now we can look at the time, having had a chance to verify the * time from the filesystem. Pretend that proc0 started now. */ - sx_slock(&allproc_lock); - LIST_FOREACH(p, &allproc, p_list) { - microuptime(&p->p_stats->p_start); - p->p_rux.rux_runtime = 0; + + sx_slock(&allpcpu_lock); + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + PCPU_PROC_LOCK(pc); + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + microuptime(&p->p_stats->p_start); + p->p_rux.rux_runtime = 0; + } + PCPU_PROC_UNLOCK(pc); } - sx_sunlock(&allproc_lock); + sx_sunlock(&allpcpu_lock); PCPU_SET(switchtime, cpu_ticks()); PCPU_SET(switchticks, ticks); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#4 (text+ko) ==== @@ -2349,33 +2349,39 @@ { struct filedesc *fdp; struct proc *p; + struct pcpu *pc; int nrele; if (vrefcnt(olddp) == 1) return; - sx_slock(&allproc_lock); - LIST_FOREACH(p, &allproc, p_list) { - fdp = fdhold(p); - if (fdp == NULL) - continue; - nrele = 0; - FILEDESC_LOCK_FAST(fdp); - if (fdp->fd_cdir == olddp) { - vref(newdp); - fdp->fd_cdir = newdp; - nrele++; + + sx_slock(&allpcpu_lock); + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + PCPU_PROC_LOCK(pc); + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + fdp = fdhold(p); + if (fdp == NULL) + continue; + nrele = 0; + FILEDESC_LOCK_FAST(fdp); + if (fdp->fd_cdir == olddp) { + vref(newdp); + fdp->fd_cdir = newdp; + nrele++; + } + if (fdp->fd_rdir == olddp) { + vref(newdp); + fdp->fd_rdir = newdp; + nrele++; + } + FILEDESC_UNLOCK_FAST(fdp); + fddrop(fdp); + while (nrele--) + vrele(olddp); } - if (fdp->fd_rdir == olddp) { - vref(newdp); - fdp->fd_rdir = newdp; - nrele++; - } - FILEDESC_UNLOCK_FAST(fdp); - fddrop(fdp); - while (nrele--) - vrele(olddp); + PCPU_PROC_UNLOCK(pc); } - sx_sunlock(&allproc_lock); + sx_sunlock(&allpcpu_lock); if (rootvnode == olddp) { vrele(rootvnode); vref(newdp); @@ -2420,6 +2426,7 @@ struct filedesc *fdp; struct file *fp; struct proc *p; + struct pcpu *pc; int error, n; /* @@ -2450,44 +2457,48 @@ error = 0; bzero(&xf, sizeof(xf)); xf.xf_size = sizeof(xf); - sx_slock(&allproc_lock); - LIST_FOREACH(p, &allproc, p_list) { - if (p->p_state == PRS_NEW) - continue; - PROC_LOCK(p); - if (p_cansee(req->td, p) != 0) { + sx_slock(&allpcpu_lock); + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + PCPU_PROC_LOCK(pc); + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + if (p->p_state == PRS_NEW) + continue; + PROC_LOCK(p); + if (p_cansee(req->td, p) != 0) { + PROC_UNLOCK(p); + continue; + } + xf.xf_pid = p->p_pid; + xf.xf_uid = p->p_ucred->cr_uid; PROC_UNLOCK(p); - continue; - } - xf.xf_pid = p->p_pid; - xf.xf_uid = p->p_ucred->cr_uid; - PROC_UNLOCK(p); - fdp = fdhold(p); - if (fdp == NULL) - continue; - FILEDESC_LOCK_FAST(fdp); - for (n = 0; fdp->fd_refcnt > 0 && n < fdp->fd_nfiles; ++n) { - if ((fp = fdp->fd_ofiles[n]) == NULL) + fdp = fdhold(p); + if (fdp == NULL) continue; - xf.xf_fd = n; - xf.xf_file = fp; - xf.xf_data = fp->f_data; - xf.xf_vnode = fp->f_vnode; - xf.xf_type = fp->f_type; - xf.xf_count = fp->f_count; - xf.xf_msgcount = fp->f_msgcount; - xf.xf_offset = fp->f_offset; - xf.xf_flag = fp->f_flag; - error = SYSCTL_OUT(req, &xf, sizeof(xf)); + FILEDESC_LOCK_FAST(fdp); + for (n = 0; fdp->fd_refcnt > 0 && n < fdp->fd_nfiles; ++n) { + if ((fp = fdp->fd_ofiles[n]) == NULL) + continue; + xf.xf_fd = n; + xf.xf_file = fp; + xf.xf_data = fp->f_data; + xf.xf_vnode = fp->f_vnode; + xf.xf_type = fp->f_type; + xf.xf_count = fp->f_count; + xf.xf_msgcount = fp->f_msgcount; + xf.xf_offset = fp->f_offset; + xf.xf_flag = fp->f_flag; + error = SYSCTL_OUT(req, &xf, sizeof(xf)); + if (error) + break; + } + FILEDESC_UNLOCK_FAST(fdp); + fddrop(fdp); if (error) break; } - FILEDESC_UNLOCK_FAST(fdp); - fddrop(fdp); - if (error) - break; + PCPU_PROC_UNLOCK(pc); } - sx_sunlock(&allproc_lock); + sx_sunlock(&allpcpu_lock); return (error); } @@ -2531,17 +2542,19 @@ { struct filedesc *fdp; struct proc *p; + struct pcpu *pc; int n; - - LIST_FOREACH(p, &allproc, p_list) { - if (p->p_state == PRS_NEW) - continue; - fdp = p->p_fd; - if (fdp == NULL) - continue; - for (n = 0; n < fdp->fd_nfiles; n++) { - if (fp == fdp->fd_ofiles[n]) + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + LIST_FOREACH(p, &pc->pc_allproc, p_list) { + if (p->p_state == PRS_NEW) + continue; + fdp = p->p_fd; + if (fdp == NULL) + continue; + for (n = 0; n < fdp->fd_nfiles; n++) { + if (fp == fdp->fd_ofiles[n]) return (p); + } } } return (NULL); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#5 (text+ko) ==== @@ -121,12 +121,7 @@ struct plimit *plim; int locked; - /* - * Drop Giant if caller has it. Eventually we should warn about - * being called with Giant held. - */ - while (mtx_owned(&Giant)) - mtx_unlock(&Giant); + mtx_assert(&Giant, MA_NOTOWNED); p = td->td_proc; if (p == initproc) { @@ -408,11 +403,21 @@ * Remove proc from allproc queue and pidhash chain. * Place onto zombproc. Unlink from parent's child list. */ - sx_xlock(&allproc_lock); + if (p->p_pcpu == NULL) + panic("process: %d has null pcpu pointer", p->p_pid); + if (!mtx_initialized(&(p->p_pcpu->pc_allproc_lock))) + panic("null allproc lock on %d", p->p_pcpu->pc_cpuid); + + PCPU_PROC_LOCK(p->p_pcpu); LIST_REMOVE(p, p_list); - LIST_INSERT_HEAD(&zombproc, p, p_list); + LIST_INSERT_HEAD(&p->p_pcpu->pc_zombproc, p, p_list); + PCPU_PROC_UNLOCK(p->p_pcpu); + + mtx_lock(&pidhash_lock); LIST_REMOVE(p, p_hash); - sx_xunlock(&allproc_lock); + LIST_INSERT_HEAD(ZPIDHASH(p->p_pid), p, p_hash); + mtx_unlock(&pidhash_lock); + /* * Reparent all of our children to init. @@ -764,9 +769,15 @@ * Remove other references to this process to ensure * we have an exclusive reference. */ - sx_xlock(&allproc_lock); + + PCPU_PROC_LOCK(p->p_pcpu); LIST_REMOVE(p, p_list); /* off zombproc */ - sx_xunlock(&allproc_lock); + PCPU_PROC_UNLOCK(p->p_pcpu); + + mtx_lock(&pidhash_lock); + LIST_REMOVE(p, p_hash); /* off zombproc */ + mtx_unlock(&pidhash_lock); + LIST_REMOVE(p, p_sibling); leavepgrp(p); sx_xunlock(&proctree_lock); @@ -821,9 +832,7 @@ KASSERT(FIRST_THREAD_IN_PROC(p), ("kern_wait: no residual thread!")); uma_zfree(proc_zone, p); - sx_xlock(&allproc_lock); - nprocs--; - sx_xunlock(&allproc_lock); + atomic_subtract_int(&nprocs, 1); return (0); } mtx_lock_spin(&sched_lock); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#5 (text+ko) ==== @@ -170,7 +170,7 @@ error = sysctl_wire_old_buffer(req, sizeof(int)); if (error != 0) return(error); - sx_xlock(&allproc_lock); + mtx_lock(&pidhash_lock); pid = randompid; error = sysctl_handle_int(oidp, &pid, 0, req); if (error == 0 && req->newptr != NULL) { @@ -182,7 +182,7 @@ pid = 100; randompid = pid; } - sx_xunlock(&allproc_lock); + mtx_unlock(&pidhash_lock); return (error); } @@ -199,6 +199,7 @@ struct proc *p1, *p2, *pptr; uid_t uid; struct proc *newproc; + struct pcpu *pc; int ok, trypid; static int curfail, pidchecked = 0; static struct timeval lastfail; @@ -306,7 +307,6 @@ * exceed the limit. The variable nprocs is the current number of * processes, maxproc is the limit. */ - sx_xlock(&allproc_lock); uid = td->td_ucred->cr_ruid; if ((nprocs >= maxproc - 10 && suser_cred(td->td_ucred, SUSER_RUID) != 0) || @@ -314,7 +314,6 @@ error = EAGAIN; goto fail; } - /* * Increment the count of procs running with this uid. Don't allow * a nonprivileged user to exceed their current limit. @@ -332,7 +331,7 @@ * Increment the nprocs resource before blocking can occur. There * are hard-limits as to the number of processes that can run. */ - nprocs++; + atomic_add_int(&nprocs, 1); /* * Find an unused process ID. We remember a range of unused IDs @@ -341,6 +340,7 @@ * If RFHIGHPID is set (used during system boot), do not allocate * low-numbered pids. */ + mtx_lock(&pidalloc_lock); trypid = lastpid + 1; if (flags & RFHIGHPID) { if (trypid < 10) @@ -370,40 +370,49 @@ * is in use. Remember the lowest pid that's greater * than trypid, so we can avoid checking for a while. */ - p2 = LIST_FIRST(&allproc); -again: - for (; p2 != NULL; p2 = LIST_NEXT(p2, p_list)) { - PROC_LOCK(p2); - while (p2->p_pid == trypid || - (p2->p_pgrp != NULL && - (p2->p_pgrp->pg_id == trypid || - (p2->p_session != NULL && - p2->p_session->s_sid == trypid)))) { - trypid++; - if (trypid >= pidchecked) { - PROC_UNLOCK(p2); - goto retry; + SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { + PCPU_PROC_LOCK(pc); + + p2 = LIST_FIRST(&pc->pc_allproc); + again: + for (; p2 != NULL; p2 = LIST_NEXT(p2, p_list)) { + PROC_LOCK(p2); + while (p2->p_pid == trypid || + (p2->p_pgrp != NULL && + (p2->p_pgrp->pg_id == trypid || + (p2->p_session != NULL && + p2->p_session->s_sid == trypid)))) { + trypid++; + if (trypid >= pidchecked) { + PROC_UNLOCK(p2); + PCPU_PROC_UNLOCK(pc); + goto retry; + } + } + if (p2->p_pid > trypid && pidchecked > p2->p_pid) + pidchecked = p2->p_pid; + if (p2->p_pgrp != NULL) { + if (p2->p_pgrp->pg_id > trypid && + pidchecked > p2->p_pgrp->pg_id) + pidchecked = p2->p_pgrp->pg_id; + if (p2->p_session != NULL && + p2->p_session->s_sid > trypid && + pidchecked > p2->p_session->s_sid) + pidchecked = p2->p_session->s_sid; } + PROC_UNLOCK(p2); } - if (p2->p_pid > trypid && pidchecked > p2->p_pid) - pidchecked = p2->p_pid; - if (p2->p_pgrp != NULL) { - if (p2->p_pgrp->pg_id > trypid && - pidchecked > p2->p_pgrp->pg_id) - pidchecked = p2->p_pgrp->pg_id; - if (p2->p_session != NULL && - p2->p_session->s_sid > trypid && - pidchecked > p2->p_session->s_sid) - pidchecked = p2->p_session->s_sid; + + + if (!doingzomb) { + doingzomb = 1; + p2 = LIST_FIRST(&pc->pc_zombproc); + goto again; } - PROC_UNLOCK(p2); + PCPU_PROC_UNLOCK(pc); } - if (!doingzomb) { - doingzomb = 1; - p2 = LIST_FIRST(&zombproc); - goto again; - } } + mtx_unlock(&pidalloc_lock); sx_sunlock(&proctree_lock); /* @@ -418,9 +427,15 @@ p2->p_state = PRS_NEW; /* protect against others */ p2->p_pid = trypid; AUDIT_ARG(pid, p2->p_pid); - LIST_INSERT_HEAD(&allproc, p2, p_list); + p2->p_pcpu = pcpup; + + PCPU_PROC_LOCK(p2->p_pcpu); + LIST_INSERT_HEAD(&p2->p_pcpu->pc_allproc, p2, p_list); + PCPU_PROC_UNLOCK(p2->p_pcpu); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jun 19 06:32:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE57D16A47C; Mon, 19 Jun 2006 06:32:43 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8EDC116A474 for ; Mon, 19 Jun 2006 06:32:43 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 423EC43D46 for ; Mon, 19 Jun 2006 06:32:43 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J6WhA6021668 for ; Mon, 19 Jun 2006 06:32:43 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J6WgMZ021665 for perforce@freebsd.org; Mon, 19 Jun 2006 06:32:42 GMT (envelope-from als@FreeBSD.org) Date: Mon, 19 Jun 2006 06:32:42 GMT Message-Id: <200606190632.k5J6WgMZ021665@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99584 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 06:32:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=99584 Change 99584 by als@als_head on 2006/06/19 06:32:33 extend jail stats. reformat soruce to style(9) compatible. Affected files ... .. //depot/projects/jail2/j2_tools/jctl/jctl.c#2 edit Differences ... ==== //depot/projects/jail2/j2_tools/jctl/jctl.c#2 (text+ko) ==== @@ -7,14 +7,17 @@ #include #include +#include +#include +#include +#include #include #include +#include +#include #include -#include -#include -#include -#include -#include + + static void usage(void); @@ -28,244 +31,247 @@ #define C_FLAGS JAIL2_COMMAND(J_COMMON,J_SETFLAGS) #define C_EXEC 1 -char default_exec[50] = "/bin/csh"; -char csh_login[50]="/bin/csh -l"; -char *login_shell[] = { csh_login, NULL }; +char default_exec[50] = "/bin/csh"; +char csh_login[50] = "/bin/csh -l"; +char *login_shell[] = {csh_login, NULL}; #define J_FLAGS 4 struct flag { - const char *name; - uint32_t mask; + const char *name; + uint32_t mask; } flags [J_FLAGS] = { - {"START", J_START_FL}, - {"PROCLIMIT", J_PROCLIMIT_FL}, - {"IPC", J_SYSVIPC_ALLOW_FL }, - {NULL, 0} + {"START", J_START_FL}, + {"PROCLIMIT", J_PROCLIMIT_FL}, + {"IPC", J_SYSVIPC_ALLOW_FL}, + {NULL, 0} }; -static int +static int jail_exec(struct jail_2 *j, char *exec, char **arg) { - int ret; - + int ret; + j->cmd = C_ENTER; ret = jail(j); - if( ret != 0 ) + if (ret != 0) return ret; - - return execvp(exec, arg); + + return execvp(exec, arg); } static void jail_stats_v1(struct jail2_stats_v1 *jst) { - uint32_t i; - - printf("flags\t\t%x ( ",jst->flags); - for(i=0;iflags & flags[i].mask)!=0) - printf("%s ", flags[i].name); - printf(")\n"); - printf("Task count\t%d\n",jst->taskcount); - printf("CPU limits\t%u:%u\n",jst->cpulow, jst->cpuhigh); - printf("CPU usage\t%u\n",jst->cpuusage); - printf("Jail SYSV IPC\n"); - printf("\t\tallocate limit\n"); - printf("Message queue %u %u\n", jst->msq_count, jst->msq_limit); - printf("Semaphore %u %u\n", jst->sem_count, jst->sem_limit); - printf("Shared segments %u %u\n", jst->shm_count, jst->shm_limit); - printf("Jail disk usage\n"); - printf(" "); + uint32_t i; + + printf("flags\t\t%x ( ", jst->flags); + for (i = 0; i < J_FLAGS; i++) + if ((jst->flags & flags[i].mask) != 0) + printf("%s ", flags[i].name); + printf(")\n"); + printf("Task count\t%d\n", jst->taskcount); + printf("CPU limits\t%u:%u\n", jst->cpulow, jst->cpuhigh); + printf("CPU usage\t%u\n", jst->cpuusage); + printf("\t\tallocate limit\n"); + printf("Task count %u \n", jst->taskcount); + printf("Message queue %u %u\n", jst->msq_count, jst->msq_limit); + printf("Semaphore %u %u\n", jst->sem_count, jst->sem_limit); + printf("Shared segments %u %u\n", jst->shm_count, jst->shm_limit); + printf("Disk space usage %u %u\n", jst->diskblocks, jst->disklimit); + printf("Inode usage %u %u\n", jst->inodecount, jst->inodelimit); + printf("filehandle usage %u %u\n", jst->fdcount, jst->fdlimit); + printf(" \n"); } static int jail_stats(struct jail_2 *j) { - struct jail2_stats *jst; - int ret = 0; + struct jail2_stats *jst; + int ret = 0; + + jst = malloc(sizeof(struct jail2_stats)); + if (jst == NULL) + return (ENOMEM); + j->data = jst; - - jst = malloc(sizeof(struct jail2_stats)); - if (jst == NULL) - return (ENOMEM); - j->data = jst; - - ret = jail(j); - if (ret != 0) - goto exit; + ret = jail(j); + if (ret != 0) + goto exit; - printf("Jail\t\t%d\n",jst->id); - switch(jst->version) { - case 1: - jail_stats_v1(&jst->v1); - break; - default: - ret = ENOTSUP; - break; - } - + printf("Jail\t\t%d\n", jst->id); + switch (jst->version) { + case 1: + jail_stats_v1(&jst->v1); + break; + default: + ret = ENOTSUP; + break; + } exit: - free(jst); - j->data = NULL; - return ret; + free(jst); + j->data = NULL; + return ret; } -enum mask_op { m_nop, m_add, m_clear, m_xor}; +enum mask_op { + M_NOP, + M_ADD, + M_CLEAR, + M_XOR +}; struct m_ops { - char str; - enum mask_op op; + char str; + enum mask_op op; } mask_ops [4] = { - {'+', m_add}, - {'-', m_clear}, - {'^', m_xor}, - {'\0',m_nop} + {'+', M_ADD}, + {'-', M_CLEAR}, + {'^', M_XOR}, + {'\0', M_NOP} }; static void skip_space(char **ostr) { - char *str = *ostr; - - while(isspace(*str)) { - if(*str == '\0') - break; - str++; - } - *ostr = str; + char *str = *ostr; + + while (isspace(*str)) { + if (*str == '\0') + break; + str++; + } + *ostr = str; } static int -parse_flag(char **oflag, uint32_t *omask) +parse_flag(char **oflag, uint32_t * omask) { - uint32_t i; - int ret = -1; - enum mask_op op = m_nop; - char *flag = *oflag; - char *end_word; - uint32_t mask = 0; - - /* skip space*/ - skip_space(&flag); - i = 0; - while(mask_ops[i].str!='\0'){ - if(*flag == mask_ops[i].str) { - op = mask_ops[i].op; - break; + uint32_t i; + int ret = -1; + enum mask_op op = M_NOP; + char *flag = *oflag; + char *end_word; + uint32_t mask = 0; + + /* skip space */ + skip_space(&flag); + i = 0; + while (mask_ops[i].str != '\0') { + if (*flag == mask_ops[i].str) { + op = mask_ops[i].op; + break; + } + i++; + } + flag++; + if (op == M_NOP) { + ret = EINVAL; + goto exit; + } + skip_space(&flag); + end_word = flag; + while (!isspace(*end_word)) { + if (*end_word == '\0') + break; + end_word++; + } + *end_word = '\0'; + + for (i = 0; i < J_FLAGS; i++) { + if (strncasecmp(flag, flags[i].name, end_word - flag) == 0) { + mask = flags[i].mask; + break; + } + } + flag = end_word; + + if (mask == 0) { + ret = EINVAL; + goto exit; } - i++; - } - flag++; - if (op == m_nop) { - ret = EINVAL; - goto exit; - } - skip_space(&flag); - end_word = flag; - while(!isspace(*end_word)) { - if(*end_word == '\0') - break; - end_word++; - } - *end_word = '\0'; - - for(i=0;icmd = C_STAT; - jst = malloc(sizeof(struct jail2_stats)); - if (jst == NULL) - return (ENOMEM); - j->data = jst; - - ret = jail(j); - if (ret != 0) - goto exit_free; - - oldfl = jst->v1.flags; + struct jail2_stats *jst; + int ret = 0; + uint32_t oldfl; + + j->cmd = C_STAT; + jst = malloc(sizeof(struct jail2_stats)); + if (jst == NULL) + return (ENOMEM); + j->data = jst; + + ret = jail(j); + if (ret != 0) + goto exit_free; + + oldfl = jst->v1.flags; + + while (*cflags != '\0') + parse_flag(&cflags, &oldfl); - while(*cflags != '\0') - parse_flag(&cflags,&oldfl); + j->cmd = C_FLAGS; + j->data = &oldfl; + ret = jail(j); - j->cmd = C_FLAGS; - j->data = &oldfl; - ret = jail(j); - exit_free: - free(jst); - return (ret); + free(jst); + return (ret); } int main(int argc, char **argv) { - int ch; - char *error; - struct jail_2 j; - int ret; - - /* options descriptor */ - static struct option longopts[] = { - { "ctx", required_argument, NULL, C_CTX }, - { "create", no_argument, NULL, C_CREATE }, - { "destroy", no_argument, NULL, C_DESTROY }, - { "start", no_argument, NULL, C_START }, - { "stop", no_argument, NULL, C_STOP }, - { "enter", no_argument, NULL, C_ENTER }, - { "exec", required_argument, NULL, C_EXEC }, - { "stat", no_argument, NULL, C_STAT }, - { "flags", required_argument, NULL, C_FLAGS }, - { NULL, 0, NULL, 0 } - }; + int ch; + char *error; + struct jail_2 j; + int ret; + + /* options descriptor */ + static struct option longopts[] = { + {"ctx", required_argument, NULL, C_CTX}, + {"create", no_argument, NULL, C_CREATE}, + {"destroy", no_argument, NULL, C_DESTROY}, + {"start", no_argument, NULL, C_START}, + {"stop", no_argument, NULL, C_STOP}, + {"enter", no_argument, NULL, C_ENTER}, + {"exec", required_argument, NULL, C_EXEC}, + {"stat", no_argument, NULL, C_STAT}, + {"flags", required_argument, NULL, C_FLAGS}, + {NULL, 0, NULL, 0} + }; j.version = 2; j.ctx_id = 0; j.data = NULL; j.cmd = 0; - while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1) - { - switch( ch ) { + while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1) { + switch (ch) { case C_CTX: - j.ctx_id = strtol(optarg,&error,10); + j.ctx_id = strtol(optarg, &error, 10); if (*error != '\0') - errx(1,"Error in context identifyer"); + errx(1, "Error in context identifyer"); break; case C_CREATE: j.cmd = C_CREATE; @@ -289,38 +295,38 @@ j.cmd = C_STOP; ret = jail(&j); if (ret != 0) - err(5,"Stop"); + err(5, "Stop"); break; case C_ENTER: ret = jail_exec(&j, default_exec, login_shell); if (ret != 0) - err(6,"Enter"); + err(6, "Enter"); break; case C_EXEC: - ret = jail_exec(&j,optarg, argv+(optind-1)); + ret = jail_exec(&j, optarg, argv + (optind - 1)); if (ret != 0) - err(7,"Exec"); + err(7, "Exec"); break; case C_STAT: j.cmd = C_STAT; - if (jail_stats(&j)!=0) - err(8,"Error get jail stats"); + if (jail_stats(&j) != 0) + err(8, "Error get jail stats"); break; case C_FLAGS: - if (jail_flags(&j, optarg)!=0) - err(8,"Error set jail flags"); + if (jail_flags(&j, optarg) != 0) + err(8, "Error set jail flags"); break; default: usage(); - errx(100,"Unknow command"); + errx(100, "Unknow command"); } } - return( 0 ); + return (EX_OK); } static void usage(void) { - exit(1); + exit(EX_USAGE); } From owner-p4-projects@FreeBSD.ORG Mon Jun 19 06:35:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D598416A47A; Mon, 19 Jun 2006 06:35:47 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B1B5116A474 for ; Mon, 19 Jun 2006 06:35:47 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7C7B143D45 for ; Mon, 19 Jun 2006 06:35:47 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J6ZloU021827 for ; Mon, 19 Jun 2006 06:35:47 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J6Zl1M021824 for perforce@freebsd.org; Mon, 19 Jun 2006 06:35:47 GMT (envelope-from als@FreeBSD.org) Date: Mon, 19 Jun 2006 06:35:47 GMT Message-Id: <200606190635.k5J6Zl1M021824@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99585 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 06:35:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=99585 Change 99585 by als@als_head on 2006/06/19 06:35:43 Whitespace cleanup. use sysexits(3). Affected files ... .. //depot/projects/jail2/j2_tools/jdisk/jdisk.c#2 edit Differences ... ==== //depot/projects/jail2/j2_tools/jdisk/jdisk.c#2 (text+ko) ==== @@ -7,6 +7,7 @@ #include #include +#include #include #include #include @@ -19,48 +20,46 @@ int main(int argc, char **argv) { - int ch; + int ch; char *error; struct jail_2 j; - int ret; -/* int limit; */ - - /* options descriptor */ - static struct option longopts[] = { - { "ctx", required_argument, NULL, C_CTX }, - { "vroot", required_argument, NULL, C_VROOT }, - { NULL, 0, NULL, 0 } - }; + int ret; + + /* options descriptor */ + static struct option longopts[] = { + {"ctx", required_argument, NULL, C_CTX}, + {"vroot", required_argument, NULL, C_VROOT}, + {NULL, 0, NULL, 0} + }; j.version = 2; j.ctx_id = 0; j.data = NULL; j.cmd = 0; - while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1) - { - switch( ch ) { + while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1) { + switch (ch) { case C_CTX: - j.ctx_id = strtol(optarg,&error,10); - if( *error != '\0' ) - errx(1,"Error in context identifyer"); + j.ctx_id = strtol(optarg, &error, 10); + if (*error != '\0') + errx(1, "Error in context identifyer"); break; case C_VROOT: j.cmd = C_VROOT; - j.data=optarg; + j.data = optarg; ret = jail(&j); - if(ret != 0) + if (ret != 0) err(2, "%s", "Set vroot"); break; default: usage(); - errx(100,"Unknow command"); + errx(100, "Unknow command"); } } - return( 0 ); + return (EX_OK); } static void usage(void) { - exit(1); + exit(EX_USAGE); } From owner-p4-projects@FreeBSD.ORG Mon Jun 19 06:58:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C97616A47D; Mon, 19 Jun 2006 06:58:17 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 39CDB16A474 for ; Mon, 19 Jun 2006 06:58:17 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF39943D46 for ; Mon, 19 Jun 2006 06:58:16 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J6wGpW022735 for ; Mon, 19 Jun 2006 06:58:16 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J6wGT1022732 for perforce@freebsd.org; Mon, 19 Jun 2006 06:58:16 GMT (envelope-from als@FreeBSD.org) Date: Mon, 19 Jun 2006 06:58:16 GMT Message-Id: <200606190658.k5J6wGT1022732@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99586 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 06:58:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=99586 Change 99586 by als@als_head on 2006/06/19 06:57:35 Whitespace cleanup. use tabs instead off spaces. Affected files ... .. //depot/projects/jail2/j2_tools/jresource/jresource.c#2 edit Differences ... ==== //depot/projects/jail2/j2_tools/jresource/jresource.c#2 (text+ko) ==== @@ -1,4 +1,3 @@ - #include __FBSDID("$FreeBSD$"); @@ -13,7 +12,6 @@ #include #include - static void usage(void); #define C_CTX 0 @@ -28,19 +26,19 @@ struct jail_2 j; char *error; int limit; - int ret; - + int ret; + if (ctx == -1) - err(3,"Can`t set context id"); + err(3, "Can`t set context id"); j.version = 2; j.ctx_id = ctx; j.cmd = cmd; - limit = strtol(data,&error,10); - if( *error != '\0' ) - errx(1,"Error in process limit value"); - j.data=&limit; + limit = strtol(data, &error, 10); + if (*error != '\0') + errx(1, "Error in process limit value"); + j.data = &limit; ret = jail(&j); - if(ret != 0) + if (ret != 0) err(2, "%s", "set process limit"); } @@ -50,24 +48,23 @@ int ch; int ctx_id = -1; char *error; - - /* options descriptor */ - static struct option longopts[] = { - { "ctx", required_argument, NULL, C_CTX }, - { "proclimit", required_argument, NULL, C_PLIMIT }, - { "sysvshm", required_argument, NULL, C_IPCSHM }, - { "sysvsem", required_argument, NULL, C_IPCSEM }, - { "sysvmsq", required_argument, NULL, C_IPCMSQ }, - { NULL, 0, NULL, 0 } - }; + + /* options descriptor */ + static struct option longopts[] = { + {"ctx", required_argument, NULL, C_CTX}, + {"proclimit", required_argument, NULL, C_PLIMIT}, + {"sysvshm", required_argument, NULL, C_IPCSHM}, + {"sysvsem", required_argument, NULL, C_IPCSEM}, + {"sysvmsq", required_argument, NULL, C_IPCMSQ}, + {NULL, 0, NULL, 0} + }; - while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1) - { - switch( ch ) { + while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1) { + switch (ch) { case C_CTX: - ctx_id = strtol(optarg,&error,10); - if( *error != '\0' ) - errx(1,"Error in context identifyer"); + ctx_id = strtol(optarg, &error, 10); + if (*error != '\0') + errx(1, "Error in context identifyer"); break; case C_PLIMIT: case C_IPCSHM: @@ -77,7 +74,7 @@ break; default: usage(); - errx(100,"Unknow command"); + errx(100, "Unknow command"); } } return (EX_OK); From owner-p4-projects@FreeBSD.ORG Mon Jun 19 07:44:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E4D3A16A492; Mon, 19 Jun 2006 07:44:13 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BEE0916A481 for ; Mon, 19 Jun 2006 07:44:13 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7218343D48 for ; Mon, 19 Jun 2006 07:44:13 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J7iDXw026531 for ; Mon, 19 Jun 2006 07:44:13 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J7iDpa026528 for perforce@freebsd.org; Mon, 19 Jun 2006 07:44:13 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 19 Jun 2006 07:44:13 GMT Message-Id: <200606190744.k5J7iDpa026528@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 99587 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 07:44:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=99587 Change 99587 by ryanb@ryanb_yuki on 2006/06/19 07:44:06 Added support for SNDCTL_AUDIOINFO to dsp and mixer devices. Also touched the copyright statement in sys/soundcard.h. Folded sound/pcm/dsp.h into sound/pcm/sound.h, since dsp.c now includes a global function (dsp_oss_audioinfo). In sound.c, strncpy => strlcpy after suggestion from Warner Losh. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#3 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.h#2 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.c#4 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#5 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.h#3 edit .. //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#3 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#3 (text+ko) ==== @@ -1036,6 +1036,9 @@ case SNDCTL_SYSINFO: sound_oss_sysinfo((oss_sysinfo *)arg); break; + case SNDCTL_AUDIOINFO: + ret = dsp_oss_audioinfo(i_dev, (oss_audioinfo *)arg); + break; #endif /* !OSSV4_EXPERIMENT */ case SNDCTL_DSP_MAPINBUF: case SNDCTL_DSP_MAPOUTBUF: @@ -1212,4 +1215,129 @@ #endif #ifdef OSSV4_EXPERIMENT +/** + * @brief Handler for SNDCTL_DSP_AUDIOINFO. + * + * Gathers information about the audio device specified in ai->dev. If + * ai->dev == -1, then this function gathers information about the current + * device. If the call comes in on a non-audio device and ai->dev == -1, + * return EINVAL. + * + * This routine is supposed to go practically straight to the hardware, + * getting capabilities directly from the sound card driver, side-stepping + * the intermediate channel interface. + * + * @param dev device on which the ioctl was issued + * @param ai ioctl request data container + * + * @retval 0 success + * @retval EINVAL ai->dev specifies an invalid device + * + * @todo Verify correctness of Doxygen tags. ;) + */ +int +dsp_oss_audioinfo(struct cdev *i_dev, oss_audioinfo *ai) +{ + struct snddev_info *d; + struct cdev *t_cdev; /* handle 1 of target device */ + device_t t_dev; /* handle 2 */ + int t_unit = 0; /* unit # of target device */ + + /* + * Searching by unit number, get device_t and struct cdev handles + * on target audio device. + */ + if (ai->dev == -1) { + t_unit = PCMUNIT(i_dev); + t_cdev = i_dev; + + if ((i_dev->si_devsw == &dsp_cdevsw) && + (t_unit < devclass_get_maxunit(pcm_devclass))) { + t_dev = devclass_get_device(pcm_devclass, t_unit); + } else { + /* Not an audio device */ + return EINVAL; + } + } else { + t_dev = devclass_get_device(pcm_devclass, ai->dev); + if (t_dev == NULL) + return EINVAL; + t_unit = device_get_unit(t_dev); + + LIST_FOREACH(t_cdev, &dsp_cdevsw.d_devs, si_list) { + if (PCMUNIT(t_cdev) == t_unit) + break; + } + + if (t_cdev == NULL) + return EINVAL; + } + + d = dsp_get_info(t_cdev); + + /* + * With all handles collected, zero out the user's container and + * begin filling in its fields. + */ + bzero((void *)ai, sizeof(oss_audioinfo)); + + ai->dev = t_unit; + strlcpy(ai->name, device_get_desc(t_dev), sizeof(ai->name)); + /** + * @todo \c busy requires examining all channels + * + * @note + * \c pid - OSSv4 docs: "Value of -1 means that this information is + * not available or the device is currently not open." Since + * multiple processes may open a device, I'm going with the + * former. + * @par + * \c cmd - Same caveat as \c pid. + */ + ai->pid = -1; + /** + * @todo \c caps - requires going directly to sound card driver + * @todo \c iformats - same todo as \c caps + * @todo \c oformats - same todo as \c caps + * + * @note + * \c magic - OSSv4 docs: "Reserved for internal use by OSS." + * + * @par + * \c card_number - OSSv4 docs: "Number of the sound card where this + * device belongs or -1 if this information is not available. + * Applications should normally not use this field for any + * purpose." + */ + ai->card_number = -1; + /** + * @todo \c song_name - depends first on SNDCTL_[GS]ETSONG + * @todo \c label - depends on SNDCTL_[GS]ETLABEL + * @todo \c port_number - device unit number? + */ + ai->port_number = -1; + ai->mixer_dev = (d->mixer_dev != NULL) ? PCMUNIT(d->mixer_dev) : -1; + ai->real_device = t_unit; + strlcpy(ai->devnode, t_cdev->si_name, sizeof(ai->devnode)); + ai->enabled = device_is_attached(t_dev) ? 1 : 0; + /** + * @note + * \c flags - OSSv4 docs: "Reserved for future use." + * + * @todo \c min_rate - same todo as \c caps + * @todo \c max_rate - same todo as \c caps + * @todo \c nrates - same todo as \c caps + * @todo \c rates - same todo as \c caps + * @todo \c min_channels - same todo as \c caps + * @todo \c max_channels - same todo as \c caps + * + * @note + * \c binding - OSSv4 docs: "Reserved for future use." + * + * @todo \c handle - haven't decided how to generate this yet; bus, + * vendor, device IDs? + */ + + return 0; +} #endif /* !OSSV4_EXPERIMENT */ ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.h#2 (text+ko) ==== @@ -1,3 +1,4 @@ +#ifndef _PCMDSP_H_ /*- * Copyright (c) 1999 Cameron Grant * All rights reserved. @@ -27,3 +28,9 @@ */ extern struct cdevsw dsp_cdevsw; + +#ifdef OSSV4_EXPERIMENT +int dsp_oss_audioinfo(struct cdev *, oss_audioinfo *); +#endif + +#endif /* !_PCMDSP_H_ */ ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.c#4 (text+ko) ==== @@ -533,6 +533,10 @@ sound_oss_sysinfo((oss_sysinfo *)arg); snd_mtxunlock(m->lock); return 0; + } else if (cmd == SNDCTL_AUDIOINFO) { + ret = dsp_oss_audioinfo(i_dev, (oss_audioinfo *)arg); + snd_mtxunlock(m->lock); + return ret; } #endif /* !OSSV4_EXPERIMENT */ snd_mtxunlock(m->lock); ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#5 (text+ko) ==== @@ -1140,10 +1140,8 @@ static char si_product[] = "FreeBSD native OSS ABI"; static char si_version[] = __XSTRING(__FreeBSD_version); - strncpy(si->product, si_product, sizeof(si->product) - 1); - si->product[sizeof(si->product) - 1] = '\0'; - strncpy(si->version, si_version, sizeof(si->version) - 1); - si->product[sizeof(si->product) - 1] = '\0'; + strlcpy(si->product, si_product, sizeof(si->product)); + strlcpy(si->version, si_version, sizeof(si->version)); si->versionnum = SOUND_VERSION; si->numaudios = (pcm_devclass != NULL) ? devclass_get_count(pcm_devclass) : ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.h#3 (text+ko) ==== @@ -92,6 +92,7 @@ #include #include #include +#include #define PCM_SOFTC_SIZE 512 ==== //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#3 (text+ko) ==== @@ -3,7 +3,7 @@ */ /*- - * Copyright by Hannu Savolainen 1993 + * Copyright by Hannu Savolainen 1993 / 4Front Technologies 1993-2006 * Modified for the new FreeBSD sound driver by Luigi Rizzo, 1997 * * Redistribution and use in source and binary forms, with or without @@ -32,6 +32,12 @@ * $FreeBSD: src/sys/sys/soundcard.h,v 1.45 2005/07/31 16:08:03 netchild Exp $ */ +/* + * Unless coordinating changes with 4Front Technologies, do NOT make any + * modifications to ioctl commands, types, etc. that would break + * compatibility with the OSS API. + */ + #ifndef _SYS_SOUNDCARD_H_ #define _SYS_SOUNDCARD_H_ /* @@ -1439,6 +1445,15 @@ /***********************************************************************/ +/* + * Sections copyright 4Front Technologies 1993-2006. + * + * This file also contains changes taken in summer 2006 from + * sys/soundcard.h of 4Front Technologies OSS driver which contains + * the same copyright as above. + * + */ + /** * XXX OSSv4 defines -- some bits taken straight out of the new * sys/soundcard.h bundled with recent OSS releases. @@ -1446,6 +1461,9 @@ * NB: These macros and structures will be reorganized and inserted * in appropriate places throughout this file once the code begins * to take shape. + * + * @todo reorganize layout more like the 4Front version + * @todo ask about maintaining __SIOWR vs. _IOWR ioctl cmd defines */ #define OSSV4_EXPERIMENT 1 #ifdef OSSV4_EXPERIMENT @@ -1455,8 +1473,14 @@ # define SOUND_VERSION 0x040000 #endif /* !SOUND_VERSION */ +#define OSS_LONGNAME_SIZE 64 +#define OSS_LABEL_SIZE 16 +#define OSS_DEVNODE_SIZE 32 +typedef char oss_longname_t[OSS_LONGNAME_SIZE]; +typedef char oss_label_t[OSS_LABEL_SIZE]; +typedef char oss_devnode_t[OSS_DEVNODE_SIZE]; + /** - * @struct oss_sysinfo * @brief Argument for SNDCTL_SYSINFO ioctl. * * For use w/ the SNDCTL_SYSINFO ioctl available on audio (/dev/dsp*), @@ -1485,6 +1509,48 @@ #define SNDCTL_SYSINFO _IOR ('X', 1, oss_sysinfo) #define OSS_SYSINFO SNDCTL_SYSINFO /* Old name */ +#define OPEN_READ PCM_ENABLE_INPUT +#define OPEN_WRITE PCM_ENABLE_OUTPUT +#define OPEN_READWRITE (OPEN_READ|OPEN_WRITE) + +/** + * @brief Argument for SNDCTL_AUDIOINFO ioctl. + * + * For use w/ the SNDCTL_AUDIOINFO ioctl available on audio (/dev/dsp*) + * devices. + */ +typedef struct oss_audioinfo +{ + int dev; /* Audio device number */ + char name[64]; + int busy; /* 0, OPEN_READ, OPEN_WRITE or OPEN_READWRITE */ + int pid; + int caps; /* DSP_CAP_INPUT, DSP_CAP_OUTPUT */ + int iformats, oformats; + int magic; /* Reserved for internal use */ + char cmd[64]; /* Command using the device (if known) */ + int card_number; + int port_number; + int mixer_dev; + int real_device; /* Obsolete field. Replaced by devnode */ + int enabled; /* 1=enabled, 0=device not ready at this moment */ + int flags; /* For internal use only - no practical meaning */ + int min_rate, max_rate; /* Sample rate limits */ + int min_channels, max_channels; /* Number of channels supported */ + int binding; /* DSP_BIND_FRONT, etc. 0 means undefined */ + int rate_source; + char handle[32]; + #define MAX_SAMPLE_RATES 20 /* Cannot be changed */ + unsigned int nrates, rates[MAX_SAMPLE_RATES]; /* Please read the manual before using these */ + oss_longname_t song_name; /* Song name (if given) */ + oss_label_t label; /* Device label (if given) */ + int latency; /* In usecs, -1=unknown */ + oss_devnode_t devnode; /* Device special file name (inside /dev) */ + int filler[186]; +} oss_audioinfo; + +#define SNDCTL_AUDIOINFO _IOWR('X', 7, oss_audioinfo) + #endif /* !OSSV4_EXPERIMENT */ #endif /* !_SYS_SOUNDCARD_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Jun 19 08:12:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9D7D516A9C2; Mon, 19 Jun 2006 08:12:03 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8F66716A8F6 for ; Mon, 19 Jun 2006 08:12:02 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A1AF843DB1 for ; Mon, 19 Jun 2006 07:47:17 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J7lHAi026722 for ; Mon, 19 Jun 2006 07:47:17 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J7lHoD026719 for perforce@freebsd.org; Mon, 19 Jun 2006 07:47:17 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 19 Jun 2006 07:47:17 GMT Message-Id: <200606190747.k5J7lHoD026719@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 99588 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 08:12:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=99588 Change 99588 by ryanb@ryanb_yuki on 2006/06/19 07:47:03 Deleted duplicate copyright statement. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#4 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#4 (text+ko) ==== @@ -1445,15 +1445,6 @@ /***********************************************************************/ -/* - * Sections copyright 4Front Technologies 1993-2006. - * - * This file also contains changes taken in summer 2006 from - * sys/soundcard.h of 4Front Technologies OSS driver which contains - * the same copyright as above. - * - */ - /** * XXX OSSv4 defines -- some bits taken straight out of the new * sys/soundcard.h bundled with recent OSS releases. From owner-p4-projects@FreeBSD.ORG Mon Jun 19 08:28:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3600616A4A6; Mon, 19 Jun 2006 08:28:10 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C972F16A55B for ; Mon, 19 Jun 2006 08:28:09 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6B8D543FBE for ; Mon, 19 Jun 2006 07:56:29 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5J7uTxM027751 for ; Mon, 19 Jun 2006 07:56:29 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5J7uTDr027748 for perforce@freebsd.org; Mon, 19 Jun 2006 07:56:29 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 19 Jun 2006 07:56:29 GMT Message-Id: <200606190756.k5J7uTDr027748@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 99589 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 08:28:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=99589 Change 99589 by ryanb@ryanb_yuki on 2006/06/19 07:56:15 Fixed a typo. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#4 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#4 (text+ko) ==== @@ -1216,7 +1216,7 @@ #ifdef OSSV4_EXPERIMENT /** - * @brief Handler for SNDCTL_DSP_AUDIOINFO. + * @brief Handler for SNDCTL_AUDIOINFO. * * Gathers information about the audio device specified in ai->dev. If * ai->dev == -1, then this function gathers information about the current From owner-p4-projects@FreeBSD.ORG Mon Jun 19 10:26:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BAD616A47A; Mon, 19 Jun 2006 10:26:43 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C07F216A479 for ; Mon, 19 Jun 2006 10:26:42 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9125643D48 for ; Mon, 19 Jun 2006 10:26:42 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JAQg9L049556 for ; Mon, 19 Jun 2006 10:26:42 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JAQg8N049553 for perforce@freebsd.org; Mon, 19 Jun 2006 10:26:42 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 10:26:42 GMT Message-Id: <200606191026.k5JAQg8N049553@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99595 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 10:26:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=99595 Change 99595 by piso@piso_newluxor on 2006/06/19 10:26:28 Anticipate ie->ie_handlers emptiness check Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#2 (text+ko) ==== @@ -236,11 +236,11 @@ struct intr_vector *iv; struct intr_event *ie; struct intr_handler *ih; - int error, thread; + int error = 0, thread; iv = cookie; ie = iv->iv_event; - if (ie == NULL) { + if (ie == NULL || TAILQ_EMPTY(&ie->ie_handlers)) { intr_stray_vector(iv); return; } @@ -261,10 +261,7 @@ /* Schedule a heavyweight interrupt process. */ if (thread) error = intr_event_schedule_thread(ie); - else if (TAILQ_EMPTY(&ie->ie_handlers)) - error = EINVAL; - else - error = 0; + if (error == EINVAL) intr_stray_vector(iv); } From owner-p4-projects@FreeBSD.ORG Mon Jun 19 13:26:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 85D6B16A47C; Mon, 19 Jun 2006 13:26:34 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 49DAA16A47A for ; Mon, 19 Jun 2006 13:26:34 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C490C43D58 for ; Mon, 19 Jun 2006 13:26:28 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JDQSi2069436 for ; Mon, 19 Jun 2006 13:26:28 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JDQSKI069433 for perforce@freebsd.org; Mon, 19 Jun 2006 13:26:28 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 13:26:28 GMT Message-Id: <200606191326.k5JDQSKI069433@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99599 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 13:26:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=99599 Change 99599 by piso@piso_newluxor on 2006/06/19 13:26:07 Turn interrupt filtering execution MD code into MI code: now i've to convert all the remaining archs. Affected files ... .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#3 edit .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#3 edit .. //depot/projects/soc2006/intr_filter/sys/interrupt.h#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#3 (text+ko) ==== @@ -170,9 +170,7 @@ { struct thread *td; struct intr_event *ie; - struct intr_handler *ih; - int error, vector, thread, ret; - void *arg; + int error, vector, thread; td = curthread; @@ -214,44 +212,7 @@ td->td_intr_nesting_level++; thread = 0; critical_enter(); - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - /* - * Execute fast interrupt handlers directly. - * To support clock handlers, if a handler registers - * with a NULL argument, then we pass it a pointer to - * a trapframe as its argument. - */ - arg = ((ih->ih_argument == NULL) ? frame : ih->ih_argument); - - CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_handler, arg, ih->ih_name); - - if (ih->ih_flags & IH_FAST) { - // XXX - actually should call ih_filter()... - ret = ((driver_filter_t *)ih->ih_handler)(arg); - } else { - /* old ithread handler */ - thread = 1; - continue; - } - - /* try with the next handler... */ - if (ret == FILTER_STRAY) - continue; - - /* interrupt served, get out of here... */ - if (ret == FILTER_HANDLED) { - thread = 0; - break; - } - - /* mark handler for later execution */ - if (ret == FILTER_SCHEDULE_THREAD) { - ih->ih_need = 1; - thread = 1; - } - } - + thread = intr_filter_loop(ie, frame); /* * If there are any threaded handlers that need to run, * mask the source as well as sending it an EOI. Otherwise, ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#3 (text+ko) ==== @@ -764,6 +764,64 @@ } } +/* + * Main loop for interrupt filter. + * + * Some architectures (i386, amd64 and arm) require the optional frame + * parameter, and use it as the main argument for fast handler execution + * when ih_argument == NULL. + * + * Return: 0 (everything done) or 1 (schedule ithread) + */ + +int +intr_filter_loop(struct intr_event *ie, struct trapframe *frame) { + struct intr_handler *ih; + void *arg; + int ret, ret2 = 0; + + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + /* + * Execute fast interrupt handlers directly. + * To support clock handlers, if a handler registers + * with a NULL argument, then we pass it a pointer to + * a trapframe as its argument. + */ + arg = ((ih->ih_argument == NULL) ? frame : ih->ih_argument); + + CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, + ih->ih_handler, arg, ih->ih_name); + + if (ih->ih_flags & IH_FAST) { + // XXX - actually should call ih_filter()... + ret = ((driver_filter_t *)ih->ih_handler)(arg); + } else { + /* old ithread handler */ + ret2 = 1; + continue; + } + + /* try with the next handler... */ + if (ret == FILTER_STRAY) + continue; + + /* interrupt served, get out of here... */ + if (ret == FILTER_HANDLED) { + ret2 = 0; + break; + } + + /* mark handler for later execution */ + if (ret == FILTER_SCHEDULE_THREAD) { + ih->ih_need = 1; + ret2 = 1; + } + } + return(ret2); +} + + + #ifdef DDB /* * Dump details about an interrupt handler ==== //depot/projects/soc2006/intr_filter/sys/interrupt.h#2 (text+ko) ==== @@ -34,6 +34,7 @@ struct intr_event; struct intr_thread; +struct trapframe; /* * Describe a hardware interrupt handler. @@ -111,6 +112,7 @@ #ifdef DDB void db_dump_intr_event(struct intr_event *ie, int handlers); #endif +int intr_filter_loop(struct intr_event *ie, struct trapframe *frame); u_char intr_priority(enum intr_type flags); int intr_event_add_handler(struct intr_event *ie, const char *name, driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, From owner-p4-projects@FreeBSD.ORG Mon Jun 19 13:51:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 59BE216A482; Mon, 19 Jun 2006 13:51:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 191F816A484 for ; Mon, 19 Jun 2006 13:51:14 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from wx-out-0102.google.com (wx-out-0102.google.com [66.249.82.202]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF4CC43D45 for ; Mon, 19 Jun 2006 13:51:12 +0000 (GMT) (envelope-from asmrookie@gmail.com) Received: by wx-out-0102.google.com with SMTP id i31so810682wxd for ; Mon, 19 Jun 2006 06:51:12 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:sender:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=JkEI/b/YOluSqBK5DysIFwTdOOxpyDqGXp9/maMmICCS0ZpiYjhT2scrF6gNbuLgysu0u8yfTwVxVl6dMCWqL8LlF7pkx2wliTXBM5sA0WRnTxuoUi4MTvJC/Kg0yYlBAv97upmdSRFRDcAfxdoVdJtCzOA2nmK4RnBkVwBy85g= Received: by 10.70.74.14 with SMTP id w14mr8590080wxa; Mon, 19 Jun 2006 06:51:12 -0700 (PDT) Received: by 10.70.11.15 with HTTP; Mon, 19 Jun 2006 06:51:12 -0700 (PDT) Message-ID: <3bbf2fe10606190651i2135e03fr3572504208a31fa2@mail.gmail.com> Date: Mon, 19 Jun 2006 15:51:12 +0200 From: "Attilio Rao" Sender: asmrookie@gmail.com To: "Paolo Pisati" , perforce@freebsd.org In-Reply-To: <200606191326.k5JDQSKI069433@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <200606191326.k5JDQSKI069433@repoman.freebsd.org> X-Google-Sender-Auth: dc9ec380a149e5c1 Cc: Subject: Re: PERFORCE change 99599 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 13:51:14 -0000 2006/6/19, Paolo Pisati : > http://perforce.freebsd.org/chv.cgi?CH=99599 > > Change 99599 by piso@piso_newluxor on 2006/06/19 13:26:07 > > Turn interrupt filtering execution MD code into MI code: > now i've to convert all the remaining archs. > > Affected files ... > > .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#3 edit > .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#3 edit > .. //depot/projects/soc2006/intr_filter/sys/interrupt.h#2 edit > > Differences ... > > ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#3 (text+ko) ==== > > @@ -170,9 +170,7 @@ > { > struct thread *td; > struct intr_event *ie; > - struct intr_handler *ih; > - int error, vector, thread, ret; > - void *arg; > + int error, vector, thread; > > td = curthread; > > @@ -214,44 +212,7 @@ > td->td_intr_nesting_level++; > thread = 0; > critical_enter(); > - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { > - /* > - * Execute fast interrupt handlers directly. > - * To support clock handlers, if a handler registers > - * with a NULL argument, then we pass it a pointer to > - * a trapframe as its argument. > - */ > - arg = ((ih->ih_argument == NULL) ? frame : ih->ih_argument); > - > - CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, > - ih->ih_handler, arg, ih->ih_name); > - > - if (ih->ih_flags & IH_FAST) { > - // XXX - actually should call ih_filter()... > - ret = ((driver_filter_t *)ih->ih_handler)(arg); > - } else { > - /* old ithread handler */ > - thread = 1; > - continue; > - } > - > - /* try with the next handler... */ > - if (ret == FILTER_STRAY) > - continue; > - > - /* interrupt served, get out of here... */ > - if (ret == FILTER_HANDLED) { > - thread = 0; > - break; > - } > - > - /* mark handler for later execution */ > - if (ret == FILTER_SCHEDULE_THREAD) { > - ih->ih_need = 1; > - thread = 1; > - } > - } > - > + thread = intr_filter_loop(ie, frame); > /* > * If there are any threaded handlers that need to run, > * mask the source as well as sending it an EOI. Otherwise, > > ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#3 (text+ko) ==== > > @@ -764,6 +764,64 @@ > } > } > > +/* > + * Main loop for interrupt filter. > + * > + * Some architectures (i386, amd64 and arm) require the optional frame > + * parameter, and use it as the main argument for fast handler execution > + * when ih_argument == NULL. > + * > + * Return: 0 (everything done) or 1 (schedule ithread) > + */ > + > +int > +intr_filter_loop(struct intr_event *ie, struct trapframe *frame) { > + struct intr_handler *ih; > + void *arg; > + int ret, ret2 = 0; > + > + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { > + /* > + * Execute fast interrupt handlers directly. > + * To support clock handlers, if a handler registers > + * with a NULL argument, then we pass it a pointer to > + * a trapframe as its argument. > + */ > + arg = ((ih->ih_argument == NULL) ? frame : ih->ih_argument); > + > + CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, > + ih->ih_handler, arg, ih->ih_name); > + > + if (ih->ih_flags & IH_FAST) { > + // XXX - actually should call ih_filter()... > + ret = ((driver_filter_t *)ih->ih_handler)(arg); > + } else { > + /* old ithread handler */ > + ret2 = 1; > + continue; > + } > + > + /* try with the next handler... */ > + if (ret == FILTER_STRAY) > + continue; Maybe you would like to initialize ret before compare since the case of (ih->ih_flags & IH_FAST) == 0 is not completely consistent, I think. And, please, keep in mind that style(9) suggests avoiding variables initialization in their declarations. Attilio -- Peace can only be achieved by understanding - A. Einstein From owner-p4-projects@FreeBSD.ORG Mon Jun 19 14:12:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC2D116A60F; Mon, 19 Jun 2006 14:12:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7BD0716A60D; Mon, 19 Jun 2006 14:12:48 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id EF07D43D48; Mon, 19 Jun 2006 14:12:46 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k5JECVEQ016579; Mon, 19 Jun 2006 10:12:45 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Roman Divacky Date: Mon, 19 Jun 2006 10:02:25 -0400 User-Agent: KMail/1.9.1 References: <200606170857.k5H8vYVk017130@repoman.freebsd.org> In-Reply-To: <200606170857.k5H8vYVk017130@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200606191002.26358.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Mon, 19 Jun 2006 10:12:45 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1549/Sat Jun 17 18:20:39 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 99406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 14:12:49 -0000 On Saturday 17 June 2006 04:57, Roman Divacky wrote: > http://perforce.freebsd.org/chv.cgi?CH=3D99406 >=20 > Change 99406 by rdivacky@rdivacky_witten on 2006/06/17 08:56:59 >=20 > Change the emulpath sysctl to be per-prison. >=20 > =3D=3D=3D=3D //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/l= inux_mib.c#3 (text+ko) =3D=3D=3D=3D >=20 > @@ -90,7 +90,7 @@ > static int > linux_sysctl_linux_emul_path(SYSCTL_HANDLER_ARGS) > { > - char emul_path[LINUX_NAME_MAX]; > + static char emul_path[LINUX_NAME_MAX]; > int error; > Elf32_Brandinfo **brandinfo; > =20 > @@ -99,10 +99,39 @@ > if (error || req->newptr =3D=3D NULL) > return (error); > error =3D linux_set_emul_path(req->td, emul_path); > - for (brandinfo =3D &linux_brandlist[0]; *brandinfo !=3D NULL; > - ++brandinfo) > - if (elf32_insert_brand_entry(*brandinfo) < 0) > - error =3D EINVAL; =20 > + { > + static Elf32_Brandinfo linux_brand =3D { > + ELFOSABI_LINUX, > + EM_386, > + "Linux", > + emul_path, > + "/lib/ld-linux.so.1", > + &elf_linux_sysvec, > + NULL, > + BI_CAN_EXEC_DYN, > + }; > + static Elf32_Brandinfo linux_glibc2brand =3D { > + ELFOSABI_LINUX, > + EM_386, > + "Linux", > + emul_path, > + "/lib/ld-linux.so.2", > + &elf_linux_sysvec, > + NULL, > + BI_CAN_EXEC_DYN, > + }; > + =09 > + Elf32_Brandinfo *local_linux_brandlist[] =3D { > + &linux_brand, > + &linux_glibc2brand, > + NULL > + }; > + > + for (brandinfo =3D &local_linux_brandlist[0]; *brandinfo !=3D NU= LL; > + ++brandinfo) > + if (elf32_insert_brand_entry(*brandinfo) < 0) > + error =3D EINVAL; =20 > + } > return (error); > } I don't think this is going to work because the brand lists aren't per-prison, they are one shared list. That is, once you create a jail and try to change the path, the insert's will add new entries to the end of the list, but an earlier entry for another jail might handle the binary instead. Also, elf32_insert_brand_entry() saves the pointer you pass to it, and your pointers are for variables that are on the stack which will become garbage when this function returns. =2D-=20 John Baldwin =A0<>< =A0http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" =A0=3D =A0http://www.FreeBSD.org From owner-p4-projects@FreeBSD.ORG Mon Jun 19 14:15:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A3EA516A47C; Mon, 19 Jun 2006 14:15:38 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7D34F16A47A for ; Mon, 19 Jun 2006 14:15:38 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C7C0243D73 for ; Mon, 19 Jun 2006 14:15:29 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JEFTEV072566 for ; Mon, 19 Jun 2006 14:15:29 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JEFTmt072562 for perforce@freebsd.org; Mon, 19 Jun 2006 14:15:29 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 19 Jun 2006 14:15:29 GMT Message-Id: <200606191415.k5JEFTmt072562@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 99600 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 14:15:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=99600 Change 99600 by rdivacky@rdivacky_witten on 2006/06/19 14:15:09 Update the syscall.master files for the upcoming DUMMYification of the recently added syscall. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#4 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#4 (text+ko) ==== @@ -418,61 +418,61 @@ 251 AUE_NULL UNIMPL 252 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit_group \ sys_exit_args void -253 AUE_NULL UNIMPL linux_lookup_dcookie -254 AUE_NULL UNIMPL linux_epoll_create -255 AUE_NULL UNIMPL linux_epoll_ctl -256 AUE_NULL UNIMPL linux_epoll_wait -257 AUE_NULL UNIMPL linux_remap_file_pages -258 AUE_NULL UNIMPL linux_set_tid_address -259 AUE_NULL UNIMPL linux_timer_create -260 AUE_NULL UNIMPL linux_timer_settime -261 AUE_NULL UNIMPL linux_timer_gettime -262 AUE_NULL UNIMPL linux_timer_getoverrun -263 AUE_NULL UNIMPL linux_timer_delete -264 AUE_CLOCK_SETTIME UNIMPL linux_clock_settime -265 AUE_NULL UNIMPL linux_clock_gettime -266 AUE_NULL UNIMPL linux_clock_getres -267 AUE_NULL UNIMPL linux_clock_nanosleep -268 AUE_NULL UNIMPL linux_statfs64 -269 AUE_NULL UNIMPL linux_fstatfs64 -270 AUE_NULL UNIMPL linux_tgkill /* 270 */ -271 AUE_NULL UNIMPL linux_utimes -272 AUE_NULL UNIMPL linux_fadvise64_64 -273 AUE_NULL UNIMPL linux_ni_syscall /* linux_vserver */ -274 AUE_NULL UNIMPL linux_mbind -275 AUE_NULL UNIMPL linux_get_mempolicy -276 AUE_NULL UNIMPL linux_set_mempolicy -277 AUE_NULL UNIMPL linux_mq_open -278 AUE_NULL UNIMPL linux_mq_unlink -279 AUE_NULL UNIMPL linux_mq_timedsend -280 AUE_NULL UNIMPL linux_mq_timedreceive /* 280 */ -281 AUE_NULL UNIMPL linux_mq_notify -282 AUE_NULL UNIMPL linux_mq_getsetattr -283 AUE_NULL UNIMPL linux_kexec_load -284 AUE_NULL UNIMPL linux_waitid -285 AUE_NULL UNIMPL linux_ni_syscall /* 285 */ /* available */ -286 AUE_NULL UNIMPL linux_add_key -287 AUE_NULL UNIMPL linux_request_key -288 AUE_NULL UNIMPL linux_keyctl -289 AUE_NULL UNIMPL linux_ioprio_set -290 AUE_NULL UNIMPL linux_ioprio_get /* 290 */ -291 AUE_NULL UNIMPL linux_inotify_init -292 AUE_NULL UNIMPL linux_inotify_add_watch -293 AUE_NULL UNIMPL linux_inotify_rm_watch -294 AUE_NULL UNIMPL linux_migrate_pages -295 AUE_NULL UNIMPL linux_openat /* 295 */ -296 AUE_NULL UNIMPL linux_mkdirat -297 AUE_NULL UNIMPL linux_mknodat -298 AUE_NULL UNIMPL linux_fchownat -299 AUE_NULL UNIMPL linux_futimesat -300 AUE_NULL UNIMPL linux_fstatat64 /* 300 */ -301 AUE_NULL UNIMPL linux_unlinkat -302 AUE_NULL UNIMPL linux_renameat -303 AUE_NULL UNIMPL linux_linkat -304 AUE_NULL UNIMPL linux_symlinkat -305 AUE_NULL UNIMPL linux_readlinkat /* 305 */ -306 AUE_NULL UNIMPL linux_fchmodat -307 AUE_NULL UNIMPL linux_faccessat -308 AUE_NULL UNIMPL linux_pselect6 -309 AUE_NULL UNIMPL linux_ppoll -310 AUE_NULL UNIMPL linux_unshare /* 310 */ +253 AUE_NULL MSTD { int linux_lookup_dcookie(void); } +254 AUE_NULL MSTD { int linux_epoll_create(void); } +255 AUE_NULL MSTD { int linux_epoll_ctl(void); } +256 AUE_NULL MSTD { int linux_epoll_wait(void); } +257 AUE_NULL MSTD { int linux_remap_file_pages(void); } +258 AUE_NULL MSTD { int linux_set_tid_address(void); } +259 AUE_NULL MSTD { int linux_timer_create(void); } +260 AUE_NULL MSTD { int linux_timer_settime(void); } +261 AUE_NULL MSTD { int linux_timer_gettime(void); } +262 AUE_NULL MSTD { int linux_timer_getoverrun(void); } +263 AUE_NULL MSTD { int linux_timer_delete(void); } +264 AUE_CLOCK_SETTIME MSTD { int linux_clock_settime(void); } +265 AUE_NULL MSTD { int linux_clock_gettime(void); } +266 AUE_NULL MSTD { int linux_clock_getres(void); } +267 AUE_NULL MSTD { int linux_clock_nanosleep(void); } +268 AUE_NULL MSTD { int linux_statfs64(void); } +269 AUE_NULL MSTD { int linux_fstatfs64(void); } +270 AUE_NULL MSTD { int linux_tgkill(void); } +271 AUE_NULL MSTD { int linux_utimes(void); } +272 AUE_NULL MSTD { int linux_fadvise64_64(void); } +273 AUE_NULL UNIMPL +274 AUE_NULL MSTD { int linux_mbind(void); } +275 AUE_NULL MSTD { int linux_get_mempolicy(void); } +276 AUE_NULL MSTD { int linux_set_mempolicy(void); } +277 AUE_NULL MSTD { int linux_mq_open(void); } +278 AUE_NULL MSTD { int linux_mq_unlink(void); } +279 AUE_NULL MSTD { int linux_mq_timedsend(void); } +280 AUE_NULL MSTD { int linux_mq_timedreceive(void); } +281 AUE_NULL MSTD { int linux_mq_notify(void); } +282 AUE_NULL MSTD { int linux_mq_getsetattr(void); } +283 AUE_NULL MSTD { int linux_kexec_load(void); } +284 AUE_NULL MSTD { int linux_waitid(void); } +285 AUE_NULL UNIMPL +286 AUE_NULL MSTD { int linux_add_key(void); } +287 AUE_NULL MSTD { int linux_request_key(void); } +288 AUE_NULL MSTD { int linux_keyctl(void); } +289 AUE_NULL MSTD { int linux_ioprio_set(void); } +290 AUE_NULL MSTD { int linux_ioprio_get(void); } +291 AUE_NULL MSTD { int linux_inotify_init(void); } +292 AUE_NULL MSTD { int linux_inotify_add_watch(void); } +293 AUE_NULL MSTD { int linux_inotify_rm_watch(void); } +294 AUE_NULL MSTD { int linux_migrate_pages(void); } +295 AUE_NULL MSTD { int linux_openat(void); } +296 AUE_NULL MSTD { int linux_mkdirat(void); } +297 AUE_NULL MSTD { int linux_mknodat(void); } +298 AUE_NULL MSTD { int linux_fchownat(void); } +299 AUE_NULL MSTD { int linux_futimesat(void); } +300 AUE_NULL MSTD { int linux_fstatat64(void); } +301 AUE_NULL MSTD { int linux_unlinkat(void); } +302 AUE_NULL MSTD { int linux_renameat(void); } +303 AUE_NULL MSTD { int linux_linkat(void); } +304 AUE_NULL MSTD { int linux_symlinkat(void); } +305 AUE_NULL MSTD { int linux_readlinkat(void); } +306 AUE_NULL MSTD { int linux_fchmodat(void); } +307 AUE_NULL MSTD { int linux_faccessat(void); } +308 AUE_NULL MSTD { int linux_pselect6(void); } +309 AUE_NULL MSTD { int linux_ppoll(void); } +310 AUE_NULL MSTD { int linux_unshare(void); } ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#4 (text+ko) ==== @@ -419,61 +419,61 @@ 251 AUE_NULL UNIMPL 252 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit_group \ sys_exit_args void -253 AUE_NULL UNIMPL linux_lookup_dcookie -254 AUE_NULL UNIMPL linux_epoll_create -255 AUE_NULL UNIMPL linux_epoll_ctl -256 AUE_NULL UNIMPL linux_epoll_wait -257 AUE_NULL UNIMPL linux_remap_file_pages -258 AUE_NULL UNIMPL linux_set_tid_address -259 AUE_NULL UNIMPL linux_timer_create -260 AUE_NULL UNIMPL linux_timer_settime -261 AUE_NULL UNIMPL linux_timer_gettime -262 AUE_NULL UNIMPL linux_timer_getoverrun -263 AUE_NULL UNIMPL linux_timer_delete -264 AUE_CLOCK_SETTIME UNIMPL linux_clock_settime -265 AUE_NULL UNIMPL linux_clock_gettime -266 AUE_NULL UNIMPL linux_clock_getres -267 AUE_NULL UNIMPL linux_clock_nanosleep -268 AUE_NULL UNIMPL linux_statfs64 -269 AUE_NULL UNIMPL linux_fstatfs64 -270 AUE_NULL UNIMPL linux_tgkill /* 270 */ -271 AUE_NULL UNIMPL linux_utimes -272 AUE_NULL UNIMPL linux_fadvise64_64 -273 AUE_NULL UNIMPL linux_ni_syscall /* linux_vserver */ -274 AUE_NULL UNIMPL linux_mbind -275 AUE_NULL UNIMPL linux_get_mempolicy -276 AUE_NULL UNIMPL linux_set_mempolicy -277 AUE_NULL UNIMPL linux_mq_open -278 AUE_NULL UNIMPL linux_mq_unlink -279 AUE_NULL UNIMPL linux_mq_timedsend -280 AUE_NULL UNIMPL linux_mq_timedreceive /* 280 */ -281 AUE_NULL UNIMPL linux_mq_notify -282 AUE_NULL UNIMPL linux_mq_getsetattr -283 AUE_NULL UNIMPL linux_kexec_load -284 AUE_NULL UNIMPL linux_waitid -285 AUE_NULL UNIMPL linux_ni_syscall /* 285 */ /* available */ -286 AUE_NULL UNIMPL linux_add_key -287 AUE_NULL UNIMPL linux_request_key -288 AUE_NULL UNIMPL linux_keyctl -289 AUE_NULL UNIMPL linux_ioprio_set -290 AUE_NULL UNIMPL linux_ioprio_get /* 290 */ -291 AUE_NULL UNIMPL linux_inotify_init -292 AUE_NULL UNIMPL linux_inotify_add_watch -293 AUE_NULL UNIMPL linux_inotify_rm_watch -294 AUE_NULL UNIMPL linux_migrate_pages -295 AUE_NULL UNIMPL linux_openat /* 295 */ -296 AUE_NULL UNIMPL linux_mkdirat -297 AUE_NULL UNIMPL linux_mknodat -298 AUE_NULL UNIMPL linux_fchownat -299 AUE_NULL UNIMPL linux_futimesat -300 AUE_NULL UNIMPL linux_fstatat64 /* 300 */ -301 AUE_NULL UNIMPL linux_unlinkat -302 AUE_NULL UNIMPL linux_renameat -303 AUE_NULL UNIMPL linux_linkat -304 AUE_NULL UNIMPL linux_symlinkat -305 AUE_NULL UNIMPL linux_readlinkat /* 305 */ -306 AUE_NULL UNIMPL linux_fchmodat -307 AUE_NULL UNIMPL linux_faccessat -308 AUE_NULL UNIMPL linux_pselect6 -309 AUE_NULL UNIMPL linux_ppoll -310 AUE_NULL UNIMPL linux_unshare /* 310 */ +253 AUE_NULL MSTD { int linux_lookup_dcookie(void); } +254 AUE_NULL MSTD { int linux_epoll_create(void); } +255 AUE_NULL MSTD { int linux_epoll_ctl(void); } +256 AUE_NULL MSTD { int linux_epoll_wait(void); } +257 AUE_NULL MSTD { int linux_remap_file_pages(void); } +258 AUE_NULL MSTD { int linux_set_tid_address(void); } +259 AUE_NULL MSTD { int linux_timer_create(void); } +260 AUE_NULL MSTD { int linux_timer_settime(void); } +261 AUE_NULL MSTD { int linux_timer_gettime(void); } +262 AUE_NULL MSTD { int linux_timer_getoverrun(void); } +263 AUE_NULL MSTD { int linux_timer_delete(void); } +264 AUE_CLOCK_SETTIME MSTD { int linux_clock_settime(void); } +265 AUE_NULL MSTD { int linux_clock_gettime(void); } +266 AUE_NULL MSTD { int linux_clock_getres(void); } +267 AUE_NULL MSTD { int linux_clock_nanosleep(void); } +268 AUE_NULL MSTD { int linux_statfs64(void); } +269 AUE_NULL MSTD { int linux_fstatfs64(void); } +270 AUE_NULL MSTD { int linux_tgkill(void); } +271 AUE_NULL MSTD { int linux_utimes(void); } +272 AUE_NULL MSTD { int linux_fadvise64_64(void); } +273 AUE_NULL UNIMPL +274 AUE_NULL MSTD { int linux_mbind(void); } +275 AUE_NULL MSTD { int linux_get_mempolicy(void); } +276 AUE_NULL MSTD { int linux_set_mempolicy(void); } +277 AUE_NULL MSTD { int linux_mq_open(void); } +278 AUE_NULL MSTD { int linux_mq_unlink(void); } +279 AUE_NULL MSTD { int linux_mq_timedsend(void); } +280 AUE_NULL MSTD { int linux_mq_timedreceive(void); } +281 AUE_NULL MSTD { int linux_mq_notify(void); } +282 AUE_NULL MSTD { int linux_mq_getsetattr(void); } +283 AUE_NULL MSTD { int linux_kexec_load(void); } +284 AUE_NULL MSTD { int linux_waitid(void); } +285 AUE_NULL UNIMPL +286 AUE_NULL MSTD { int linux_add_key(void); } +287 AUE_NULL MSTD { int linux_request_key(void); } +288 AUE_NULL MSTD { int linux_keyctl(void); } +289 AUE_NULL MSTD { int linux_ioprio_set(void); } +290 AUE_NULL MSTD { int linux_ioprio_get(void); } +291 AUE_NULL MSTD { int linux_inotify_init(void); } +292 AUE_NULL MSTD { int linux_inotify_add_watch(void); } +293 AUE_NULL MSTD { int linux_inotify_rm_watch(void); } +294 AUE_NULL MSTD { int linux_migrate_pages(void); } +295 AUE_NULL MSTD { int linux_openat(void); } +296 AUE_NULL MSTD { int linux_mkdirat(void); } +297 AUE_NULL MSTD { int linux_mknodat(void); } +298 AUE_NULL MSTD { int linux_fchownat(void); } +299 AUE_NULL MSTD { int linux_futimesat(void); } +300 AUE_NULL MSTD { int linux_fstatat64(void); } +301 AUE_NULL MSTD { int linux_unlinkat(void); } +302 AUE_NULL MSTD { int linux_renameat(void); } +303 AUE_NULL MSTD { int linux_linkat(void); } +304 AUE_NULL MSTD { int linux_symlinkat(void); } +305 AUE_NULL MSTD { int linux_readlinkat(void); } +306 AUE_NULL MSTD { int linux_fchmodat(void); } +307 AUE_NULL MSTD { int linux_faccessat(void); } +308 AUE_NULL MSTD { int linux_pselect6(void); } +309 AUE_NULL MSTD { int linux_ppoll(void); } +310 AUE_NULL MSTD { int linux_unshare(void); } From owner-p4-projects@FreeBSD.ORG Mon Jun 19 14:16:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A8C6816A47C; Mon, 19 Jun 2006 14:16:44 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D47816A474 for ; Mon, 19 Jun 2006 14:16:44 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EEDFC43D5D for ; Mon, 19 Jun 2006 14:16:31 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JEGVkl072622 for ; Mon, 19 Jun 2006 14:16:31 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JEGVRI072619 for perforce@freebsd.org; Mon, 19 Jun 2006 14:16:31 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 19 Jun 2006 14:16:31 GMT Message-Id: <200606191416.k5JEGVRI072619@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 99601 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 14:16:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=99601 Change 99601 by rdivacky@rdivacky_witten on 2006/06/19 14:16:13 Regen after syscalls.master update. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#4 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#4 (text+ko) ==== @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#4 (text+ko) ==== @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 #define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#4 (text+ko) ==== @@ -273,62 +273,62 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64, AUE_NULL }, /* 250 = linux_fadvise64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 251 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 252 = exit_group */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 253 = linux_lookup_dcookie */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 254 = linux_epoll_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = linux_epoll_ctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = linux_epoll_wait */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = linux_set_tid_address */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = linux_timer_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = linux_timer_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = linux_timer_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = linux_timer_getoverrun */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = linux_timer_delete */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = linux_clock_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = linux_clock_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = linux_clock_getres */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = linux_statfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = linux_fstatfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = linux_tgkill */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = linux_utimes */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 272 = linux_fadvise64_64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 274 = linux_mbind */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 275 = linux_get_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 276 = linux_set_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 277 = linux_mq_open */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 278 = linux_mq_unlink */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 279 = linux_mq_timedsend */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 280 = linux_mq_timedreceive */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = linux_mq_notify */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = linux_mq_getsetattr */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = linux_kexec_load */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = linux_waitid */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = linux_add_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = linux_request_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = linux_keyctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = linux_ioprio_set */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = linux_ioprio_get */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = linux_inotify_init */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = linux_inotify_add_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = linux_migrate_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = linux_openat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = linux_mkdirat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 297 = linux_mknodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 298 = linux_fchownat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 299 = linux_futimesat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 300 = linux_fstatat64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 301 = linux_unlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 302 = linux_renameat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 303 = linux_linkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 304 = linux_symlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 305 = linux_readlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 306 = linux_fchmodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 307 = linux_faccessat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 308 = linux_pselect6 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 309 = linux_ppoll */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 310 = linux_unshare */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL }, /* 253 = linux_lookup_dcookie */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_create, AUE_NULL }, /* 254 = linux_epoll_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL }, /* 262 = linux_timer_getoverrun */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_delete, AUE_NULL }, /* 263 = linux_timer_delete */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME }, /* 264 = linux_clock_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_gettime, AUE_NULL }, /* 265 = linux_clock_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_getres, AUE_NULL }, /* 266 = linux_clock_getres */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_nanosleep, AUE_NULL }, /* 267 = linux_clock_nanosleep */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_statfs64, AUE_NULL }, /* 268 = linux_statfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatfs64, AUE_NULL }, /* 269 = linux_fstatfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_tgkill, AUE_NULL }, /* 270 = linux_tgkill */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_utimes, AUE_NULL }, /* 271 = linux_utimes */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64_64, AUE_NULL }, /* 272 = linux_fadvise64_64 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mbind, AUE_NULL }, /* 274 = linux_mbind */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_get_mempolicy, AUE_NULL }, /* 275 = linux_get_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_mempolicy, AUE_NULL }, /* 276 = linux_set_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_open, AUE_NULL }, /* 277 = linux_mq_open */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_unlink, AUE_NULL }, /* 278 = linux_mq_unlink */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedsend, AUE_NULL }, /* 279 = linux_mq_timedsend */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedreceive, AUE_NULL }, /* 280 = linux_mq_timedreceive */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_notify, AUE_NULL }, /* 281 = linux_mq_notify */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_getsetattr, AUE_NULL }, /* 282 = linux_mq_getsetattr */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_kexec_load, AUE_NULL }, /* 283 = linux_kexec_load */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_waitid, AUE_NULL }, /* 284 = linux_waitid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_add_key, AUE_NULL }, /* 286 = linux_add_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_request_key, AUE_NULL }, /* 287 = linux_request_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_keyctl, AUE_NULL }, /* 288 = linux_keyctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_set, AUE_NULL }, /* 289 = linux_ioprio_set */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_get, AUE_NULL }, /* 290 = linux_ioprio_get */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_init, AUE_NULL }, /* 291 = linux_inotify_init */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_add_watch, AUE_NULL }, /* 292 = linux_inotify_add_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_rm_watch, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_migrate_pages, AUE_NULL }, /* 294 = linux_migrate_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_openat, AUE_NULL }, /* 295 = linux_openat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mkdirat, AUE_NULL }, /* 296 = linux_mkdirat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mknodat, AUE_NULL }, /* 297 = linux_mknodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchownat, AUE_NULL }, /* 298 = linux_fchownat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_futimesat, AUE_NULL }, /* 299 = linux_futimesat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatat64, AUE_NULL }, /* 300 = linux_fstatat64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unlinkat, AUE_NULL }, /* 301 = linux_unlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_renameat, AUE_NULL }, /* 302 = linux_renameat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_linkat, AUE_NULL }, /* 303 = linux_linkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_symlinkat, AUE_NULL }, /* 304 = linux_symlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_readlinkat, AUE_NULL }, /* 305 = linux_readlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchmodat, AUE_NULL }, /* 306 = linux_fchmodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_faccessat, AUE_NULL }, /* 307 = linux_faccessat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_pselect6, AUE_NULL }, /* 308 = linux_pselect6 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ppoll, AUE_NULL }, /* 309 = linux_ppoll */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unshare, AUE_NULL }, /* 310 = linux_unshare */ }; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#4 (text+ko) ==== @@ -708,6 +708,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -881,6 +1049,62 @@ int linux_tkill(struct thread *, struct linux_tkill_args *); int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#4 (text+ko) ==== @@ -230,4 +230,60 @@ #define LINUX_SYS_linux_set_thread_area 243 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 #define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#4 (text+ko) ==== @@ -272,62 +272,62 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64, AUE_NULL }, /* 250 = linux_fadvise64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 251 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 252 = exit_group */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 253 = linux_lookup_dcookie */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 254 = linux_epoll_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = linux_epoll_ctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = linux_epoll_wait */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = linux_set_tid_address */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = linux_timer_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = linux_timer_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = linux_timer_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = linux_timer_getoverrun */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = linux_timer_delete */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = linux_clock_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = linux_clock_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = linux_clock_getres */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = linux_statfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = linux_fstatfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = linux_tgkill */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = linux_utimes */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 272 = linux_fadvise64_64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 274 = linux_mbind */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 275 = linux_get_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 276 = linux_set_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 277 = linux_mq_open */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 278 = linux_mq_unlink */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 279 = linux_mq_timedsend */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 280 = linux_mq_timedreceive */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = linux_mq_notify */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = linux_mq_getsetattr */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = linux_kexec_load */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = linux_waitid */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = linux_add_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = linux_request_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = linux_keyctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = linux_ioprio_set */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = linux_ioprio_get */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = linux_inotify_init */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = linux_inotify_add_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = linux_migrate_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = linux_openat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = linux_mkdirat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 297 = linux_mknodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 298 = linux_fchownat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 299 = linux_futimesat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 300 = linux_fstatat64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 301 = linux_unlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 302 = linux_renameat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 303 = linux_linkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 304 = linux_symlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 305 = linux_readlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 306 = linux_fchmodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 307 = linux_faccessat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 308 = linux_pselect6 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 309 = linux_ppoll */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 310 = linux_unshare */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL }, /* 253 = linux_lookup_dcookie */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_create, AUE_NULL }, /* 254 = linux_epoll_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL }, /* 262 = linux_timer_getoverrun */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_delete, AUE_NULL }, /* 263 = linux_timer_delete */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME }, /* 264 = linux_clock_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_gettime, AUE_NULL }, /* 265 = linux_clock_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_getres, AUE_NULL }, /* 266 = linux_clock_getres */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_nanosleep, AUE_NULL }, /* 267 = linux_clock_nanosleep */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_statfs64, AUE_NULL }, /* 268 = linux_statfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatfs64, AUE_NULL }, /* 269 = linux_fstatfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_tgkill, AUE_NULL }, /* 270 = linux_tgkill */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_utimes, AUE_NULL }, /* 271 = linux_utimes */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64_64, AUE_NULL }, /* 272 = linux_fadvise64_64 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mbind, AUE_NULL }, /* 274 = linux_mbind */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_get_mempolicy, AUE_NULL }, /* 275 = linux_get_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_mempolicy, AUE_NULL }, /* 276 = linux_set_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_open, AUE_NULL }, /* 277 = linux_mq_open */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_unlink, AUE_NULL }, /* 278 = linux_mq_unlink */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedsend, AUE_NULL }, /* 279 = linux_mq_timedsend */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedreceive, AUE_NULL }, /* 280 = linux_mq_timedreceive */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_notify, AUE_NULL }, /* 281 = linux_mq_notify */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_getsetattr, AUE_NULL }, /* 282 = linux_mq_getsetattr */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_kexec_load, AUE_NULL }, /* 283 = linux_kexec_load */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_waitid, AUE_NULL }, /* 284 = linux_waitid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_add_key, AUE_NULL }, /* 286 = linux_add_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_request_key, AUE_NULL }, /* 287 = linux_request_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_keyctl, AUE_NULL }, /* 288 = linux_keyctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_set, AUE_NULL }, /* 289 = linux_ioprio_set */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_get, AUE_NULL }, /* 290 = linux_ioprio_get */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_init, AUE_NULL }, /* 291 = linux_inotify_init */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_add_watch, AUE_NULL }, /* 292 = linux_inotify_add_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_rm_watch, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_migrate_pages, AUE_NULL }, /* 294 = linux_migrate_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_openat, AUE_NULL }, /* 295 = linux_openat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mkdirat, AUE_NULL }, /* 296 = linux_mkdirat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mknodat, AUE_NULL }, /* 297 = linux_mknodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchownat, AUE_NULL }, /* 298 = linux_fchownat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_futimesat, AUE_NULL }, /* 299 = linux_futimesat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatat64, AUE_NULL }, /* 300 = linux_fstatat64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unlinkat, AUE_NULL }, /* 301 = linux_unlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_renameat, AUE_NULL }, /* 302 = linux_renameat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_linkat, AUE_NULL }, /* 303 = linux_linkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_symlinkat, AUE_NULL }, /* 304 = linux_symlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_readlinkat, AUE_NULL }, /* 305 = linux_readlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchmodat, AUE_NULL }, /* 306 = linux_fchmodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_faccessat, AUE_NULL }, /* 307 = linux_faccessat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_pselect6, AUE_NULL }, /* 308 = linux_pselect6 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ppoll, AUE_NULL }, /* 309 = linux_ppoll */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unshare, AUE_NULL }, /* 310 = linux_unshare */ }; From owner-p4-projects@FreeBSD.ORG Mon Jun 19 14:17:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F90216A47D; Mon, 19 Jun 2006 14:17:34 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 35BE016A479 for ; Mon, 19 Jun 2006 14:17:34 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D58843D6D for ; Mon, 19 Jun 2006 14:17:33 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JEHXdV072696 for ; Mon, 19 Jun 2006 14:17:33 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JEHX46072693 for perforce@freebsd.org; Mon, 19 Jun 2006 14:17:33 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 19 Jun 2006 14:17:33 GMT Message-Id: <200606191417.k5JEHX46072693@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 99602 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 14:17:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=99602 Change 99602 by rdivacky@rdivacky_witten on 2006/06/19 14:16:47 Add the DUMMY() macros for every recently added syscall. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_dummy.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#3 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_dummy.c#2 (text+ko) ==== @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#3 (text+ko) ==== @@ -68,6 +68,62 @@ DUMMY(pivot_root); DUMMY(mincore); DUMMY(fadvise64); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ From owner-p4-projects@FreeBSD.ORG Mon Jun 19 14:55:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3661816A47C; Mon, 19 Jun 2006 14:55:20 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F409C16A47A for ; Mon, 19 Jun 2006 14:55:19 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C4C284484E for ; Mon, 19 Jun 2006 14:55:19 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JEtJgX074137 for ; Mon, 19 Jun 2006 14:55:19 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JEtJ7r074134 for perforce@freebsd.org; Mon, 19 Jun 2006 14:55:19 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 14:55:19 GMT Message-Id: <200606191455.k5JEtJ7r074134@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99603 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 14:55:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=99603 Change 99603 by piso@piso_newluxor on 2006/06/19 14:54:34 Convert amd64 to use MI interrupt filter code too. Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#2 (text+ko) ==== @@ -170,7 +170,6 @@ { struct thread *td; struct intr_event *ie; - struct intr_handler *ih; int error, vector, thread; td = curthread; @@ -219,20 +218,8 @@ td->td_intr_nesting_level++; thread = 0; critical_enter(); - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if (!(ih->ih_flags & IH_FAST)) { - thread = 1; - continue; - } - CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_handler, ih->ih_argument == NULL ? frame : - ih->ih_argument, ih->ih_name); - if (ih->ih_argument == NULL) - ih->ih_handler(frame); - else - ih->ih_handler(ih->ih_argument); - } - + thread = intr_filter_loop(ie, frame); + /* * If there are any threaded handlers that need to run, * mask the source as well as sending it an EOI. Otherwise, From owner-p4-projects@FreeBSD.ORG Mon Jun 19 14:56:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 67F0516A47C; Mon, 19 Jun 2006 14:56:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 46C6F16A474 for ; Mon, 19 Jun 2006 14:56:22 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 70DE644868 for ; Mon, 19 Jun 2006 14:56:21 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JEuLSi074210 for ; Mon, 19 Jun 2006 14:56:21 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JEuLMK074207 for perforce@freebsd.org; Mon, 19 Jun 2006 14:56:21 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 14:56:21 GMT Message-Id: <200606191456.k5JEuLMK074207@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99604 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 14:56:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=99604 Change 99604 by piso@piso_newluxor on 2006/06/19 14:56:17 Spacing. Affected files ... .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#4 edit Differences ... ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#4 (text+ko) ==== @@ -213,6 +213,7 @@ thread = 0; critical_enter(); thread = intr_filter_loop(ie, frame); + /* * If there are any threaded handlers that need to run, * mask the source as well as sending it an EOI. Otherwise, From owner-p4-projects@FreeBSD.ORG Mon Jun 19 15:02:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6197016A4B3; Mon, 19 Jun 2006 15:02:30 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 20E2416A4A6 for ; Mon, 19 Jun 2006 15:02:30 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DCBD74485C for ; Mon, 19 Jun 2006 15:02:29 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JF2Tnk074482 for ; Mon, 19 Jun 2006 15:02:29 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JF2TuZ074479 for perforce@freebsd.org; Mon, 19 Jun 2006 15:02:29 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 15:02:29 GMT Message-Id: <200606191502.k5JF2TuZ074479@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99606 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 15:02:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=99606 Change 99606 by piso@piso_newluxor on 2006/06/19 15:01:50 Convert sparc64 to use MI interrupt filter code too. Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#3 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#3 (text+ko) ==== @@ -235,7 +235,6 @@ { struct intr_vector *iv; struct intr_event *ie; - struct intr_handler *ih; int error = 0, thread; iv = cookie; @@ -246,17 +245,7 @@ } /* Execute fast interrupt handlers directly. */ - thread = 0; - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if (!(ih->ih_flags & IH_FAST)) { - thread = 1; - continue; - } - MPASS(ih->ih_flags & IH_FAST && ih->ih_argument != NULL); - CTR3(KTR_INTR, "%s: executing handler %p(%p)", __func__, - ih->ih_handler, ih->ih_argument); - ih->ih_handler(ih->ih_argument); - } + thread = intr_filter_loop(ie, NULL); /* Schedule a heavyweight interrupt process. */ if (thread) From owner-p4-projects@FreeBSD.ORG Mon Jun 19 15:06:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0452E16A47D; Mon, 19 Jun 2006 15:06:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D4ADD16A47A for ; Mon, 19 Jun 2006 15:06:35 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 634FC4485D for ; Mon, 19 Jun 2006 15:06:35 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JF6ZKv075912 for ; Mon, 19 Jun 2006 15:06:35 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JF6ZKs075909 for perforce@freebsd.org; Mon, 19 Jun 2006 15:06:35 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 15:06:35 GMT Message-Id: <200606191506.k5JF6ZKs075909@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99607 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 15:06:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=99607 Change 99607 by piso@piso_newluxor on 2006/06/19 15:06:22 Convert powerpc to use MI interrupt filter code. Affected files ... .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#3 edit Differences ... ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#3 (text+ko) ==== @@ -224,7 +224,6 @@ { struct ppc_intr_handler *ppc_ih = &intr_handlers[irq]; struct intr_event *ie = ppc_ih->ih_event; - struct intr_handler *ih; int error, thread; if (ie == NULL) { @@ -237,15 +236,7 @@ critical_enter(); /* Execute fast interrupt handlers directly. */ thread = 0; - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if (!(ih->ih_flags & IH_FAST)) { - thread = 1; - continue; - } - CTR3(KTR_INTR, "%s: executing handler %p(%p)", __func__, - ih->ih_handler, ih->ih_argument); - ih->ih_handler(ih->ih_argument); - } + thread = intr_filter_loop(ie, NULL); critical_exit(); /* Schedule a heavyweight interrupt process. */ From owner-p4-projects@FreeBSD.ORG Mon Jun 19 15:17:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8355A16A517; Mon, 19 Jun 2006 15:17:01 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D75C16A4AB for ; Mon, 19 Jun 2006 15:17:01 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 59B6F43E02 for ; Mon, 19 Jun 2006 15:16:50 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JFGm4N076365 for ; Mon, 19 Jun 2006 15:16:48 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JFGmmt076362 for perforce@freebsd.org; Mon, 19 Jun 2006 15:16:48 GMT (envelope-from piso@freebsd.org) Date: Mon, 19 Jun 2006 15:16:48 GMT Message-Id: <200606191516.k5JFGmmt076362@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99608 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 15:17:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=99608 Change 99608 by piso@piso_newluxor on 2006/06/19 15:15:53 Convert ia64 to use MI interrupt filter code, and while here mark frame parameter as unused: even if intr_filter_loop() accepts an optional trapframe parameter, it's not used in ia64 so try to avoid any future problems marking it as unused. Affected files ... .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#2 (text+ko) ==== @@ -347,11 +347,10 @@ } void -ia64_dispatch_intr(void *frame, unsigned long vector) +ia64_dispatch_intr(void *frame __unused, unsigned long vector) { struct ia64_intr *i; struct intr_event *ie; /* our interrupt event */ - struct intr_handler *ih; int error, thread; /* @@ -380,15 +379,7 @@ */ thread = 0; critical_enter(); - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if (!(ih->ih_flags & IH_FAST)) { - thread = 1; - continue; - } - CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_handler, ih->ih_argument, ih->ih_name); - ih->ih_handler(ih->ih_argument); - } + thread = intr_filter_loop(ie, NULL); critical_exit(); if (thread) { From owner-p4-projects@FreeBSD.ORG Mon Jun 19 16:20:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2004616A50D; Mon, 19 Jun 2006 16:20:45 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D92F516A4D7 for ; Mon, 19 Jun 2006 16:20:44 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8E6A643D53 for ; Mon, 19 Jun 2006 16:20:44 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JGKiHN079958 for ; Mon, 19 Jun 2006 16:20:44 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JGKh3O079954 for perforce@freebsd.org; Mon, 19 Jun 2006 16:20:43 GMT (envelope-from bushman@freebsd.org) Date: Mon, 19 Jun 2006 16:20:43 GMT Message-Id: <200606191620.k5JGKh3O079954@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99617 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 16:20:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=99617 Change 99617 by bushman@bushman_nss_ldap_cached on 2006/06/19 16:19:46 Nss-modules code deleted from libc sources (only "cache" source is left untouched). All nsdispatch(3) calls modified to use only "cache" source or dynamically linked nss-modules. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/gen/getgrent.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/gen/getpwent.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/gethostnamadr.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getnetnamadr.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getproto.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getprotoent.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getprotoname.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getservent.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/netdb_private.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/rpc/getrpcent.c#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/Makefile#4 (text+ko) ==== @@ -14,6 +14,8 @@ # libmd must be built before libatm, libopie, libradius, and libtacplus. # libncurses must be built before libdialog, libedit and libreadline. # libnetgraph must be built before libbsnmp/modules/snmp_netgraph. +# libnssutil must be built before nss_files/nss_dns/nss_nis/nss_compat +# libnss_files must be built before libnss_compat # libopie must be built before libpam. # libradius must be built before libpam. # librpcsvc must be built before libpam. @@ -25,7 +27,7 @@ # Otherwise, the SUBDIR list should be in alphabetical order. SUBDIR= ${_csu} libbsm libcom_err libcrypt libkvm msun libmd libncurses \ - nss_files nss_dns nss_icmp ${_nss_nis}\ + libnssutil nss_files nss_compat nss_dns nss_icmp ${_nss_nis}\ libnetgraph libradius librpcsvc libsbuf libtacplus libutil \ ${_libypclnt} libalias libarchive ${_libatm} \ libbegemot ${_libbluetooth} libbsnmp libbz2 libc ${_libc_r} \ ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/gen/getgrent.c#3 (text+ko) ==== @@ -35,16 +35,8 @@ #include "namespace.h" #include -#ifdef YP -#include -#include -#include -#endif #include #include -#ifdef HESIOD -#include -#endif #include #include #include @@ -64,9 +56,6 @@ enum constants { GRP_STORAGE_INITIAL = 1 << 10, /* 1 KByte */ GRP_STORAGE_MAX = 1 << 20, /* 1 MByte */ - SETGRENT = 1, - ENDGRENT = 2, - HESIOD_NAME_MAX = 256, }; static const ns_src defaultsrc[] = { @@ -74,13 +63,6 @@ { NULL, 0 } }; -int __gr_match_entry(const char *, size_t, enum nss_lookup_type, - const char *, gid_t); -int __gr_parse_entry(char *, size_t, struct group *, char *, size_t, - int *); - -static int is_comment_line(const char *, size_t); - union key { const char *name; gid_t gid; @@ -94,55 +76,6 @@ static int wrap_getgrent_r(union key, struct group *, char *, size_t, struct group **); -struct files_state { - FILE *fp; - int stayopen; -}; -static void files_endstate(void *); -NSS_TLS_HANDLING(files); -static int files_setgrent(void *, void *, va_list); -static int files_group(void *, void *, va_list); - - -#ifdef HESIOD -struct dns_state { - long counter; -}; -static void dns_endstate(void *); -NSS_TLS_HANDLING(dns); -static int dns_setgrent(void *, void *, va_list); -static int dns_group(void *, void *, va_list); -#endif - - -#ifdef YP -struct nis_state { - char domain[MAXHOSTNAMELEN]; - int done; - char *key; - int keylen; -}; -static void nis_endstate(void *); -NSS_TLS_HANDLING(nis); -static int nis_setgrent(void *, void *, va_list); -static int nis_group(void *, void *, va_list); -#endif - -struct compat_state { - FILE *fp; - int stayopen; - char *name; - enum _compat { - COMPAT_MODE_OFF = 0, - COMPAT_MODE_ALL, - COMPAT_MODE_NAME - } compat; -}; -static void compat_endstate(void *); -NSS_TLS_HANDLING(compat); -static int compat_setgrent(void *, void *, va_list); -static int compat_group(void *, void *, va_list); - #ifdef NS_CACHING static int grp_id_func(char *, size_t *, va_list, void *); static int grp_marshal_func(char *, size_t *, void *, va_list, void *); @@ -373,14 +306,6 @@ #endif static const ns_dtab dtab[] = { - { NSSRC_FILES, files_setgrent, (void *)SETGRENT }, -#ifdef HESIOD - { NSSRC_DNS, dns_setgrent, (void *)SETGRENT }, -#endif -#ifdef YP - { NSSRC_NIS, nis_setgrent, (void *)SETGRENT }, -#endif - { NSSRC_COMPAT, compat_setgrent, (void *)SETGRENT }, #ifdef NS_CACHING NS_CACHE_CB(&cache_info) #endif @@ -401,14 +326,6 @@ #endif static const ns_dtab dtab[] = { - { NSSRC_FILES, files_setgrent, (void *)SETGRENT }, -#ifdef HESIOD - { NSSRC_DNS, dns_setgrent, (void *)SETGRENT }, -#endif -#ifdef YP - { NSSRC_NIS, nis_setgrent, (void *)SETGRENT }, -#endif - { NSSRC_COMPAT, compat_setgrent, (void *)SETGRENT }, #ifdef NS_CACHING NS_CACHE_CB(&cache_info) #endif @@ -430,14 +347,6 @@ #endif static const ns_dtab dtab[] = { - { NSSRC_FILES, files_setgrent, (void *)ENDGRENT }, -#ifdef HESIOD - { NSSRC_DNS, dns_setgrent, (void *)ENDGRENT }, -#endif -#ifdef YP - { NSSRC_NIS, nis_setgrent, (void *)ENDGRENT }, -#endif - { NSSRC_COMPAT, compat_setgrent, (void *)ENDGRENT }, #ifdef NS_CACHING NS_CACHE_CB(&cache_info) #endif @@ -458,14 +367,6 @@ #endif static const ns_dtab dtab[] = { - { NSSRC_FILES, files_group, (void *)nss_lt_all }, -#ifdef HESIOD - { NSSRC_DNS, dns_group, (void *)nss_lt_all }, -#endif -#ifdef YP - { NSSRC_NIS, nis_group, (void *)nss_lt_all }, -#endif - { NSSRC_COMPAT, compat_group, (void *)nss_lt_all }, #ifdef NS_CACHING NS_CACHE_CB(&cache_info) #endif @@ -496,14 +397,6 @@ #endif static const ns_dtab dtab[] = { - { NSSRC_FILES, files_group, (void *)nss_lt_name }, -#ifdef HESIOD - { NSSRC_DNS, dns_group, (void *)nss_lt_name }, -#endif -#ifdef YP - { NSSRC_NIS, nis_group, (void *)nss_lt_name }, -#endif - { NSSRC_COMPAT, compat_group, (void *)nss_lt_name }, #ifdef NS_CACHING NS_CACHE_CB(&cache_info) #endif @@ -534,14 +427,6 @@ #endif static const ns_dtab dtab[] = { - { NSSRC_FILES, files_group, (void *)nss_lt_id }, -#ifdef HESIOD - { NSSRC_DNS, dns_group, (void *)nss_lt_id }, -#endif -#ifdef YP - { NSSRC_NIS, nis_group, (void *)nss_lt_id }, -#endif - { NSSRC_COMPAT, compat_group, (void *)nss_lt_id }, #ifdef NS_CACHING NS_CACHE_CB(&cache_info) #endif @@ -650,787 +535,3 @@ key.gid = 0; /* not used */ return (getgr(wrap_getgrent_r, key)); } - - -static int -is_comment_line(const char *s, size_t n) -{ - const char *eom; - - eom = &s[n]; - - for (; s < eom; s++) - if (*s == '#' || !isspace((unsigned char)*s)) - break; - return (*s == '#' || s == eom); -} - - -/* - * files backend - */ -static void -files_endstate(void *p) -{ - - if (p == NULL) - return; - if (((struct files_state *)p)->fp != NULL) - fclose(((struct files_state *)p)->fp); - free(p); -} - - -static int -files_setgrent(void *retval, void *mdata, va_list ap) -{ - struct files_state *st; - int rv, stayopen; - - rv = files_getstate(&st); - if (rv != 0) - return (NS_UNAVAIL); - switch ((enum constants)mdata) { - case SETGRENT: - stayopen = va_arg(ap, int); - if (st->fp != NULL) - rewind(st->fp); - else if (stayopen) - st->fp = fopen(_PATH_GROUP, "r"); - break; - case ENDGRENT: - if (st->fp != NULL) { - fclose(st->fp); - st->fp = NULL; - } - break; - default: - break; - } - return (NS_UNAVAIL); -} - - -static int -files_group(void *retval, void *mdata, va_list ap) -{ - struct files_state *st; - enum nss_lookup_type how; - const char *name, *line; - struct group *grp; - gid_t gid; - char *buffer; - size_t bufsize, linesize; - off_t pos; - int rv, stayopen, *errnop; - - name = NULL; - gid = (gid_t)-1; - how = (enum nss_lookup_type)mdata; - switch (how) { - case nss_lt_name: - name = va_arg(ap, const char *); - break; - case nss_lt_id: - gid = va_arg(ap, gid_t); - break; - case nss_lt_all: - break; - default: - return (NS_NOTFOUND); - } - grp = va_arg(ap, struct group *); - buffer = va_arg(ap, char *); - bufsize = va_arg(ap, size_t); - errnop = va_arg(ap, int *); - *errnop = files_getstate(&st); - if (*errnop != 0) - return (NS_UNAVAIL); - if (st->fp == NULL && - ((st->fp = fopen(_PATH_GROUP, "r")) == NULL)) { - *errnop = errno; - return (NS_UNAVAIL); - } - if (how == nss_lt_all) - stayopen = 1; - else { - rewind(st->fp); - stayopen = st->stayopen; - } - rv = NS_NOTFOUND; - pos = ftello(st->fp); - while ((line = fgetln(st->fp, &linesize)) != NULL) { - if (line[linesize-1] == '\n') - linesize--; - rv = __gr_match_entry(line, linesize, how, name, gid); - if (rv != NS_SUCCESS) - continue; - /* We need room at least for the line, a string NUL - * terminator, alignment padding, and one (char *) - * pointer for the member list terminator. - */ - if (bufsize <= linesize + _ALIGNBYTES + sizeof(char *)) { - fseeko(st->fp, pos, SEEK_SET); - *errnop = ERANGE; - rv = NS_RETURN; - break; - } - pos = ftello(st->fp); - memcpy(buffer, line, linesize); - buffer[linesize] = '\0'; - rv = __gr_parse_entry(buffer, linesize, grp, - &buffer[linesize + 1], bufsize - linesize - 1, errnop); - if (rv & NS_TERMINATE) - break; - } - if (!stayopen && st->fp != NULL) { - fclose(st->fp); - st->fp = NULL; - } - if (rv == NS_SUCCESS && retval != NULL) - *(struct group **)retval = grp; - return (rv); -} - - -#ifdef HESIOD -/* - * dns backend - */ -static void -dns_endstate(void *p) -{ - - free(p); -} - - -static int -dns_setgrent(void *retval, void *cb_data, va_list ap) -{ - struct dns_state *st; - int rv; - - rv = dns_getstate(&st); - if (rv != 0) - return (NS_UNAVAIL); - st->counter = 0; - return (NS_UNAVAIL); -} - - -static int -dns_group(void *retval, void *mdata, va_list ap) -{ - char buf[HESIOD_NAME_MAX]; - struct dns_state *st; - struct group *grp; - const char *name, *label; - void *ctx; - char *buffer, **hes; - size_t bufsize, adjsize, linesize; - gid_t gid; - enum nss_lookup_type how; - int rv, *errnop; - - ctx = NULL; - hes = NULL; - name = NULL; - gid = (gid_t)-1; - how = (enum nss_lookup_type)mdata; - switch (how) { - case nss_lt_name: - name = va_arg(ap, const char *); - break; - case nss_lt_id: - gid = va_arg(ap, gid_t); - break; - case nss_lt_all: - break; - } - grp = va_arg(ap, struct group *); - buffer = va_arg(ap, char *); - bufsize = va_arg(ap, size_t); - errnop = va_arg(ap, int *); - *errnop = dns_getstate(&st); - if (*errnop != 0) - return (NS_UNAVAIL); - if (hesiod_init(&ctx) != 0) { - *errnop = errno; - rv = NS_UNAVAIL; - goto fin; - } - do { - rv = NS_NOTFOUND; - switch (how) { - case nss_lt_name: - label = name; - break; - case nss_lt_id: - if (snprintf(buf, sizeof(buf), "%lu", - (unsigned long)gid) >= sizeof(buf)) - goto fin; - label = buf; - break; - case nss_lt_all: - if (st->counter < 0) - goto fin; - if (snprintf(buf, sizeof(buf), "group-%ld", - st->counter++) >= sizeof(buf)) - goto fin; - label = buf; - break; - } - hes = hesiod_resolve(ctx, label, - how == nss_lt_id ? "gid" : "group"); - if ((how == nss_lt_id && hes == NULL && - (hes = hesiod_resolve(ctx, buf, "group")) == NULL) || - hes == NULL) { - if (how == nss_lt_all) - st->counter = -1; - if (errno != ENOENT) - *errnop = errno; - goto fin; - } - rv = __gr_match_entry(hes[0], strlen(hes[0]), how, name, gid); - if (rv != NS_SUCCESS) { - hesiod_free_list(ctx, hes); - hes = NULL; - continue; - } - /* We need room at least for the line, a string NUL - * terminator, alignment padding, and one (char *) - * pointer for the member list terminator. - */ - adjsize = bufsize - _ALIGNBYTES - sizeof(char *); - linesize = strlcpy(buffer, hes[0], adjsize); - if (linesize >= adjsize) { - *errnop = ERANGE; - rv = NS_RETURN; - goto fin; - } - hesiod_free_list(ctx, hes); - hes = NULL; - rv = __gr_parse_entry(buffer, linesize, grp, - &buffer[linesize + 1], bufsize - linesize - 1, errnop); - } while (how == nss_lt_all && !(rv & NS_TERMINATE)); -fin: - if (hes != NULL) - hesiod_free_list(ctx, hes); - if (ctx != NULL) - hesiod_end(ctx); - if (rv == NS_SUCCESS && retval != NULL) - *(struct group **)retval = grp; - return (rv); -} -#endif /* HESIOD */ - - -#ifdef YP -/* - * nis backend - */ -static void -nis_endstate(void *p) -{ - - if (p == NULL) - return; - free(((struct nis_state *)p)->key); - free(p); -} - - -static int -nis_setgrent(void *retval, void *cb_data, va_list ap) -{ - struct nis_state *st; - int rv; - - rv = nis_getstate(&st); - if (rv != 0) - return (NS_UNAVAIL); - st->done = 0; - free(st->key); - st->key = NULL; - return (NS_UNAVAIL); -} - - -static int -nis_group(void *retval, void *mdata, va_list ap) -{ - char *map; - struct nis_state *st; - struct group *grp; - const char *name; - char *buffer, *key, *result; - size_t bufsize; - gid_t gid; - enum nss_lookup_type how; - int *errnop, keylen, resultlen, rv; - - name = NULL; - gid = (gid_t)-1; - how = (enum nss_lookup_type)mdata; - switch (how) { - case nss_lt_name: - name = va_arg(ap, const char *); - map = "group.byname"; - break; - case nss_lt_id: - gid = va_arg(ap, gid_t); - map = "group.bygid"; - break; - case nss_lt_all: - map = "group.byname"; - break; - } - grp = va_arg(ap, struct group *); - buffer = va_arg(ap, char *); - bufsize = va_arg(ap, size_t); - errnop = va_arg(ap, int *); - *errnop = nis_getstate(&st); - if (*errnop != 0) - return (NS_UNAVAIL); - if (st->domain[0] == '\0') { - if (getdomainname(st->domain, sizeof(st->domain)) != 0) { - *errnop = errno; - return (NS_UNAVAIL); - } - } - result = NULL; - do { - rv = NS_NOTFOUND; - switch (how) { - case nss_lt_name: - if (strlcpy(buffer, name, bufsize) >= bufsize) - goto erange; - break; - case nss_lt_id: - if (snprintf(buffer, bufsize, "%lu", - (unsigned long)gid) >= bufsize) - goto erange; - break; - case nss_lt_all: - if (st->done) - goto fin; - break; - } - result = NULL; - if (how == nss_lt_all) { - if (st->key == NULL) - rv = yp_first(st->domain, map, &st->key, - &st->keylen, &result, &resultlen); - else { - key = st->key; - keylen = st->keylen; - st->key = NULL; - rv = yp_next(st->domain, map, key, keylen, - &st->key, &st->keylen, &result, - &resultlen); - free(key); - } - if (rv != 0) { - free(result); - free(st->key); - st->key = NULL; - if (rv == YPERR_NOMORE) { - st->done = 1; - rv = NS_NOTFOUND; - } else - rv = NS_UNAVAIL; - goto fin; - } - } else { - rv = yp_match(st->domain, map, buffer, strlen(buffer), - &result, &resultlen); - if (rv == YPERR_KEY) { - rv = NS_NOTFOUND; - continue; - } else if (rv != 0) { - free(result); - rv = NS_UNAVAIL; - continue; - } - } - /* We need room at least for the line, a string NUL - * terminator, alignment padding, and one (char *) - * pointer for the member list terminator. - */ - if (resultlen >= bufsize - _ALIGNBYTES - sizeof(char *)) - goto erange; - memcpy(buffer, result, resultlen); - buffer[resultlen] = '\0'; - free(result); - rv = __gr_match_entry(buffer, resultlen, how, name, gid); - if (rv == NS_SUCCESS) - rv = __gr_parse_entry(buffer, resultlen, grp, - &buffer[resultlen+1], bufsize - resultlen - 1, - errnop); - } while (how == nss_lt_all && !(rv & NS_TERMINATE)); -fin: - if (rv == NS_SUCCESS && retval != NULL) - *(struct group **)retval = grp; - return (rv); -erange: - *errnop = ERANGE; - return (NS_RETURN); -} -#endif /* YP */ - - - -/* - * compat backend - */ -static void -compat_endstate(void *p) -{ - struct compat_state *st; - - if (p == NULL) - return; - st = (struct compat_state *)p; - free(st->name); - if (st->fp != NULL) - fclose(st->fp); - free(p); -} - - -static int -compat_setgrent(void *retval, void *mdata, va_list ap) -{ - static const ns_src compatsrc[] = { -#ifdef YP - { NSSRC_NIS, NS_SUCCESS }, -#endif - { NULL, 0 } - }; - ns_dtab dtab[] = { -#ifdef HESIOD - { NSSRC_DNS, dns_setgrent, NULL }, -#endif -#ifdef YP - { NSSRC_NIS, nis_setgrent, NULL }, -#endif - { NULL, NULL, NULL } - }; - struct compat_state *st; - int rv, stayopen; - -#define set_setent(x, y) do { \ - int i; \ - \ - for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ - x[i].mdata = (void *)y; \ -} while (0) - - rv = compat_getstate(&st); - if (rv != 0) - return (NS_UNAVAIL); - switch ((enum constants)mdata) { - case SETGRENT: - stayopen = va_arg(ap, int); - if (st->fp != NULL) - rewind(st->fp); - else if (stayopen) - st->fp = fopen(_PATH_GROUP, "r"); - set_setent(dtab, mdata); - (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", - compatsrc, 0); - break; - case ENDGRENT: - if (st->fp != NULL) { - fclose(st->fp); - st->fp = NULL; - } - set_setent(dtab, mdata); - (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", - compatsrc, 0); - break; - default: - break; - } - st->compat = COMPAT_MODE_OFF; - free(st->name); - st->name = NULL; - return (NS_UNAVAIL); -#undef set_setent -} - - -static int -compat_group(void *retval, void *mdata, va_list ap) -{ - static const ns_src compatsrc[] = { -#ifdef YP - { NSSRC_NIS, NS_SUCCESS }, -#endif - { NULL, 0 } - }; - ns_dtab dtab[] = { -#ifdef YP - { NSSRC_NIS, nis_group, NULL }, -#endif -#ifdef HESIOD - { NSSRC_DNS, dns_group, NULL }, -#endif - { NULL, NULL, NULL } - }; - struct compat_state *st; - enum nss_lookup_type how; - const char *name, *line; - struct group *grp; - gid_t gid; - char *buffer, *p; - void *discard; - size_t bufsize, linesize; - off_t pos; - int rv, stayopen, *errnop; - -#define set_lookup_type(x, y) do { \ - int i; \ - \ - for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ - x[i].mdata = (void *)y; \ -} while (0) - - name = NULL; - gid = (gid_t)-1; - how = (enum nss_lookup_type)mdata; - switch (how) { - case nss_lt_name: - name = va_arg(ap, const char *); - break; - case nss_lt_id: - gid = va_arg(ap, gid_t); - break; - case nss_lt_all: - break; - default: - return (NS_NOTFOUND); - } - grp = va_arg(ap, struct group *); - buffer = va_arg(ap, char *); - bufsize = va_arg(ap, size_t); - errnop = va_arg(ap, int *); - *errnop = compat_getstate(&st); - if (*errnop != 0) - return (NS_UNAVAIL); - if (st->fp == NULL && - ((st->fp = fopen(_PATH_GROUP, "r")) == NULL)) { - *errnop = errno; - rv = NS_UNAVAIL; - goto fin; - } - if (how == nss_lt_all) - stayopen = 1; - else { - rewind(st->fp); - stayopen = st->stayopen; - } -docompat: - switch (st->compat) { - case COMPAT_MODE_ALL: - set_lookup_type(dtab, how); - switch (how) { - case nss_lt_all: - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, - "getgrent_r", compatsrc, grp, buffer, bufsize, - errnop); - break; - case nss_lt_id: - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, - "getgrgid_r", compatsrc, gid, grp, buffer, bufsize, - errnop); - break; - case nss_lt_name: - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, - "getgrnam_r", compatsrc, name, grp, buffer, - bufsize, errnop); - break; - } - if (rv & NS_TERMINATE) - goto fin; - st->compat = COMPAT_MODE_OFF; - break; - case COMPAT_MODE_NAME: - set_lookup_type(dtab, nss_lt_name); - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, - "getgrnam_r", compatsrc, st->name, grp, buffer, bufsize, - errnop); - switch (rv) { - case NS_SUCCESS: - switch (how) { - case nss_lt_name: - if (strcmp(name, grp->gr_name) != 0) - rv = NS_NOTFOUND; - break; - case nss_lt_id: - if (gid != grp->gr_gid) - rv = NS_NOTFOUND; - break; - default: - break; - } - break; - case NS_RETURN: - goto fin; - default: - break; - } - free(st->name); - st->name = NULL; - st->compat = COMPAT_MODE_OFF; - if (rv == NS_SUCCESS) - goto fin; - break; - default: - break; - } - rv = NS_NOTFOUND; - pos = ftello(st->fp); - while ((line = fgetln(st->fp, &linesize)) != NULL) { - if (line[linesize-1] == '\n') - linesize--; - if (linesize > 2 && line[0] == '+') { - p = memchr(&line[1], ':', linesize); - if (p == NULL || p == &line[1]) - st->compat = COMPAT_MODE_ALL; - else { - st->name = malloc(p - line); - if (st->name == NULL) { - syslog(LOG_ERR, - "getgrent memory allocation failure"); - *errnop = ENOMEM; - rv = NS_UNAVAIL; - break; - } - memcpy(st->name, &line[1], p - line - 1); - st->name[p - line - 1] = '\0'; - st->compat = COMPAT_MODE_NAME; - } - goto docompat; - } - rv = __gr_match_entry(line, linesize, how, name, gid); - if (rv != NS_SUCCESS) - continue; - /* We need room at least for the line, a string NUL - * terminator, alignment padding, and one (char *) - * pointer for the member list terminator. - */ - if (bufsize <= linesize + _ALIGNBYTES + sizeof(char *)) { - fseeko(st->fp, pos, SEEK_SET); - *errnop = ERANGE; - rv = NS_RETURN; - break; - } - pos = ftello(st->fp); - memcpy(buffer, line, linesize); - buffer[linesize] = '\0'; - rv = __gr_parse_entry(buffer, linesize, grp, - &buffer[linesize + 1], bufsize - linesize - 1, errnop); - if (rv & NS_TERMINATE) - break; - } -fin: - if (!stayopen && st->fp != NULL) { - fclose(st->fp); - st->fp = NULL; - } - if (rv == NS_SUCCESS && retval != NULL) - *(struct group **)retval = grp; - return (rv); -#undef set_lookup_type -} - - -/* - * common group line matching and parsing - */ -int -__gr_match_entry(const char *line, size_t linesize, enum nss_lookup_type how, - const char *name, gid_t gid) -{ - size_t namesize; - const char *p, *eol; - char *q; - unsigned long n; - int i, needed; - - if (linesize == 0 || is_comment_line(line, linesize)) - return (NS_NOTFOUND); - switch (how) { - case nss_lt_name: needed = 1; break; - case nss_lt_id: needed = 2; break; - default: needed = 2; break; - } - eol = &line[linesize]; - for (p = line, i = 0; i < needed && p < eol; p++) - if (*p == ':') - i++; - if (i < needed) - return (NS_NOTFOUND); - switch (how) { - case nss_lt_name: - namesize = strlen(name); - if (namesize + 1 == (size_t)(p - line) && - memcmp(line, name, namesize) == 0) - return (NS_SUCCESS); - break; - case nss_lt_id: - n = strtoul(p, &q, 10); - if (q < eol && *q == ':' && gid == (gid_t)n) - return (NS_SUCCESS); - break; - case nss_lt_all: - return (NS_SUCCESS); - default: - break; - } - return (NS_NOTFOUND); -} - - -int -__gr_parse_entry(char *line, size_t linesize, struct group *grp, char *membuf, - size_t membufsize, int *errnop) -{ - char *s_gid, *s_mem, *p, **members; - unsigned long n; - int maxmembers; - - memset(grp, 0, sizeof(*grp)); - members = (char **)_ALIGN(membuf); - membufsize -= (char *)members - membuf; - maxmembers = membufsize / sizeof(*members); - if (maxmembers <= 0 || - (grp->gr_name = strsep(&line, ":")) == NULL || - grp->gr_name[0] == '\0' || - (grp->gr_passwd = strsep(&line, ":")) == NULL || - (s_gid = strsep(&line, ":")) == NULL || - s_gid[0] == '\0') - return (NS_NOTFOUND); - s_mem = line; - n = strtoul(s_gid, &s_gid, 10); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jun 19 17:24:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D9B8716A4A0; Mon, 19 Jun 2006 17:24:49 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B515F16A492 for ; Mon, 19 Jun 2006 17:24:49 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3860243D7C for ; Mon, 19 Jun 2006 17:24:47 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JHOkgB091991 for ; Mon, 19 Jun 2006 17:24:46 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JHOkmI091988 for perforce@freebsd.org; Mon, 19 Jun 2006 17:24:46 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 19 Jun 2006 17:24:46 GMT Message-Id: <200606191724.k5JHOkmI091988@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 99624 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 17:24:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=99624 Change 99624 by hselasky@hselasky_mini_itx on 2006/06/19 17:24:16 Multiply the default transfer length by the "frames" field if it is non zero, if the "bufsize" field is zero, in the "usbd_config" structure. This is useful when setting up isochronous transfers. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.c#5 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#5 (text+ko) ==== @@ -3456,6 +3456,9 @@ if (xfer->length == 0) { xfer->length = xfer->max_packet_size; + if (setup->frames) { + xfer->length *= setup->frames; + } } /* wMaxPacketSize is validated by "usbd_fill_iface_data()" */ ==== //depot/projects/usb/src/sys/dev/usb/ohci.c#5 (text+ko) ==== @@ -2479,6 +2479,9 @@ if (xfer->length == 0) { xfer->length = xfer->max_packet_size; + if (setup->frames) { + xfer->length *= setup->frames; + } } /* wMaxPacketSize is validated by "usbd_fill_iface_data()" */ ==== //depot/projects/usb/src/sys/dev/usb/uhci.c#5 (text+ko) ==== @@ -2750,6 +2750,9 @@ if (xfer->length == 0) { xfer->length = xfer->max_packet_size; + if (setup->frames) { + xfer->length *= setup->frames; + } } /* wMaxPacketSize is validated by "usbd_fill_iface_data()" */ From owner-p4-projects@FreeBSD.ORG Mon Jun 19 17:37:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A038816A4CC; Mon, 19 Jun 2006 17:37:04 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7D2C916A4CA for ; Mon, 19 Jun 2006 17:37:04 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF49E43D48 for ; Mon, 19 Jun 2006 17:37:03 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JHb3EA092550 for ; Mon, 19 Jun 2006 17:37:03 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JHb3vC092546 for perforce@freebsd.org; Mon, 19 Jun 2006 17:37:03 GMT (envelope-from bushman@freebsd.org) Date: Mon, 19 Jun 2006 17:37:03 GMT Message-Id: <200606191737.k5JHb3vC092546@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99627 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 17:37:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=99627 Change 99627 by bushman@bushman_nss_ldap_cached on 2006/06/19 17:36:35 Nss-modules development is almost done. nss_compat module added. It uses dirty hack by including files_serv.c file from the nss_files module to avoid massive code duplication. nss_icmp builds normally - not tested at all, though. libnssutil extended with __copy_netent, __rpcent_unpack and __servent_unpack. __copy_hostent() is also in libnssutil, but gethostby***() functions uses its own local copy at the moment. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/rpcunpack.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/rpcunpack.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_rpc.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_rpc.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_serv.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_rpc.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_rpc.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_serv.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_serv.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.h#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#3 (text+ko) ==== @@ -1,7 +1,9 @@ # $FreeBSD$ LIB= nssutil -SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c +SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c rpcunpack.c\ + servunpack.c +INTERNAL= NO_PIC= .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#2 (text+ko) ==== @@ -1,26 +1,18 @@ -/*- - * Copyright (c) 1994, Garrett Wollman +/* + * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 1998-1999 by Internet Software Consortium. * - * 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. + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. * - * THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * 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. + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT + * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.h#2 (text+ko) ==== @@ -1,4 +1,3 @@ - /*- * Copyright (c) 2006 Michael Bushkov * All rights reserved. ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#3 (text+ko) ==== @@ -1,14 +1,28 @@ # $FreeBSD$ -LIB= nss_dns -SHLIB_MAJOR= 1 -SHLIBDIR?= /lib -PROG= nss_dns +.include + +SHLIB_MAJOR= 1 +SHLIB_NAME= nss_dns.so.${SHLIB_MAJOR} +SHLIBDIR?= /lib + +SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c\ + dns_group.c dns_net.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ - -I${.CURDIR}/../libc/net -SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c + -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil +CFLAGS+=-DINET6 + +.if ${MK_NIS} != "no" +CFLAGS+= -DYP +.endif +.if ${MK_HESIOD} != "no" +CFLAGS+= -DHESIOD +.endif + +LDADD+= -lnssutil +LDFLAGS+= -L${.CURDIR}/../libnssutil + INCS= - MAN= .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#2 (text+ko) ==== @@ -37,7 +37,9 @@ #include #include #include -#include /* we don't need to #ifdef it anymore */ +#ifdef HESIOD +#include +#endif #include #include #include @@ -50,6 +52,9 @@ #include "nss_tls.h" #include "gr_scan.h" +#ifdef HESIOD +#define HESIOD_NAME_MAX 256 + struct dns_state { long counter; }; @@ -62,11 +67,13 @@ free(p); } +#endif int __dns_setgrent(void *retval, void *cb_data, va_list ap) { +#ifdef HESIOD struct dns_state *st; int rv; @@ -74,6 +81,7 @@ if (rv != 0) return (NS_UNAVAIL); st->counter = 0; +#endif return (NS_UNAVAIL); } @@ -81,6 +89,7 @@ int __dns_group(void *retval, void *mdata, va_list ap) { +#ifdef HESIOD char buf[HESIOD_NAME_MAX]; struct dns_state *st; struct group *grp; @@ -181,4 +190,7 @@ if (rv == NS_SUCCESS && retval != NULL) *(struct group **)retval = grp; return (rv); +#else + return (NS_UNAVAIL); +#endif } ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#5 (text+ko) ==== @@ -78,8 +78,77 @@ #include "netdb_private.h" #include "nss_dns.h" +#define SPRINTF(x) ((size_t)sprintf x) + +static const char AskedForGot[] = + "gethostby*.gethostanswer: asked for \"%s\", got \"%s\""; + +#ifdef RESOLVSORT +static void addrsort(char **, int, res_state); +#endif + +#ifdef DEBUG +static void dprintf(char *, int, res_state) __printflike(1, 0); +#endif + +#define MAXPACKET (64*1024) + +typedef union { + HEADER hdr; + u_char buf[MAXPACKET]; +} querybuf; + +typedef union { + int32_t al; + char ac; +} align; + +int _dns_ttl_; + +#ifdef DEBUG +static void +dprintf(msg, num, res) + char *msg; + int num; + res_state res; +{ + if (res->options & RES_DEBUG) { + int save = errno; + + printf(msg, num); + errno = save; + } +} +#else +# define dprintf(msg, num, res) /*nada*/ +#endif + +#define BOUNDED_INCR(x) \ + do { \ + cp += x; \ + if (cp > eom) { \ + RES_SET_H_ERRNO(statp, NO_RECOVERY); \ + return (-1); \ + } \ + } while (0) + +#define BOUNDS_CHECK(ptr, count) \ + do { \ + if ((ptr) + (count) > eom) { \ + RES_SET_H_ERRNO(statp, NO_RECOVERY); \ + return (-1); \ + } \ + } while (0) + NETDB_THREAD_ALLOC(hostent) NETDB_THREAD_ALLOC(dns_hostent_data) + +static int __copy_hostent(struct hostent *, struct hostent *, char *, + size_t); +static void dns_hostent_data_free(void *); +static int gethostanswer(const querybuf *, int, const char *, int, + struct hostent *, struct dns_hostent_data *, res_state); +static void hostent_free(void *); static void hostent_free(void *ptr) @@ -160,68 +229,6 @@ return (0); } -#define SPRINTF(x) ((size_t)sprintf x) - -static const char AskedForGot[] = - "gethostby*.gethostanswer: asked for \"%s\", got \"%s\""; - -#ifdef RESOLVSORT -static void addrsort(char **, int, res_state); -#endif - -#ifdef DEBUG -static void dprintf(char *, int, res_state) __printflike(1, 0); -#endif - -#define MAXPACKET (64*1024) - -typedef union { - HEADER hdr; - u_char buf[MAXPACKET]; -} querybuf; - -typedef union { - int32_t al; - char ac; -} align; - -int _dns_ttl_; - -#ifdef DEBUG -static void -dprintf(msg, num, res) - char *msg; - int num; - res_state res; -{ - if (res->options & RES_DEBUG) { - int save = errno; - - printf(msg, num); - errno = save; - } -} -#else -# define dprintf(msg, num, res) /*nada*/ -#endif - -#define BOUNDED_INCR(x) \ - do { \ - cp += x; \ - if (cp > eom) { \ - RES_SET_H_ERRNO(statp, NO_RECOVERY); \ - return (-1); \ - } \ - } while (0) - -#define BOUNDS_CHECK(ptr, count) \ - do { \ - if ((ptr) + (count) > eom) { \ - RES_SET_H_ERRNO(statp, NO_RECOVERY); \ - return (-1); \ - } \ - } while (0) - static int gethostanswer(const querybuf *answer, int anslen, const char *qname, int qtype, struct hostent *he, struct dns_hostent_data *hed, res_state statp) @@ -817,24 +824,38 @@ } #endif -void -__dns_sethostent(int stayopen) +/* ARGSUSED */ +int +__dns_gethostent_r(void *rval, void *cb_data, va_list ap) +{ + return (NS_UNAVAIL); +} + +int +__dns_sethostent(void *rval, void *cb_data, va_list ap) { res_state statp; + int f; + + f = va_arg(ap, int); statp = __res_state(); if ((statp->options & RES_INIT) == 0 && res_ninit(statp) == -1) return; - if (stayopen) + if (f) statp->options |= RES_STAYOPEN | RES_USEVC; + + return (NS_UNAVAIL); } -void -__dns_endhostent() +int +__dns_endhostent(void *rval, void *cb_data, va_list ap) { res_state statp; statp = __res_state(); statp->options &= ~(RES_STAYOPEN | RES_USEVC); res_nclose(statp); + + return (NS_UNAVAIL); } ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.h#2 (text+ko) ==== @@ -28,5 +28,6 @@ int __dns_gethostbyname2_r(void *rval, void *cb_data, va_list ap); int __dns_gethostbyaddr_r(void *rval, void *cb_data, va_list ap); -void __dns_sethostent(int stayopen); -void __dns_endhostent(); +int __dns_gethostent_r(void *rval, void *cb_data, va_list ap); +int __dns_sethostent(void *rval, void *cb_data, va_list ap); +int __dns_endhostent(void *rval, void *cb_data, va_list ap); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#2 (text+ko) ==== @@ -1,0 +1,496 @@ +/*- + * Copyright (c) 1985, 1988, 1993 + * The Regents of the University of California. 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. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * 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. + * - + * Portions Copyright (c) 1993 by Digital Equipment Corporation. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies, and that + * the name of Digital Equipment Corporation not be used in advertising or + * publicity pertaining to distribution of the document or software without + * specific, written prior permission. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL + * WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT + * CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + * - + * --Copyright-- + */ +/* Portions Copyright (c) 1993 Carlos Leandro and Rui Salgueiro + * Dep. Matematica Universidade de Coimbra, Portugal, Europe + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "netdb_private.h" +#include "nss_dns.h" +#include "reentrant.h" +#include "res_config.h" +#include "copynetent.h" + +#define BYADDR 0 +#define BYNAME 1 + +#define MAXPACKET (64*1024) + +typedef union { + HEADER hdr; + u_char buf[MAXPACKET]; +} querybuf; + +typedef union { + long al; + char ac; +} align; + +NETDB_THREAD_ALLOC(dns_netent_data) + +static void dns_netent_data_free(void *); +static void ipreverse(char *, char *); +static int getnetanswer(querybuf *, int, int, struct netent *, + struct dns_netent_data *, res_state); + +static void +dns_netent_data_free(void *ptr) +{ + struct dns_netent_data *ned = ptr; + + if (ned == NULL) + return; + free(ned); +} + + +/* + * Reverse the order of first four dotted entries of in. + * Out must contain space for at least strlen(in) characters. + * The result does not include any leading 0s of in. + */ +static void +ipreverse(char *in, char *out) +{ + char *pos[4]; + int len[4]; + char *p, *start; + int i = 0; + int leading = 1; + + /* Fill-in element positions and lengths: pos[], len[]. */ + start = p = in; + for (;;) { + if (*p == '.' || *p == '\0') { + /* Leading 0? */ + if (leading && p - start == 1 && *start == '0') + len[i] = 0; + else { + len[i] = p - start; + leading = 0; + } + pos[i] = start; + start = p + 1; + i++; + } + if (i == 4) + break; + if (*p == 0) { + for (; i < 4; i++) { + pos[i] = p; + len[i] = 0; + } + break; + } + p++; + } + + /* Copy the entries in reverse order */ + p = out; + leading = 1; + for (i = 3; i >= 0; i--) { + memcpy(p, pos[i], len[i]); + if (len[i]) + leading = 0; + p += len[i]; + /* Need a . separator? */ + if (!leading && i > 0 && len[i - 1]) + *p++ = '.'; + } + *p = '\0'; +} + +static int +getnetanswer(querybuf *answer, int anslen, int net_i, struct netent *ne, + struct dns_netent_data *ned, res_state statp) +{ + + HEADER *hp; + u_char *cp; + int n; + u_char *eom; + int type, class, ancount, qdcount, haveanswer; + char aux[MAXHOSTNAMELEN]; + char ans[MAXHOSTNAMELEN]; + char *in, *bp, *ep, **ap; + + /* + * find first satisfactory answer + * + * answer --> +------------+ ( MESSAGE ) + * | Header | + * +------------+ + * | Question | the question for the name server + * +------------+ + * | Answer | RRs answering the question + * +------------+ + * | Authority | RRs pointing toward an authority + * | Additional | RRs holding additional information + * +------------+ + */ + eom = answer->buf + anslen; + hp = &answer->hdr; + ancount = ntohs(hp->ancount); /* #/records in the answer section */ + qdcount = ntohs(hp->qdcount); /* #/entries in the question section */ + bp = ned->netbuf; + ep = ned->netbuf + sizeof(ned->netbuf); + cp = answer->buf + HFIXEDSZ; + if (!qdcount) { + if (hp->aa) + RES_SET_H_ERRNO(statp, HOST_NOT_FOUND); + else + RES_SET_H_ERRNO(statp, TRY_AGAIN); + return (-1); + } + while (qdcount-- > 0) + cp += __dn_skipname(cp, eom) + QFIXEDSZ; + ap = ned->net_aliases; + *ap = NULL; + ne->n_aliases = ned->net_aliases; + haveanswer = 0; + while (--ancount >= 0 && cp < eom) { + n = dn_expand(answer->buf, eom, cp, bp, ep - bp); + if ((n < 0) || !res_dnok(bp)) + break; + cp += n; + ans[0] = '\0'; + (void)strncpy(&ans[0], bp, sizeof(ans) - 1); + ans[sizeof(ans) - 1] = '\0'; + GETSHORT(type, cp); + GETSHORT(class, cp); + cp += INT32SZ; /* TTL */ + GETSHORT(n, cp); + if (class == C_IN && type == T_PTR) { + n = dn_expand(answer->buf, eom, cp, bp, ep - bp); + if ((n < 0) || !res_hnok(bp)) { + cp += n; + return (-1); + } + cp += n; + *ap++ = bp; + n = strlen(bp) + 1; + bp += n; + ne->n_addrtype = (class == C_IN) ? AF_INET : AF_UNSPEC; + haveanswer++; + } + } + if (haveanswer) { + *ap = NULL; + switch (net_i) { + case BYADDR: + ne->n_name = *ne->n_aliases; + ne->n_net = 0L; + break; + case BYNAME: + in = *ne->n_aliases; + n = strlen(ans) + 1; + if (ep - bp < n) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + errno = ENOBUFS; + return (-1); + } + strlcpy(bp, ans, ep - bp); + ne->n_name = bp; + if (strlen(in) + 1 > sizeof(aux)) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + errno = ENOBUFS; + return (-1); + } + ipreverse(in, aux); + ne->n_net = inet_network(aux); + break; + } + ne->n_aliases++; + return (0); + } + RES_SET_H_ERRNO(statp, TRY_AGAIN); + return (-1); +} + +int +__dns_getnetbyaddr_r(void *rval, void *cb_data, va_list ap) +{ + uint32_t net; + int net_type; + char *buffer; + size_t buflen; + int *errnop, *h_errnop; + struct netent *nptr, ne; + struct dns_netent_data *ned; + unsigned int netbr[4]; + int nn, anslen, error; + querybuf *buf; + char qbuf[MAXDNAME]; + uint32_t net2; + res_state statp; + + net = va_arg(ap, uint32_t); + net_type = va_arg(ap, int); + nptr = va_arg(ap, struct netent *); + buffer = va_arg(ap, char *); + buflen = va_arg(ap, size_t); + errnop = va_arg(ap, int *); + h_errnop = va_arg(ap, int *); + + statp = __res_state(); + if ((statp->options & RES_INIT) == 0 && res_ninit(statp) == -1) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } + + if ((ned = __dns_netent_data_init()) == NULL) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } + + *((struct netent **)rval) = NULL; + + if (net_type != AF_INET) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } + + for (nn = 4, net2 = net; net2; net2 >>= 8) + netbr[--nn] = net2 & 0xff; + switch (nn) { + case 3: /* Class A */ + sprintf(qbuf, "0.0.0.%u.in-addr.arpa", netbr[3]); + break; + case 2: /* Class B */ + sprintf(qbuf, "0.0.%u.%u.in-addr.arpa", netbr[3], netbr[2]); + break; + case 1: /* Class C */ + sprintf(qbuf, "0.%u.%u.%u.in-addr.arpa", netbr[3], netbr[2], + netbr[1]); + break; + case 0: /* Class D - E */ + sprintf(qbuf, "%u.%u.%u.%u.in-addr.arpa", netbr[3], netbr[2], + netbr[1], netbr[0]); + break; + } + if ((buf = malloc(sizeof(*buf))) == NULL) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_NOTFOUND); + } + anslen = res_nquery(statp, qbuf, C_IN, T_PTR, (u_char *)buf, + sizeof(*buf)); + if (anslen < 0) { + free(buf); +#ifdef DEBUG + if (statp->options & RES_DEBUG) + printf("res_nsearch failed\n"); +#endif + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } else if (anslen > sizeof(*buf)) { + free(buf); +#ifdef DEBUG + if (statp->options & RES_DEBUG) + printf("res_nsearch static buffer too small\n"); +#endif + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } + error = getnetanswer(buf, anslen, BYADDR, &ne, ned, statp); + free(buf); + if (error == 0) { + /* Strip trailing zeros */ + while ((net & 0xff) == 0 && net != 0) + net >>= 8; + ne.n_net = net; + if (__copy_netent(&ne, nptr, buffer, buflen) != 0) { + *h_errnop = statp->res_h_errno; + return (NS_NOTFOUND); + } + *((struct netent **)rval) = nptr; + return (NS_SUCCESS); + } + *h_errnop = statp->res_h_errno; + return (NS_NOTFOUND); +} + +int +__dns_getnetbyname_r(void *rval, void *cb_data, va_list ap) +{ + const char *net; + char *buffer; + size_t buflen; + int *errnop, *h_errnop; + struct netent *nptr, ne; + struct dns_netent_data *ned; + int anslen, error; + querybuf *buf; + char qbuf[MAXDNAME]; + res_state statp; + + net = va_arg(ap, const char *); + nptr = va_arg(ap, struct netent *); + buffer = va_arg(ap, char *); + buflen = va_arg(ap, size_t); + errnop = va_arg(ap, int *); + h_errnop = va_arg(ap, int *); + + statp = __res_state(); + if ((statp->options & RES_INIT) == 0 && res_ninit(statp) == -1) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } + if ((ned = __dns_netent_data_init()) == NULL) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_UNAVAIL); + } + if ((buf = malloc(sizeof(*buf))) == NULL) { + RES_SET_H_ERRNO(statp, NETDB_INTERNAL); + *h_errnop = statp->res_h_errno; + return (NS_NOTFOUND); + } + + *((struct netent **)rval) = NULL; + + strncpy(qbuf, net, sizeof(qbuf) - 1); + qbuf[sizeof(qbuf) - 1] = '\0'; + anslen = res_nsearch(statp, qbuf, C_IN, T_PTR, (u_char *)buf, + sizeof(*buf)); + if (anslen < 0) { + free(buf); +#ifdef DEBUG + if (statp->options & RES_DEBUG) + printf("res_nsearch failed\n"); +#endif + return (NS_UNAVAIL); + } else if (anslen > sizeof(*buf)) { + free(buf); +#ifdef DEBUG + if (statp->options & RES_DEBUG) + printf("res_search static buffer too small\n"); +#endif + return (NS_UNAVAIL); + } + error = getnetanswer(buf, anslen, BYNAME, &ne, ned, statp); + free(buf); + if (error != 0) { + *h_errnop = statp->res_h_errno; + return (NS_NOTFOUND); + } + if (__copy_netent(&ne, nptr, buffer, buflen) != 0) { + *h_errnop = statp->res_h_errno; + return (NS_NOTFOUND); + } + *((struct netent **)rval) = nptr; + return (NS_SUCCESS); +} + +/* ARGSUSED */ +int +__dns_getnetent_r(void *rval, void *cb_data, va_list ap) +{ + return (NS_UNAVAIL); +} + +int +__dns_setnetent(void *rval, void *cb_data, va_list ap) +{ + res_state statp; + int f; + + f = va_arg(ap, int); + + statp = __res_state(); + if ((statp->options & RES_INIT) == 0 && res_ninit(statp) == -1) + return; + if (f) + statp->options |= RES_STAYOPEN | RES_USEVC; + + return (NS_UNAVAIL); +} + +int +__dns_endnetent(void *rval, void *cb_data, va_list ap) +{ + res_state statp; + + statp = __res_state(); + statp->options &= ~(RES_STAYOPEN | RES_USEVC); + res_nclose(statp); + + return (NS_UNAVAIL); +} ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.h#2 (text+ko) ==== @@ -1,0 +1,33 @@ +/*- + * Copyright (c) 2006 Michael Bushkov + * 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$ + */ + +int __dns_getnetbyname_r(void *rval, void *cb_data, va_list ap); +int __dns_getnetbyaddr_r(void *rval, void *cb_data, va_list ap); +int __dns_getnetent_r(void *rval, void *cb_data, va_list ap); +int __dns_setnetent(void *rval, void *cb_data, va_list ap); +int __dns_endnetent(void *rval, void *cb_data, va_list ap); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#2 (text+ko) ==== @@ -38,7 +38,9 @@ #include #include #include -#include /* there's no need to #ifdef it anymore */ +#ifdef HESIOD +#include +#endif #include #include #include @@ -56,24 +58,25 @@ #define HESIOD_NAME_MAX 256 +#ifdef HESIOD struct dns_state { long counter; }; static void dns_endstate(void *); NSS_TLS_HANDLING(dns); -static int dns_setpwent(void *, void *, va_list); -static int dns_passwd(void *, void *, va_list); static void dns_endstate(void *p) { free(p); } +#endif int __dns_setpwent(void *retval, void *mdata, va_list ap) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jun 19 17:56:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 29AE116A47C; Mon, 19 Jun 2006 17:56:29 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F02C016A47A for ; Mon, 19 Jun 2006 17:56:28 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D3B643D48 for ; Mon, 19 Jun 2006 17:56:28 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JHuS5g093475 for ; Mon, 19 Jun 2006 17:56:28 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JHuSMl093472 for perforce@freebsd.org; Mon, 19 Jun 2006 17:56:28 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 19 Jun 2006 17:56:28 GMT Message-Id: <200606191756.k5JHuSMl093472@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 99629 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 17:56:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=99629 Change 99629 by ryanb@ryanb_yuki on 2006/06/19 17:55:33 Forgot to actually define the "don't include twice" macro. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.h#3 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.h#3 (text+ko) ==== @@ -1,4 +1,5 @@ #ifndef _PCMDSP_H_ +#define _PCMDSP_H_ /*- * Copyright (c) 1999 Cameron Grant * All rights reserved. From owner-p4-projects@FreeBSD.ORG Mon Jun 19 17:57:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E856216A47C; Mon, 19 Jun 2006 17:57:30 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AEC2E16A479 for ; Mon, 19 Jun 2006 17:57:30 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C91243D45 for ; Mon, 19 Jun 2006 17:57:30 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JHvUZ8093504 for ; Mon, 19 Jun 2006 17:57:30 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JHvTe2093501 for perforce@freebsd.org; Mon, 19 Jun 2006 17:57:29 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 19 Jun 2006 17:57:29 GMT Message-Id: <200606191757.k5JHvTe2093501@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 99630 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 17:57:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=99630 Change 99630 by ryanb@ryanb_yuki on 2006/06/19 17:57:16 Changed \tag Doxygen references to @tag. Slightly changed new OSS structures to better match style(9); unsure of spacing at the end of oss_audioinfo, but that can wait for now. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#5 edit .. //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#5 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#5 (text+ko) ==== @@ -1284,36 +1284,36 @@ ai->dev = t_unit; strlcpy(ai->name, device_get_desc(t_dev), sizeof(ai->name)); /** - * @todo \c busy requires examining all channels + * @todo @c busy requires examining all channels * * @note - * \c pid - OSSv4 docs: "Value of -1 means that this information is + * @c pid - OSSv4 docs: "Value of -1 means that this information is * not available or the device is currently not open." Since * multiple processes may open a device, I'm going with the * former. * @par - * \c cmd - Same caveat as \c pid. + * @c cmd - Same caveat as @c pid. */ ai->pid = -1; /** - * @todo \c caps - requires going directly to sound card driver - * @todo \c iformats - same todo as \c caps - * @todo \c oformats - same todo as \c caps + * @todo @c caps - requires going directly to sound card driver + * @todo @c iformats - same todo as @c caps + * @todo @c oformats - same todo as @c caps * * @note - * \c magic - OSSv4 docs: "Reserved for internal use by OSS." + * @c magic - OSSv4 docs: "Reserved for internal use by OSS." * * @par - * \c card_number - OSSv4 docs: "Number of the sound card where this + * @c card_number - OSSv4 docs: "Number of the sound card where this * device belongs or -1 if this information is not available. * Applications should normally not use this field for any * purpose." */ ai->card_number = -1; /** - * @todo \c song_name - depends first on SNDCTL_[GS]ETSONG - * @todo \c label - depends on SNDCTL_[GS]ETLABEL - * @todo \c port_number - device unit number? + * @todo @c song_name - depends first on SNDCTL_[GS]ETSONG + * @todo @c label - depends on SNDCTL_[GS]ETLABEL + * @todo @c port_number - device unit number? */ ai->port_number = -1; ai->mixer_dev = (d->mixer_dev != NULL) ? PCMUNIT(d->mixer_dev) : -1; @@ -1322,19 +1322,19 @@ ai->enabled = device_is_attached(t_dev) ? 1 : 0; /** * @note - * \c flags - OSSv4 docs: "Reserved for future use." + * @c flags - OSSv4 docs: "Reserved for future use." * - * @todo \c min_rate - same todo as \c caps - * @todo \c max_rate - same todo as \c caps - * @todo \c nrates - same todo as \c caps - * @todo \c rates - same todo as \c caps - * @todo \c min_channels - same todo as \c caps - * @todo \c max_channels - same todo as \c caps + * @todo @c min_rate - same todo as @c caps + * @todo @c max_rate - same todo as @c caps + * @todo @c nrates - same todo as @c caps + * @todo @c rates - same todo as @c caps + * @todo @c min_channels - same todo as @c caps + * @todo @c max_channels - same todo as @c caps * * @note - * \c binding - OSSv4 docs: "Reserved for future use." + * @c binding - OSSv4 docs: "Reserved for future use." * - * @todo \c handle - haven't decided how to generate this yet; bus, + * @todo @c handle - haven't decided how to generate this yet; bus, * vendor, device IDs? */ ==== //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#5 (text+ko) ==== @@ -1479,22 +1479,25 @@ */ typedef struct oss_sysinfo { - char product[32]; /* For example OSS/Free, OSS/Linux or OSS/Solaris */ - char version[32]; /* For example 4.0a */ - int versionnum; /* See OSS_GETVERSION */ - char options[128]; /* Reserved */ + char product[32]; /* For example OSS/Free, OSS/Linux or + OSS/Solaris */ + char version[32]; /* For example 4.0a */ + int versionnum; /* See OSS_GETVERSION */ + char options[128]; /* Reserved */ - int numaudios; /* # of audio/dsp devices */ - int openedaudio[8]; /* Bit mask telling which audio devices are busy */ + int numaudios; /* # of audio/dsp devices */ + int openedaudio[8]; /* Bit mask telling which audio devices + are busy */ - int numsynths; /* # of availavle synth devices */ - int nummidis; /* # of available MIDI ports */ - int numtimers; /* # of available timer devices */ - int nummixers; /* # of mixer devices */ + int numsynths; /* # of availavle synth devices */ + int nummidis; /* # of available MIDI ports */ + int numtimers; /* # of available timer devices */ + int nummixers; /* # of mixer devices */ - int openedmidi[8]; /* Bit mask telling which midi devices are busy */ - int numcards; /* Number of sound cards in the system */ - int filler[241]; /* For future expansion (set to -1) */ + int openedmidi[8]; /* Bit mask telling which midi devices + are busy */ + int numcards; /* Number of sound cards in the system */ + int filler[241]; /* For future expansion (set to -1) */ } oss_sysinfo; #define SNDCTL_SYSINFO _IOR ('X', 1, oss_sysinfo) @@ -1512,32 +1515,39 @@ */ typedef struct oss_audioinfo { - int dev; /* Audio device number */ - char name[64]; - int busy; /* 0, OPEN_READ, OPEN_WRITE or OPEN_READWRITE */ - int pid; - int caps; /* DSP_CAP_INPUT, DSP_CAP_OUTPUT */ - int iformats, oformats; - int magic; /* Reserved for internal use */ - char cmd[64]; /* Command using the device (if known) */ - int card_number; - int port_number; - int mixer_dev; - int real_device; /* Obsolete field. Replaced by devnode */ - int enabled; /* 1=enabled, 0=device not ready at this moment */ - int flags; /* For internal use only - no practical meaning */ - int min_rate, max_rate; /* Sample rate limits */ - int min_channels, max_channels; /* Number of channels supported */ - int binding; /* DSP_BIND_FRONT, etc. 0 means undefined */ - int rate_source; - char handle[32]; - #define MAX_SAMPLE_RATES 20 /* Cannot be changed */ - unsigned int nrates, rates[MAX_SAMPLE_RATES]; /* Please read the manual before using these */ - oss_longname_t song_name; /* Song name (if given) */ - oss_label_t label; /* Device label (if given) */ - int latency; /* In usecs, -1=unknown */ - oss_devnode_t devnode; /* Device special file name (inside /dev) */ - int filler[186]; + int dev; /* Audio device number */ + char name[64]; + int busy; /* 0, OPEN_READ, OPEN_WRITE or OPEN_READWRITE */ + int pid; + int caps; /* DSP_CAP_INPUT, DSP_CAP_OUTPUT */ + int iformats; + int oformats; + int magic; /* Reserved for internal use */ + char cmd[64]; /* Command using the device (if known) */ + int card_number; + int port_number; + int mixer_dev; + int real_device; /* Obsolete field. Replaced by devnode */ + int enabled; /* 1=enabled, 0=device not ready at this + moment */ + int flags; /* For internal use only - no practical + meaning */ + int min_rate; /* Sample rate limits */ + int max_rate; + int min_channels; /* Number of channels supported */ + int max_channels; + int binding; /* DSP_BIND_FRONT, etc. 0 means undefined */ + int rate_source; + char handle[32]; + #define MAX_SAMPLE_RATES 20 /* Cannot be changed */ + unsigned int nrates; + unsigned int rates[MAX_SAMPLE_RATES]; /* Please read the manual before using these */ + oss_longname_t song_name; /* Song name (if given) */ + oss_label_t label; /* Device label (if given) */ + int latency; /* In usecs, -1=unknown */ + oss_devnode_t devnode; /* Device special file name (inside + /dev) */ + int filler[186]; } oss_audioinfo; #define SNDCTL_AUDIOINFO _IOWR('X', 7, oss_audioinfo) From owner-p4-projects@FreeBSD.ORG Mon Jun 19 18:45:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6B0E516A47E; Mon, 19 Jun 2006 18:45:29 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 42C2316A479 for ; Mon, 19 Jun 2006 18:45:29 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F63F43D46 for ; Mon, 19 Jun 2006 18:45:29 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JIjSYt097115 for ; Mon, 19 Jun 2006 18:45:28 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JIjSwd097112 for perforce@freebsd.org; Mon, 19 Jun 2006 18:45:28 GMT (envelope-from swhitman@FreeBSD.org) Date: Mon, 19 Jun 2006 18:45:28 GMT Message-Id: <200606191845.k5JIjSwd097112@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 99631 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 18:45:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=99631 Change 99631 by swhitman@swhitman_joecatmini on 2006/06/19 18:45:23 Got Makefile to compile code, but does not link properly. Added the original Makefile (Makefile2). Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/Makefile#2 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/Makefile2#1 add .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#2 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/parser.c#2 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/Makefile#2 (text+ko) ==== @@ -16,9 +16,11 @@ NO_MAN = ha -CIFLAGS += -I. -I${.CURDIR} +CIFLAGS += -I. -I${.CURDIR} -I${.CURDIR}/../src/include -I${.CURDIR}/../src/sys/ -I${.CURDIR}/../src/sys/sys/ -I${.CURDIR}/../src/sys/machine/ +#CLIBS += -L../src/lib/ CFLAGS += ${CIFLAGS} - +CFLAGS += ${CLIBS} +CFLAGS += -nostdinc CFLAGS += -g .include ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#2 (text+ko) ==== @@ -11,12 +11,12 @@ #include #include -#include "k.h" +#include /* Printf Render for Token -------------------------------------------*/ static int -printf_arginfo_token(const struct printf_info /* *pi */ __unused, size_t n, int *argt) +printf_arginfo_token(const struct printf_info *pi __unused, size_t n, int *argt) { assert(n >= 1); ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/parser.c#2 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Mon Jun 19 19:28:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 52DE016A47C; Mon, 19 Jun 2006 19:28:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 13CD716A474 for ; Mon, 19 Jun 2006 19:28:22 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF70243D62 for ; Mon, 19 Jun 2006 19:28:21 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JJSLuk000286 for ; Mon, 19 Jun 2006 19:28:21 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JJSLwa000283 for perforce@freebsd.org; Mon, 19 Jun 2006 19:28:21 GMT (envelope-from bushman@freebsd.org) Date: Mon, 19 Jun 2006 19:28:21 GMT Message-Id: <200606191928.k5JJSLwa000283@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99633 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 19:28:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=99633 Change 99633 by bushman@bushman_nss_ldap_cached on 2006/06/19 19:27:21 Small similar fixes in the nss-modules' Makefiles (replacing .CURDIR with .OBJDIR in LDFLAGS). Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#4 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#4 (text+ko) ==== @@ -20,7 +20,7 @@ .endif LDADD+= -lnssutil -LDFLAGS+= -L${.CURDIR}/../libnssutil +LDFLAGS+= -L${.OBJDIR}/../libnssutil INCS= MAN= ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#4 (text+ko) ==== @@ -21,7 +21,7 @@ .endif LDADD+= -lnssutil -LDFLAGS+= -L${.CURDIR}/../libnssutil +LDFLAGS+= -L${.OBJDIR}/../libnssutil INCS= MAN= ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#3 (text+ko) ==== @@ -13,14 +13,13 @@ .if ${MK_NIS} != "no" CFLAGS+= -DYP -.include "${.CURDIR}/yp/Makefile.inc" .endif .if ${MK_HESIOD} != "no" CFLAGS+= -DHESIOD .endif LDADD+= -lnssutil -LDFLAGS+= -L${.CURDIR}/../libnssutil +LDFLAGS+= -L${.OBJDIR/../libnssutil INCS= MAN= ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#4 (text+ko) ==== @@ -20,7 +20,7 @@ .endif LDADD+= -lnssutil -LDFLAGS+= -L${.CURDIR}/../libnssutil +LDFLAGS+= -L${.OBJDIR}/../libnssutil INCS= MAN= From owner-p4-projects@FreeBSD.ORG Mon Jun 19 20:40:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF40316A511; Mon, 19 Jun 2006 20:40:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8BE3A16A507 for ; Mon, 19 Jun 2006 20:40:24 +0000 (UTC) (envelope-from Patrick.LeBlanc@sparta.com) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 685EA43DB0 for ; Mon, 19 Jun 2006 20:39:58 +0000 (GMT) (envelope-from Patrick.LeBlanc@sparta.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JKdobR006857 for ; Mon, 19 Jun 2006 20:39:50 GMT (envelope-from Patrick.LeBlanc@sparta.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JKdoem006854 for perforce@freebsd.org; Mon, 19 Jun 2006 20:39:50 GMT (envelope-from Patrick.LeBlanc@sparta.com) Date: Mon, 19 Jun 2006 20:39:50 GMT Message-Id: <200606192039.k5JKdoem006854@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Patrick.LeBlanc@sparta.com using -f From: pleblanc To: Perforce Change Reviews Cc: Subject: PERFORCE change 99637 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 20:40:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=99637 Change 99637 by pleblanc@pleblanc_p4 on 2006/06/19 20:39:16 Fix a check for installed SEBSD policy sources. Affected files ... .. //depot/projects/trustedbsd/sebsd/Makefile#19 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/Makefile#19 (text+ko) ==== @@ -311,7 +311,7 @@ .if exists(${.CURDIR}/contrib/sebsd) @echo "Installing SEBSD policy" -.if !exists(${DESTDIR}/etc/security/sebsd/targeted/policy) +.if !exists(${DESTDIR}/etc/security/sebsd/targeted/src/policy) (cd ${.CURDIR}/contrib/sebsd/refpolicy; gmake install-src) .else @echo "Existing SEBSD targeted policy sources found." From owner-p4-projects@FreeBSD.ORG Mon Jun 19 21:37:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 36C2F16A481; Mon, 19 Jun 2006 21:37:02 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EE23A16A47C for ; Mon, 19 Jun 2006 21:37:01 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7653F43D48 for ; Mon, 19 Jun 2006 21:37:01 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JLb1C5019175 for ; Mon, 19 Jun 2006 21:37:01 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JLb1qg019172 for perforce@freebsd.org; Mon, 19 Jun 2006 21:37:01 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 19 Jun 2006 21:37:01 GMT Message-Id: <200606192137.k5JLb1qg019172@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 99640 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 21:37:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=99640 Change 99640 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/19 21:36:23 add per-cpu runqueues Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_idle.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_switch.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_sleepqueue.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/runq.h#4 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/sched.h#4 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_idle.c#6 (text+ko) ==== @@ -94,36 +94,29 @@ static void idle_proc(void *dummy) { - struct proc *p; - struct thread *td; + int i; #ifdef SMP cpumask_t mycpu; #endif - td = curthread; - p = td->td_proc; #ifdef SMP mycpu = PCPU_GET(cpumask); atomic_set_int(&idle_cpus_mask, mycpu); #endif + i = 0; for (;;) { mtx_assert(&Giant, MA_NOTOWNED); - while (sched_runnable() == 0) + while (sched_runnable() == 0 && (i++%10 != 0)) cpu_idle(); #ifdef SMP atomic_clear_int(&idle_cpus_mask, mycpu); #endif - spinlock_enter(); /* avoid preemption after choosethread */ - if ((td = choosethread()) != curthread) { - mtx_lock_spin(&sched_lock); - spinlock_exit(); - sched_switch(curthread, td, SW_VOL); - mtx_unlock_spin(&sched_lock); - } else - spinlock_exit(); + mtx_lock_spin(&sched_lock); + mi_switch(SW_VOL, NULL); + mtx_unlock_spin(&sched_lock); #ifdef SMP atomic_set_int(&idle_cpus_mask, mycpu); #endif ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_switch.c#8 (text+ko) ==== @@ -47,11 +47,7 @@ #if defined(SMP) && defined(SCHED_4BSD) #include #endif -#ifndef SMP -#error "use SMP!" -#define runq_lock(a, b) -#define runq_unlock(a, b) -#endif + /* Uncomment this to enable logging of critical_enter/exit. */ #if 0 @@ -80,6 +76,7 @@ #else static int kern_sched_preemption = 0; #endif + SYSCTL_INT(_kern_sched, OID_AUTO, preemption, CTLFLAG_RD, &kern_sched_preemption, 0, "Kernel preemption enabled"); @@ -139,7 +136,10 @@ adjustrunqueue(struct thread *td, int newpri) { struct kse *ke; + int cpu, single_cpu; + struct runq *rq; + single_cpu = 0; mtx_assert(&sched_lock, MA_OWNED); KASSERT((TD_ON_RUNQ(td)), ("adjustrunqueue: Bad state on run queue")); @@ -147,15 +147,42 @@ CTR1(KTR_RUNQ, "adjustrunqueue: td%p", td); /* We only care about the kse in the run queue. */ td->td_priority = newpri; + if (ke->ke_rqindex != (newpri / RQ_PPQ)) { + if (td->td_pinned != 0) { + cpu = td->td_lastcpu; + rq = &runq_pcpu[cpu]; + single_cpu = 1; + CTR3(KTR_RUNQ, + "setrunqueue: Put kse:%p(td:%p) on cpu%d runq", ke, td, cpu); + } else if ((ke)->ke_flags & KEF_BOUND) { + /* Find CPU from bound runq */ + rq = ke->ke_runq; + cpu = ke->ke_runq - &runq_pcpu[0]; + single_cpu = 1; + CTR3(KTR_RUNQ, + "setrunqueue: Put kse:%p(td:%p) on cpu%d runq", ke, td, cpu); + } else { + CTR2(KTR_RUNQ, + "setrunqueue: adding kse:%p (td:%p) to gbl runq", ke, td); + cpu = NOCPU; + rq = &runq_global[td->td_lastcpu]; + } + KASSERT(rq == ke->ke_runq, ("runq mismatch")); sched_rem(td); - sched_add(td, SRQ_BORING); + sched_add(td, SRQ_BORING, cpu, single_cpu); } } void setrunqueue(struct thread *td, int flags) { + struct runq *rq; + struct kse *ke; + int cpu, single_cpu; + + ke = td->td_kse; + single_cpu = 0; CTR2(KTR_RUNQ, "setrunqueue: td:%p pid:%d", td, td->td_proc->p_pid); @@ -167,7 +194,30 @@ ("setrunqueue: trying to run inhibitted thread")); KASSERT((TD_CAN_RUN(td) || TD_IS_RUNNING(td)), ("setrunqueue: bad thread state")); - sched_add(td, flags); + + if (td->td_pinned != 0) { + cpu = td->td_lastcpu; + rq = ke->ke_runq = &runq_pcpu[cpu]; + single_cpu = 1; + CTR3(KTR_RUNQ, + "setrunqueue: Put kse:%p(td:%p) on cpu%d runq", ke, td, cpu); + } else if ((ke)->ke_flags & KEF_BOUND) { + /* Find CPU from bound runq */ + rq = ke->ke_runq; + cpu = ke->ke_runq - &runq_pcpu[0]; + single_cpu = 1; + CTR3(KTR_RUNQ, + "setrunqueue: Put kse:%p(td:%p) on cpu%d runq", ke, td, cpu); + } else { + CTR2(KTR_RUNQ, + "setrunqueue: adding kse:%p (td:%p) to gbl runq", ke, td); + cpu = NOCPU; + rq = ke->ke_runq = &runq_global[td->td_lastcpu]; + } + + mtx_lock_spin(&rq->rq_lock); + sched_add(td, flags, cpu, single_cpu); + mtx_unlock_spin(&rq->rq_lock); } /* @@ -316,8 +366,10 @@ int i; bzero(rq, sizeof *rq); - for (i = 0; i < RQ_NQS; i++) + for (i = 0; i < RQ_NQS; i++) { TAILQ_INIT(&rq->rq_queues[i]); + } + mtx_init(&rq->rq_lock, "runq lock", NULL, MTX_SPIN); } /* @@ -334,7 +386,7 @@ rqb->rqb_bits[RQB_WORD(pri)], rqb->rqb_bits[RQB_WORD(pri)] & ~RQB_BIT(pri), RQB_BIT(pri), RQB_WORD(pri)); - atomic_clear_long(&rqb->rqb_bits[RQB_WORD(pri)], RQB_BIT(pri)); + rqb->rqb_bits[RQB_WORD(pri)] &= ~RQB_BIT(pri); } static __inline int @@ -355,30 +407,11 @@ struct rqbits *rqb; int pri; int i; -#ifdef SMP - u_long lockbits; -#endif + rqb = &rq->rq_status; for (i = 0; i < RQB_LEN; i++) if (rqb->rqb_bits[i]) { pri = RQB_FFS(rqb->rqb_bits[i]) + (i << RQB_L2BPW); -#ifdef SMP - lockbits = rq->rq_lockbits[i]; - if (!atomic_cmpset_acq_long(&rq->rq_lockbits[i], - (lockbits & ~RQB_BIT(pri)), - (lockbits | RQB_BIT(pri)))) - { - i = 0; - continue; - } - if (!runq_isset(rq, pri)) { - atomic_clear_rel_long(&rq->rq_lockbits[RQB_WORD(pri)], - RQB_BIT(pri)); - i = 0; - continue; - } - runq_clrbit(rq, pri); -#endif CTR3(KTR_RUNQ, "runq_findbit: bits=%#x i=%d pri=%d", rqb->rqb_bits[i], i, pri); return (pri); @@ -401,16 +434,15 @@ rqb->rqb_bits[RQB_WORD(pri)], rqb->rqb_bits[RQB_WORD(pri)] | RQB_BIT(pri), RQB_BIT(pri), RQB_WORD(pri)); - /* XXX only works on 64-bit - 32 bit will need a mutex */ - atomic_set_long(&rqb->rqb_bits[RQB_WORD(pri)], RQB_BIT(pri)); + rqb->rqb_bits[RQB_WORD(pri)] |= RQB_BIT(pri); } /* * Add the KSE to the queue specified by its priority, and set the * corresponding status bit. */ -void -runq_add(struct runq *rq, struct kse *ke, int flags) +static void +_runq_add(struct runq *rq, struct kse *ke, int flags) { struct rqhead *rqh; int pri; @@ -420,15 +452,25 @@ rqh = &rq->rq_queues[pri]; CTR5(KTR_RUNQ, "runq_add: td=%p ke=%p pri=%d %d rqh=%p", ke->ke_thread, ke, ke->ke_thread->td_priority, pri, rqh); - runq_lock(ke->ke_runq, ke); if (flags & SRQ_PREEMPTED) TAILQ_INSERT_HEAD(rqh, ke, ke_procq); else TAILQ_INSERT_TAIL(rqh, ke, ke_procq); - runq_unlock(ke->ke_runq, ke); -#ifndef SMP runq_setbit(rq, pri); -#endif +} + +void +runq_add_unlocked(struct runq *rq, struct kse *ke, int flags) +{ + _runq_add(rq, ke, flags); +} + +void +runq_add(struct runq *rq, struct kse *ke, int flags) +{ + mtx_lock_spin(&rq->rq_lock); + _runq_add(rq, ke, flags); + mtx_unlock_spin(&rq->rq_lock); } /* @@ -441,8 +483,8 @@ { struct rqbits *rqb; int i; + rqb = &rq->rq_status; - rqb = &rq->rq_status; for (i = 0; i < RQB_LEN; i++) if (rqb->rqb_bits[i]) { CTR2(KTR_RUNQ, "runq_check: bits=%#x i=%d", @@ -459,30 +501,6 @@ SYSCTL_INT(_kern_sched, OID_AUTO, runq_fuzz, CTLFLAG_RW, &runq_fuzz, 0, ""); #endif -static struct kse * -runq_check_lastcpu(struct rqhead *rqh, int count) -{ - /* - * In the first couple of entries, check if - * there is one for our CPU as a preference. - */ - int cpu = PCPU_GET(cpuid); - struct kse *ke, *ke2; - ke2 = ke = TAILQ_FIRST(rqh); - - while (count-- && ke2) { - if (ke->ke_thread->td_lastcpu == cpu) { - ke = ke2; - break; - } - ke2 = TAILQ_NEXT(ke2, ke_procq); - } - KASSERT(ke != NULL, ("runq_choose: no proc on busy queue")); - CTR2(KTR_RUNQ, - "runq_choose: kse=%p rqh=%p", ke, rqh); - return (ke); -} - /* * Find the highest priority process on the run queue. */ @@ -492,30 +510,24 @@ struct rqhead *rqh; struct kse *ke; int pri; + + ke = NULL; - while ((pri = runq_findbit(rq)) != -1) { + mtx_lock_spin(&rq->rq_lock); + if ((pri = runq_findbit(rq)) != -1) { rqh = &rq->rq_queues[pri]; -#if defined(SMP) && defined(SCHED_4BSD) - /* fuzz == 1 is normal.. 0 or less are ignored */ - if (runq_fuzz > 1) - ke = runq_check_lastcpu(rqh, runq_fuzz); - else -#endif - ke = TAILQ_FIRST(rqh); - if (ke) { - runq_remove_unlocked(rq, ke); - runq_unlock(rq, ke); - } else - panic("bit set but runq empty for bit %d - lockbits=0x%lx availbits=0x%lx", - pri, rq->rq_lockbits[0], rq->rq_status.rqb_bits[0]); + + ke = TAILQ_FIRST(rqh); + runq_remove_unlocked(rq, ke); + KASSERT(ke != NULL, ("runq_choose: no proc on busy queue")); CTR3(KTR_RUNQ, "runq_choose: pri=%d kse=%p rqh=%p", pri, ke, rqh); - return (ke); + } - CTR1(KTR_RUNQ, "runq_choose: idleproc pri=%d", pri); + mtx_unlock_spin(&rq->rq_lock); - return (NULL); + return (ke); } /* @@ -537,20 +549,18 @@ ke->ke_thread, ke, ke->ke_thread->td_priority, pri, rqh); KASSERT(ke != NULL, ("runq_remove: no proc on busy queue")); TAILQ_REMOVE(rqh, ke, ke_procq); -#ifndef SMP if (TAILQ_EMPTY(rqh)) { CTR0(KTR_RUNQ, "runq_remove: empty"); runq_clrbit(rq, pri); } -#endif } void runq_remove(struct runq *rq, struct kse *ke) { - runq_lock(rq, ke); + mtx_lock_spin(&rq->rq_lock); _runq_remove(rq, ke); - runq_unlock(rq, ke); + mtx_unlock_spin(&rq->rq_lock); } void @@ -559,34 +569,6 @@ _runq_remove(rq, ke); } -#ifdef SMP -void -runq_lock(struct runq *rq, struct kse *ke) -{ - int pri; - u_long lockbits; - - pri = ke->ke_rqindex; - do { - lockbits = (rq->rq_lockbits[RQB_WORD(pri)] & ~RQB_BIT(pri)); - } while (!atomic_cmpset_acq_long(&rq->rq_lockbits[RQB_WORD(pri)], lockbits, - (lockbits | RQB_BIT(pri)))); - runq_clrbit(rq, pri); -} - -void -runq_unlock(struct runq *rq, struct kse *ke) -{ - struct rqhead *rqh; - int pri; - - pri = ke->ke_rqindex; - rqh = &rq->rq_queues[pri]; - if (!TAILQ_EMPTY(rqh)) - runq_setbit(rq, pri); - atomic_clear_rel_long(&rq->rq_lockbits[RQB_WORD(pri)], RQB_BIT(pri)); -} -#endif /****** functions that are temporarily here ***********/ #include extern struct mtx kse_zombie_lock; ==== //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#8 (text+ko) ==== @@ -118,6 +118,8 @@ static struct callout roundrobin_callout; static struct thread *sched_choose(void); +static unsigned long choose_cpu; + static void setup_runqs(void); static void roundrobin(void *arg); @@ -144,13 +146,16 @@ /* * Global run queue. */ -static struct runq runq; + #ifdef SMP /* * Per-CPU run queues */ static struct runq runq_pcpu[MAXCPU]; +static struct runq runq_global[MAXCPU]; +#else +static struct runq runq_global[1]; #endif static void @@ -159,11 +164,15 @@ #ifdef SMP int i; - for (i = 0; i < MAXCPU; ++i) + for (i = 0; i < MAXCPU; i++) { runq_init(&runq_pcpu[i]); + runq_init(&runq_global[i]); + } +#else + runq_init(&runq_global[0]); #endif - runq_init(&runq); + } static int @@ -466,6 +475,7 @@ if (td->td_slptime > 1) continue; td->td_estcpu = decay_cpu(loadfac, td->td_estcpu); + resetpriority(td); resetpriority_thread(td); } /* end of thread loop */ @@ -592,9 +602,9 @@ sched_runnable(void) { #ifdef SMP - return runq_check(&runq) + runq_check(&runq_pcpu[curcpu]); + return runq_check(&runq_global[curcpu]) + runq_check(&runq_pcpu[curcpu]); #else - return runq_check(&runq); + return runq_check(&runq_global[0]); #endif } @@ -694,11 +704,20 @@ mtx_assert(&sched_lock, MA_OWNED); if (td->td_priority == prio) return; - if (TD_ON_RUNQ(td)) { - adjustrunqueue(td, prio); + + if (!TD_ON_RUNQ(td)) { + td->td_priority = prio; } else { - td->td_priority = prio; + struct runq *rq; + rq = td->td_kse->ke_runq; + mtx_lock_spin(&td->td_kse->ke_runq->rq_lock); + if (TD_ON_RUNQ(td)) + adjustrunqueue(td, prio); + if (rq != td->td_kse->ke_runq) + panic("runq changed"); + mtx_unlock_spin(&td->td_kse->ke_runq->rq_lock); } + } /* @@ -979,13 +998,11 @@ #endif /* SMP */ void -sched_add(struct thread *td, int flags) +sched_add(struct thread *td, int flags, int cpu, int single_cpu) #ifdef SMP { struct kse *ke; int forwarded = 0; - int cpu; - int single_cpu = 0; ke = td->td_kse; mtx_assert(&sched_lock, MA_OWNED); @@ -998,28 +1015,10 @@ td, td->td_proc->p_comm, td->td_priority, curthread, curthread->td_proc->p_comm); - if (td->td_pinned != 0) { - cpu = td->td_lastcpu; - ke->ke_runq = &runq_pcpu[cpu]; - single_cpu = 1; - CTR3(KTR_RUNQ, - "sched_add: Put kse:%p(td:%p) on cpu%d runq", ke, td, cpu); - } else if ((ke)->ke_flags & KEF_BOUND) { - /* Find CPU from bound runq */ - KASSERT(SKE_RUNQ_PCPU(ke),("sched_add: bound kse not on cpu runq")); - cpu = ke->ke_runq - &runq_pcpu[0]; - single_cpu = 1; - CTR3(KTR_RUNQ, - "sched_add: Put kse:%p(td:%p) on cpu%d runq", ke, td, cpu); - } else { - CTR2(KTR_RUNQ, - "sched_add: adding kse:%p (td:%p) to gbl runq", ke, td); - cpu = NOCPU; - ke->ke_runq = &runq; - } + if (single_cpu && (cpu != curcpu)) { - kick_other_cpu(td->td_priority,cpu); + kick_other_cpu(td->td_priority, cpu); } else { if (!single_cpu) { cpumask_t me = PCPU_GET(cpumask); @@ -1039,7 +1038,7 @@ if ((td->td_proc->p_flag & P_NOLOAD) == 0) sched_load_add(); - runq_add(ke->ke_runq, ke, flags); + runq_add_unlocked(ke->ke_runq, ke, flags); TD_SET_RUNQ(td); } #else /* SMP */ @@ -1056,7 +1055,7 @@ td, td->td_proc->p_comm, td->td_priority, curthread, curthread->td_proc->p_comm); CTR2(KTR_RUNQ, "sched_add: adding kse:%p (td:%p) to runq", ke, td); - ke->ke_runq = &runq; + ke->ke_runq = &runq_global[0]; /* * If we are yielding (on the way out anyhow) @@ -1098,7 +1097,7 @@ if ((td->td_proc->p_flag & P_NOLOAD) == 0) sched_load_rem(); - runq_remove(ke->ke_runq, ke); + runq_remove_unlocked(ke->ke_runq, ke); TD_SET_NOT_ON_RUNQ(td); } @@ -1114,10 +1113,12 @@ struct thread *td = NULL; #ifdef SMP + int i; struct kse *kecpu; + unsigned long pick; - rq = &runq; - kesel = ke = runq_choose(&runq); + rq = &runq_global[curcpu]; + kesel = ke = runq_choose(rq); kecpu = runq_choose(&runq_pcpu[curcpu]); if (ke == NULL || @@ -1129,19 +1130,31 @@ rq = &runq_pcpu[curcpu]; if (ke) runq_add(rq, ke, SRQ_PREEMPTED); - } else { - if (kecpu) - runq_add(rq, kecpu, SRQ_PREEMPTED); + } else if (kecpu) { + runq_add(rq, kecpu, SRQ_PREEMPTED); CTR1(KTR_RUNQ, "choosing kse %p from main runq", ke); } + if (kesel == NULL) { + /* trivial implementation for stealing */ + for (i = 0; i < (mp_ncpus - 1); i++, choose_cpu++) { + pick = choose_cpu%mp_ncpus; + rq = &runq_global[pick]; + if (rq == NULL) + panic("NULL cpu for %ld", pick); + if (runq_check(rq) && + ((kesel = runq_choose(rq)) != NULL)) + break; + } + } + #else - rq = &runq; - kesel = ke = runq_choose(&runq); + rq = &runq_global[0]; + kesel = ke = runq_choose(rq); #endif if (kesel) { td = kesel->ke_thread; TD_SET_NOT_ON_RUNQ(td); - KASSERT(ke->ke_thread->td_proc->p_sflag & PS_INMEM, + KASSERT(td->td_proc->p_sflag & PS_INMEM, ("sched_choose: process swapped out")); } ==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_sleepqueue.c#7 (text+ko) ==== @@ -488,7 +488,6 @@ */ else if (callout_stop(&td->td_slpcallout) == 0) { atomic_set_int(&td->td_flags, TDF_TIMEOUT); - mtx_lock_spin(&sched_lock); TD_SET_SLEEPING(td); mi_switch(SW_INVOL, NULL); } @@ -565,6 +564,7 @@ int rval; MPASS(!(curthread->td_flags & TDF_SINTR)); + mtx_assert(&sched_lock, MA_NOTOWNED); mtx_lock_spin(&sched_lock); sleepq_switch(wchan); rval = sleepq_check_timeout(); ==== //depot/projects/kmacy_sun4v/src/sys/sys/runq.h#4 (text+ko) ==== @@ -59,11 +59,12 @@ */ struct runq { struct rqbits rq_status; - rqb_word_t rq_lockbits[RQB_LEN]; struct rqhead rq_queues[RQ_NQS]; + struct mtx rq_lock; }; void runq_add(struct runq *, struct kse *, int flags); +void runq_add_unlocked(struct runq *, struct kse *, int flags); int runq_check(struct runq *); struct kse *runq_choose(struct runq *); void runq_init(struct runq *); ==== //depot/projects/kmacy_sun4v/src/sys/sys/sched.h#4 (text+ko) ==== @@ -71,7 +71,7 @@ /* * Threads are moved on and off of run queues */ -void sched_add(struct thread *td, int flags); +void sched_add(struct thread *td, int flags, int cpu, int single_cpu); void sched_clock(struct thread *td); void sched_rem(struct thread *td); From owner-p4-projects@FreeBSD.ORG Mon Jun 19 23:30:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C8BF16A481; Mon, 19 Jun 2006 23:30:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4060016A47C for ; Mon, 19 Jun 2006 23:30:24 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7098A43D60 for ; Mon, 19 Jun 2006 23:30:23 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5JNUNaK029901 for ; Mon, 19 Jun 2006 23:30:23 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5JNUMVL029897 for perforce@freebsd.org; Mon, 19 Jun 2006 23:30:22 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 19 Jun 2006 23:30:22 GMT Message-Id: <200606192330.k5JNUMVL029897@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 99646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 23:30:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=99646 Change 99646 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/19 23:29:26 convert pcpu allproc locks to sx to avoid having to fix cases where sx locks are being acquired afterwards add 2 missed unlocks Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 (text+ko) ==== @@ -568,18 +568,18 @@ /* next process */ if (*p == NULL) { *p = LIST_FIRST(&(*pc)->pc_allproc); - PCPU_PROC_LOCK(*pc); + PCPU_PROC_RLOCK(*pc); } else if ((LIST_NEXT(*p, p_list) == NULL) && (SLIST_NEXT(*pc, pc_allcpu) != NULL)) { - PCPU_PROC_UNLOCK(*pc); + PCPU_PROC_RUNLOCK(*pc); *pc = SLIST_NEXT(*pc, pc_allcpu); - PCPU_PROC_LOCK(*pc); + PCPU_PROC_RLOCK(*pc); *p = LIST_FIRST(&(*pc)->pc_allproc); } else { *p = LIST_NEXT(*p, p_list); } /* out of processes: next node */ if (*p == NULL) { - PCPU_PROC_UNLOCK(*pc); + PCPU_PROC_RUNLOCK(*pc); *pn = (*pn)->pn_next; } } ==== //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 (text+ko) ==== @@ -147,14 +147,14 @@ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { - if (p->p_sysent == entry->sysvec) { rval = TRUE; break; } } + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); ==== //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 (text+ko) ==== @@ -539,12 +539,12 @@ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { microuptime(&p->p_stats->p_start); p->p_rux.rux_runtime = 0; } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); PCPU_SET(switchtime, cpu_ticks()); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 (text+ko) ==== @@ -2357,7 +2357,7 @@ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { fdp = fdhold(p); if (fdp == NULL) @@ -2379,7 +2379,7 @@ while (nrele--) vrele(olddp); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); if (rootvnode == olddp) { @@ -2459,7 +2459,7 @@ xf.xf_size = sizeof(xf); sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { if (p->p_state == PRS_NEW) continue; @@ -2496,7 +2496,7 @@ if (error) break; } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); return (error); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 (text+ko) ==== @@ -403,15 +403,10 @@ * Remove proc from allproc queue and pidhash chain. * Place onto zombproc. Unlink from parent's child list. */ - if (p->p_pcpu == NULL) - panic("process: %d has null pcpu pointer", p->p_pid); - if (!mtx_initialized(&(p->p_pcpu->pc_allproc_lock))) - panic("null allproc lock on %d", p->p_pcpu->pc_cpuid); - - PCPU_PROC_LOCK(p->p_pcpu); + PCPU_PROC_WLOCK(p->p_pcpu); LIST_REMOVE(p, p_list); LIST_INSERT_HEAD(&p->p_pcpu->pc_zombproc, p, p_list); - PCPU_PROC_UNLOCK(p->p_pcpu); + PCPU_PROC_WUNLOCK(p->p_pcpu); mtx_lock(&pidhash_lock); LIST_REMOVE(p, p_hash); @@ -770,9 +765,9 @@ * we have an exclusive reference. */ - PCPU_PROC_LOCK(p->p_pcpu); + PCPU_PROC_WLOCK(p->p_pcpu); LIST_REMOVE(p, p_list); /* off zombproc */ - PCPU_PROC_UNLOCK(p->p_pcpu); + PCPU_PROC_WUNLOCK(p->p_pcpu); mtx_lock(&pidhash_lock); LIST_REMOVE(p, p_hash); /* off zombproc */ ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 (text+ko) ==== @@ -371,7 +371,7 @@ * than trypid, so we can avoid checking for a while. */ SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); p2 = LIST_FIRST(&pc->pc_allproc); again: @@ -385,7 +385,7 @@ trypid++; if (trypid >= pidchecked) { PROC_UNLOCK(p2); - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); goto retry; } } @@ -409,7 +409,7 @@ p2 = LIST_FIRST(&pc->pc_zombproc); goto again; } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } } mtx_unlock(&pidalloc_lock); @@ -429,9 +429,9 @@ AUDIT_ARG(pid, p2->p_pid); p2->p_pcpu = pcpup; - PCPU_PROC_LOCK(p2->p_pcpu); + PCPU_PROC_WLOCK(p2->p_pcpu); LIST_INSERT_HEAD(&p2->p_pcpu->pc_allproc, p2, p_list); - PCPU_PROC_UNLOCK(p2->p_pcpu); + PCPU_PROC_WUNLOCK(p2->p_pcpu); mtx_lock(&pidhash_lock); LIST_INSERT_HEAD(PIDHASH(p2->p_pid), p2, p_hash); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 (text+ko) ==== @@ -640,7 +640,7 @@ if (ops == KTROP_CLEARFILE) { sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { PROC_LOCK(p); if (p->p_tracevp == vp) { @@ -664,7 +664,7 @@ } else PROC_UNLOCK(p); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); goto done; @@ -983,7 +983,7 @@ cred = NULL; sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { PROC_LOCK(p); if (p->p_tracevp == vp) { @@ -1001,7 +1001,7 @@ cred = NULL; } } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 (text+ko) ==== @@ -110,9 +110,10 @@ void procinit() { - + sx_init(&allpcpu_lock, "allpcpu"); sx_init(&proctree_lock, "proctree"); + sx_init(&pcpu_find(0)->pc_allproc_lock, "cpu allproc"); mtx_init(&ppeers_lock, "p_peers", NULL, MTX_DEF); mtx_init(&pidalloc_lock, "pidalloc", NULL, MTX_DEF); mtx_init(&pidhash_lock, "pidhash", NULL, MTX_DEF); @@ -1002,7 +1003,7 @@ sx_slock(&allpcpu_lock); for (doingzomb = 0 ; doingzomb < 2 ; doingzomb++) { SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); if (!doingzomb) p = LIST_FIRST(&pc->pc_allproc); else @@ -1105,12 +1106,12 @@ error = sysctl_out_proc(p, req, flags | doingzomb); if (error) { - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); sx_sunlock(&allpcpu_lock); return (error); } } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } } sx_sunlock(&allpcpu_lock); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 (text+ko) ==== @@ -144,7 +144,7 @@ uap->who = td->td_ucred->cr_uid; sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { PROC_LOCK(p); if (!p_cansee(td, p) && @@ -154,7 +154,7 @@ } PROC_UNLOCK(p); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); break; @@ -236,9 +236,8 @@ uap->who = td->td_ucred->cr_uid; sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { - PROC_LOCK(p); if (p->p_ucred->cr_uid == uap->who && !p_cansee(td, p)) { @@ -247,6 +246,7 @@ } PROC_UNLOCK(p); } + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); break; ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 (text+ko) ==== @@ -1648,7 +1648,7 @@ */ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { PROC_LOCK(p); if (p->p_pid <= 1 || p->p_flag & P_SYSTEM || @@ -1663,7 +1663,7 @@ } PROC_UNLOCK(p); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); } else { ==== //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 (text+ko) ==== @@ -392,7 +392,7 @@ realstathz = stathz ? stathz : hz; sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { /* * Prevent state changes and protect run queue. @@ -481,7 +481,7 @@ } /* end of thread loop */ mtx_unlock_spin(&sched_lock); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } /* end of process loop */ sx_sunlock(&allpcpu_lock); } ==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 (text+ko) ==== @@ -75,7 +75,8 @@ cpuid_to_pcpu[cpuid] = pcpu; LIST_INIT(&pcpu->pc_allproc); LIST_INIT(&pcpu->pc_zombproc); - mtx_init(&pcpu->pc_allproc_lock, "cpu allproc", NULL, MTX_DEF); + if (cpuid != 0) + sx_init(&pcpu->pc_allproc_lock, "cpu allproc"); SLIST_INSERT_HEAD(&cpuhead, pcpu, pc_allcpu); cpu_pcpu_init(pcpu, cpuid, size); } ==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 (text+ko) ==== @@ -275,13 +275,13 @@ */ { "proctree", &lock_class_sx }, { "allpcpu", &lock_class_sx }, + { "cpu allproc", &lock_class_sx }, { NULL, NULL }, /* * Various mutexes */ { "Giant", &lock_class_mtx_sleep }, { "pidalloc", &lock_class_mtx_sleep }, - { "cpu allproc", &lock_class_mtx_sleep }, { "pidhash", &lock_class_mtx_sleep }, { "filedesc structure", &lock_class_mtx_sleep }, { "pipe mutex", &lock_class_mtx_sleep }, ==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 (text+ko) ==== @@ -532,7 +532,7 @@ /* this is slow, should be optimized */ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { PROC_LOCK(p); mtx_lock_spin(&sched_lock); @@ -545,6 +545,7 @@ break; /* proc lock held */ PROC_UNLOCK(p); } + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); if (p == NULL) { ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 (text+ko) ==== @@ -79,7 +79,7 @@ struct rwindow pc_tsbwbuf[2]; \ u_int pc_node; \ uint16_t pc_cpulist[MAXCPU]; \ - uint64_t pad[6]; + uint64_t pad[7]; /* XXX SUN4V_FIXME - as we access the *_ra and *_size fields in quick * succession we _really_ want them to be L1 cache line size aligned ==== //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 (text+ko) ==== @@ -43,12 +43,13 @@ #include #include +#include #include LIST_HEAD(proclist, proc); struct pcb; struct thread; - +struct sx; /* * This structure maps out the global data that needs to be kept on a * per-cpu basis. The members are accessed via the PCPU_GET/SET/PTR @@ -68,7 +69,7 @@ cpumask_t pc_other_cpus; /* Mask of all other cpus */ SLIST_ENTRY(pcpu) pc_allcpu; struct lock_list_entry *pc_spinlocks; - struct mtx pc_allproc_lock; /* lock for pcpu process list */ + struct sx pc_allproc_lock; /* lock for pcpu process list */ struct proclist pc_zombproc; struct proclist pc_allproc; #ifdef KTR_PERCPU ==== //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 (text+ko) ==== @@ -623,8 +623,10 @@ #define PROC_LOCK_ASSERT(p, type) mtx_assert(&(p)->p_mtx, (type)) /* lock pcpu process list */ -#define PCPU_PROC_LOCK(pc) mtx_lock(&(pc)->pc_allproc_lock) -#define PCPU_PROC_UNLOCK(pc) mtx_unlock(&(pc)->pc_allproc_lock) +#define PCPU_PROC_RLOCK(pc) sx_slock(&(pc)->pc_allproc_lock) +#define PCPU_PROC_RUNLOCK(pc) sx_sunlock(&(pc)->pc_allproc_lock) +#define PCPU_PROC_WLOCK(pc) sx_xlock(&(pc)->pc_allproc_lock) +#define PCPU_PROC_WUNLOCK(pc) sx_xunlock(&(pc)->pc_allproc_lock) /* Lock and unlock a process group. */ ==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 (text+ko) ==== @@ -678,7 +678,7 @@ ppri = INT_MIN; sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { if (p->p_sflag & (PS_INMEM | PS_SWAPPINGOUT | PS_SWAPPINGIN)) continue; @@ -709,7 +709,7 @@ } mtx_unlock_spin(&sched_lock); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); @@ -808,7 +808,7 @@ retry: sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { struct vmspace *vm; @@ -930,7 +930,7 @@ PROC_UNLOCK(p); vm_map_unlock(&vm->vm_map); vmspace_free(vm); - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); sx_sunlock(&allpcpu_lock); goto retry; } @@ -944,7 +944,7 @@ vmspace_free(vm); continue; } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); /* ==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 (text+ko) ==== @@ -143,7 +143,7 @@ */ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { if (p->p_flag & P_SYSTEM) continue; @@ -209,7 +209,7 @@ if (paging) totalp->t_pw++; } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); /* ==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 (text+ko) ==== @@ -1224,7 +1224,7 @@ bigsize = 0; sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { int breakout; @@ -1281,7 +1281,7 @@ } else PROC_UNLOCK(p); } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); if (bigproc != NULL) { @@ -1576,7 +1576,7 @@ sx_slock(&allpcpu_lock); SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { - PCPU_PROC_LOCK(pc); + PCPU_PROC_RLOCK(pc); LIST_FOREACH(p, &pc->pc_allproc, p_list) { vm_pindex_t limit, size; @@ -1630,7 +1630,7 @@ &p->p_vmspace->vm_map, limit); } } - PCPU_PROC_UNLOCK(pc); + PCPU_PROC_RUNLOCK(pc); } sx_sunlock(&allpcpu_lock); } From owner-p4-projects@FreeBSD.ORG Mon Jun 19 23:36:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7334C16A47E; Mon, 19 Jun 2006 23:36:09 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4DCFD16A47B; Mon, 19 Jun 2006 23:36:09 +0000 (UTC) (envelope-from arr@watson.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7792A43D49; Mon, 19 Jun 2006 23:36:08 +0000 (GMT) (envelope-from arr@watson.org) Received: from fledge.watson.org (localhost.watson.org [127.0.0.1]) by fledge.watson.org (8.13.6/8.13.6) with ESMTP id k5JNa7K2052451; Mon, 19 Jun 2006 19:36:07 -0400 (EDT) (envelope-from arr@watson.org) Received: from localhost (arr@localhost) by fledge.watson.org (8.13.6/8.13.6/Submit) with ESMTP id k5JNa7jR052448; Mon, 19 Jun 2006 19:36:07 -0400 (EDT) (envelope-from arr@watson.org) X-Authentication-Warning: fledge.watson.org: arr owned process doing -bs Date: Mon, 19 Jun 2006 19:36:07 -0400 (EDT) From: "Andrew R. Reiter" To: Kip Macy In-Reply-To: <200606192330.k5JNUMVL029897@repoman.freebsd.org> Message-ID: <20060619193506.F40529@fledge.watson.org> References: <200606192330.k5JNUMVL029897@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: Perforce Change Reviews Subject: Re: PERFORCE change 99646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 19 Jun 2006 23:36:09 -0000 On Mon, 19 Jun 2006, Kip Macy wrote: :http://perforce.freebsd.org/chv.cgi?CH=99646 : :Change 99646 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/19 23:29:26 : : convert pcpu allproc locks to sx to avoid having to fix cases where : sx locks are being acquired afterwards : add 2 missed unlocks Nice. Good thought. I have seen the recent "benchmark" SMP emails and am not aggro like DT, so I don't care about too much detail; however, do you believe the switch from straight mutex locks to shared/exclusive locks will assist in some performance areas? Thanks for your work, Andrew : :Affected files ... : :.. //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 edit :.. //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 edit :.. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 edit :.. //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 edit :.. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 edit :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 edit :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 edit :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 edit : :Differences ... : :==== //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 (text+ko) ==== : :@@ -568,18 +568,18 @@ : /* next process */ : if (*p == NULL) { : *p = LIST_FIRST(&(*pc)->pc_allproc); :- PCPU_PROC_LOCK(*pc); :+ PCPU_PROC_RLOCK(*pc); : } else if ((LIST_NEXT(*p, p_list) == NULL) && (SLIST_NEXT(*pc, pc_allcpu) != NULL)) { :- PCPU_PROC_UNLOCK(*pc); :+ PCPU_PROC_RUNLOCK(*pc); : *pc = SLIST_NEXT(*pc, pc_allcpu); :- PCPU_PROC_LOCK(*pc); :+ PCPU_PROC_RLOCK(*pc); : *p = LIST_FIRST(&(*pc)->pc_allproc); : } else { : *p = LIST_NEXT(*p, p_list); : } : /* out of processes: next node */ : if (*p == NULL) { :- PCPU_PROC_UNLOCK(*pc); :+ PCPU_PROC_RUNLOCK(*pc); : *pn = (*pn)->pn_next; : } : } : :==== //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 (text+ko) ==== : :@@ -147,14 +147,14 @@ : : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :- : if (p->p_sysent == entry->sysvec) { : rval = TRUE; : break; : } : } :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : : :==== //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 (text+ko) ==== : :@@ -539,12 +539,12 @@ : : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : microuptime(&p->p_stats->p_start); : p->p_rux.rux_runtime = 0; : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : PCPU_SET(switchtime, cpu_ticks()); : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 (text+ko) ==== : :@@ -2357,7 +2357,7 @@ : : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : fdp = fdhold(p); : if (fdp == NULL) :@@ -2379,7 +2379,7 @@ : while (nrele--) : vrele(olddp); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : if (rootvnode == olddp) { :@@ -2459,7 +2459,7 @@ : xf.xf_size = sizeof(xf); : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : if (p->p_state == PRS_NEW) : continue; :@@ -2496,7 +2496,7 @@ : if (error) : break; : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : return (error); : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 (text+ko) ==== : :@@ -403,15 +403,10 @@ : * Remove proc from allproc queue and pidhash chain. : * Place onto zombproc. Unlink from parent's child list. : */ :- if (p->p_pcpu == NULL) :- panic("process: %d has null pcpu pointer", p->p_pid); :- if (!mtx_initialized(&(p->p_pcpu->pc_allproc_lock))) :- panic("null allproc lock on %d", p->p_pcpu->pc_cpuid); :- :- PCPU_PROC_LOCK(p->p_pcpu); :+ PCPU_PROC_WLOCK(p->p_pcpu); : LIST_REMOVE(p, p_list); : LIST_INSERT_HEAD(&p->p_pcpu->pc_zombproc, p, p_list); :- PCPU_PROC_UNLOCK(p->p_pcpu); :+ PCPU_PROC_WUNLOCK(p->p_pcpu); : : mtx_lock(&pidhash_lock); : LIST_REMOVE(p, p_hash); :@@ -770,9 +765,9 @@ : * we have an exclusive reference. : */ : :- PCPU_PROC_LOCK(p->p_pcpu); :+ PCPU_PROC_WLOCK(p->p_pcpu); : LIST_REMOVE(p, p_list); /* off zombproc */ :- PCPU_PROC_UNLOCK(p->p_pcpu); :+ PCPU_PROC_WUNLOCK(p->p_pcpu); : : mtx_lock(&pidhash_lock); : LIST_REMOVE(p, p_hash); /* off zombproc */ : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 (text+ko) ==== : :@@ -371,7 +371,7 @@ : * than trypid, so we can avoid checking for a while. : */ : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : : p2 = LIST_FIRST(&pc->pc_allproc); : again: :@@ -385,7 +385,7 @@ : trypid++; : if (trypid >= pidchecked) { : PROC_UNLOCK(p2); :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : goto retry; : } : } :@@ -409,7 +409,7 @@ : p2 = LIST_FIRST(&pc->pc_zombproc); : goto again; : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : } : mtx_unlock(&pidalloc_lock); :@@ -429,9 +429,9 @@ : AUDIT_ARG(pid, p2->p_pid); : p2->p_pcpu = pcpup; : :- PCPU_PROC_LOCK(p2->p_pcpu); :+ PCPU_PROC_WLOCK(p2->p_pcpu); : LIST_INSERT_HEAD(&p2->p_pcpu->pc_allproc, p2, p_list); :- PCPU_PROC_UNLOCK(p2->p_pcpu); :+ PCPU_PROC_WUNLOCK(p2->p_pcpu); : : mtx_lock(&pidhash_lock); : LIST_INSERT_HEAD(PIDHASH(p2->p_pid), p2, p_hash); : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 (text+ko) ==== : :@@ -640,7 +640,7 @@ : if (ops == KTROP_CLEARFILE) { : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : PROC_LOCK(p); : if (p->p_tracevp == vp) { :@@ -664,7 +664,7 @@ : } else : PROC_UNLOCK(p); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : goto done; :@@ -983,7 +983,7 @@ : cred = NULL; : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : PROC_LOCK(p); : if (p->p_tracevp == vp) { :@@ -1001,7 +1001,7 @@ : cred = NULL; : } : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 (text+ko) ==== : :@@ -110,9 +110,10 @@ : void : procinit() : { :- :+ : sx_init(&allpcpu_lock, "allpcpu"); : sx_init(&proctree_lock, "proctree"); :+ sx_init(&pcpu_find(0)->pc_allproc_lock, "cpu allproc"); : mtx_init(&ppeers_lock, "p_peers", NULL, MTX_DEF); : mtx_init(&pidalloc_lock, "pidalloc", NULL, MTX_DEF); : mtx_init(&pidhash_lock, "pidhash", NULL, MTX_DEF); :@@ -1002,7 +1003,7 @@ : sx_slock(&allpcpu_lock); : for (doingzomb = 0 ; doingzomb < 2 ; doingzomb++) { : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : if (!doingzomb) : p = LIST_FIRST(&pc->pc_allproc); : else :@@ -1105,12 +1106,12 @@ : : error = sysctl_out_proc(p, req, flags | doingzomb); : if (error) { :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : sx_sunlock(&allpcpu_lock); : return (error); : } : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : } : sx_sunlock(&allpcpu_lock); : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 (text+ko) ==== : :@@ -144,7 +144,7 @@ : uap->who = td->td_ucred->cr_uid; : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : PROC_LOCK(p); : if (!p_cansee(td, p) && :@@ -154,7 +154,7 @@ : } : PROC_UNLOCK(p); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : break; :@@ -236,9 +236,8 @@ : uap->who = td->td_ucred->cr_uid; : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :- : PROC_LOCK(p); : if (p->p_ucred->cr_uid == uap->who && : !p_cansee(td, p)) { :@@ -247,6 +246,7 @@ : } : PROC_UNLOCK(p); : } :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : break; : :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 (text+ko) ==== : :@@ -1648,7 +1648,7 @@ : */ : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : PROC_LOCK(p); : if (p->p_pid <= 1 || p->p_flag & P_SYSTEM || :@@ -1663,7 +1663,7 @@ : } : PROC_UNLOCK(p); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : } else { : :==== //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 (text+ko) ==== : :@@ -392,7 +392,7 @@ : realstathz = stathz ? stathz : hz; : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : /* : * Prevent state changes and protect run queue. :@@ -481,7 +481,7 @@ : } /* end of thread loop */ : mtx_unlock_spin(&sched_lock); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } /* end of process loop */ : sx_sunlock(&allpcpu_lock); : } : :==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 (text+ko) ==== : :@@ -75,7 +75,8 @@ : cpuid_to_pcpu[cpuid] = pcpu; : LIST_INIT(&pcpu->pc_allproc); : LIST_INIT(&pcpu->pc_zombproc); :- mtx_init(&pcpu->pc_allproc_lock, "cpu allproc", NULL, MTX_DEF); :+ if (cpuid != 0) :+ sx_init(&pcpu->pc_allproc_lock, "cpu allproc"); : SLIST_INSERT_HEAD(&cpuhead, pcpu, pc_allcpu); : cpu_pcpu_init(pcpu, cpuid, size); : } : :==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 (text+ko) ==== : :@@ -275,13 +275,13 @@ : */ : { "proctree", &lock_class_sx }, : { "allpcpu", &lock_class_sx }, :+ { "cpu allproc", &lock_class_sx }, : { NULL, NULL }, : /* : * Various mutexes : */ : { "Giant", &lock_class_mtx_sleep }, : { "pidalloc", &lock_class_mtx_sleep }, :- { "cpu allproc", &lock_class_mtx_sleep }, : { "pidhash", &lock_class_mtx_sleep }, : { "filedesc structure", &lock_class_mtx_sleep }, : { "pipe mutex", &lock_class_mtx_sleep }, : :==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 (text+ko) ==== : :@@ -532,7 +532,7 @@ : /* this is slow, should be optimized */ : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : PROC_LOCK(p); : mtx_lock_spin(&sched_lock); :@@ -545,6 +545,7 @@ : break; /* proc lock held */ : PROC_UNLOCK(p); : } :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : if (p == NULL) { : :==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 (text+ko) ==== : :@@ -79,7 +79,7 @@ : struct rwindow pc_tsbwbuf[2]; \ : u_int pc_node; \ : uint16_t pc_cpulist[MAXCPU]; \ :- uint64_t pad[6]; :+ uint64_t pad[7]; : : /* XXX SUN4V_FIXME - as we access the *_ra and *_size fields in quick : * succession we _really_ want them to be L1 cache line size aligned : :==== //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 (text+ko) ==== : :@@ -43,12 +43,13 @@ : : #include : #include :+#include : #include : : LIST_HEAD(proclist, proc); : struct pcb; : struct thread; :- :+struct sx; : /* : * This structure maps out the global data that needs to be kept on a : * per-cpu basis. The members are accessed via the PCPU_GET/SET/PTR :@@ -68,7 +69,7 @@ : cpumask_t pc_other_cpus; /* Mask of all other cpus */ : SLIST_ENTRY(pcpu) pc_allcpu; : struct lock_list_entry *pc_spinlocks; :- struct mtx pc_allproc_lock; /* lock for pcpu process list */ :+ struct sx pc_allproc_lock; /* lock for pcpu process list */ : struct proclist pc_zombproc; : struct proclist pc_allproc; : #ifdef KTR_PERCPU : :==== //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 (text+ko) ==== : :@@ -623,8 +623,10 @@ : #define PROC_LOCK_ASSERT(p, type) mtx_assert(&(p)->p_mtx, (type)) : : /* lock pcpu process list */ :-#define PCPU_PROC_LOCK(pc) mtx_lock(&(pc)->pc_allproc_lock) :-#define PCPU_PROC_UNLOCK(pc) mtx_unlock(&(pc)->pc_allproc_lock) :+#define PCPU_PROC_RLOCK(pc) sx_slock(&(pc)->pc_allproc_lock) :+#define PCPU_PROC_RUNLOCK(pc) sx_sunlock(&(pc)->pc_allproc_lock) :+#define PCPU_PROC_WLOCK(pc) sx_xlock(&(pc)->pc_allproc_lock) :+#define PCPU_PROC_WUNLOCK(pc) sx_xunlock(&(pc)->pc_allproc_lock) : : : /* Lock and unlock a process group. */ : :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 (text+ko) ==== : :@@ -678,7 +678,7 @@ : ppri = INT_MIN; : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : if (p->p_sflag & (PS_INMEM | PS_SWAPPINGOUT | PS_SWAPPINGIN)) : continue; :@@ -709,7 +709,7 @@ : } : mtx_unlock_spin(&sched_lock); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : :@@ -808,7 +808,7 @@ : retry: : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : : struct vmspace *vm; :@@ -930,7 +930,7 @@ : PROC_UNLOCK(p); : vm_map_unlock(&vm->vm_map); : vmspace_free(vm); :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : sx_sunlock(&allpcpu_lock); : goto retry; : } :@@ -944,7 +944,7 @@ : vmspace_free(vm); : continue; : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : /* : :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 (text+ko) ==== : :@@ -143,7 +143,7 @@ : */ : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : if (p->p_flag & P_SYSTEM) : continue; :@@ -209,7 +209,7 @@ : if (paging) : totalp->t_pw++; : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : /* : :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 (text+ko) ==== : :@@ -1224,7 +1224,7 @@ : bigsize = 0; : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : int breakout; : :@@ -1281,7 +1281,7 @@ : } else : PROC_UNLOCK(p); : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : if (bigproc != NULL) { :@@ -1576,7 +1576,7 @@ : : sx_slock(&allpcpu_lock); : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :- PCPU_PROC_LOCK(pc); :+ PCPU_PROC_RLOCK(pc); : LIST_FOREACH(p, &pc->pc_allproc, p_list) { : vm_pindex_t limit, size; : :@@ -1630,7 +1630,7 @@ : &p->p_vmspace->vm_map, limit); : } : } :- PCPU_PROC_UNLOCK(pc); :+ PCPU_PROC_RUNLOCK(pc); : } : sx_sunlock(&allpcpu_lock); : } : : -- arr@watson.org From owner-p4-projects@FreeBSD.ORG Tue Jun 20 06:02:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 75DC116A47B; Tue, 20 Jun 2006 06:02:28 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3609016A479 for ; Tue, 20 Jun 2006 06:02:28 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 003A543D45 for ; Tue, 20 Jun 2006 06:02:27 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5K62R5f072970 for ; Tue, 20 Jun 2006 06:02:27 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5K62Rf7072967 for perforce@freebsd.org; Tue, 20 Jun 2006 06:02:27 GMT (envelope-from jb@freebsd.org) Date: Tue, 20 Jun 2006 06:02:27 GMT Message-Id: <200606200602.k5K62Rf7072967@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 99658 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 06:02:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=99658 Change 99658 by jb@jb_freebsd2 on 2006/06/20 06:02:19 Choose a better place for the DTrace vtime hook. The new thread can be chosen all sorts of ways right up to the last moment. Affected files ... .. //depot/projects/dtrace/src/sys/kern/kern_synch.c#6 edit .. //depot/projects/dtrace/src/sys/kern/sched_4bsd.c#6 edit .. //depot/projects/dtrace/src/sys/kern/sched_ule.c#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/kern_synch.c#6 (text+ko) ==== @@ -429,16 +429,6 @@ td->td_inhibitors, td->td_wmesg, td->td_lockname); #endif -#ifdef KDTRACE - /* - * If DTrace has set the active vtime enum to anything - * other than INACTIVE (0), then it should have set the - * function to call. - */ - if (dtrace_vtime_active) - (*dtrace_vtime_switch_func)(newtd); -#endif - sched_switch(td, newtd, flags); CTR3(KTR_SCHED, "mi_switch: running %p(%s) prio %d", td, td->td_proc->p_comm, td->td_priority); ==== //depot/projects/dtrace/src/sys/kern/sched_4bsd.c#6 (text+ko) ==== @@ -970,6 +970,17 @@ if (PMC_PROC_IS_USING_PMCS(td->td_proc)) PMC_SWITCH_CONTEXT(td, PMC_FN_CSW_OUT); #endif + +#ifdef KDTRACE + /* + * If DTrace has set the active vtime enum to anything + * other than INACTIVE (0), then it should have set the + * function to call. + */ + if (dtrace_vtime_active) + (*dtrace_vtime_switch_func)(newtd); +#endif + cpu_switch(td, newtd); #ifdef HWPMC_HOOKS if (PMC_PROC_IS_USING_PMCS(td->td_proc)) ==== //depot/projects/dtrace/src/sys/kern/sched_ule.c#4 (text+ko) ==== @@ -1414,6 +1414,17 @@ if (PMC_PROC_IS_USING_PMCS(td->td_proc)) PMC_SWITCH_CONTEXT(td, PMC_FN_CSW_OUT); #endif + +#ifdef KDTRACE + /* + * If DTrace has set the active vtime enum to anything + * other than INACTIVE (0), then it should have set the + * function to call. + */ + if (dtrace_vtime_active) + (*dtrace_vtime_switch_func)(newtd); +#endif + cpu_switch(td, newtd); #ifdef HWPMC_HOOKS if (PMC_PROC_IS_USING_PMCS(td->td_proc)) From owner-p4-projects@FreeBSD.ORG Tue Jun 20 06:05:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 62E2316A47B; Tue, 20 Jun 2006 06:05:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3CE4616A474 for ; Tue, 20 Jun 2006 06:05:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0BC2C43D45 for ; Tue, 20 Jun 2006 06:05:33 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5K65WQS074334 for ; Tue, 20 Jun 2006 06:05:32 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5K65WBJ074331 for perforce@freebsd.org; Tue, 20 Jun 2006 06:05:32 GMT (envelope-from jb@freebsd.org) Date: Tue, 20 Jun 2006 06:05:32 GMT Message-Id: <200606200605.k5K65WBJ074331@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 99659 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 06:05:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=99659 Change 99659 by jb@jb_freebsd2 on 2006/06/20 06:04:45 Register and de-register the thread switch callback function for vtime. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_load.c#13 edit .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_unload.c#12 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_load.c#13 (text+ko) ==== @@ -38,6 +38,9 @@ /* Hang our hook for DTrace traps during probes. */ dtrace_instr_size_func = dtrace_instr_size; + /* Hang our hook for thread switches. */ + dtrace_vtime_switch_func = dtrace_vtime_switch; + /* * XXX This is a short term hack to avoid having to comment * out lots and lots of lock/unlock calls. ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_unload.c#12 (text+ko) ==== @@ -154,6 +154,13 @@ dtrace_mutex_destroy(&cpu_lock); dtrace_mutex_destroy(&mod_lock); + /* + * Reset our hook for thread switches, but ensure that vtime isn't + * active first. + */ + dtrace_vtime_active = 0; + dtrace_vtime_switch_func = NULL; + /* Reset our hook for DTrace traps during probes. */ dtrace_instr_size_func = NULL; From owner-p4-projects@FreeBSD.ORG Tue Jun 20 06:06:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3DCD716A47B; Tue, 20 Jun 2006 06:06:35 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1CDA716A474 for ; Tue, 20 Jun 2006 06:06:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB14A43D48 for ; Tue, 20 Jun 2006 06:06:34 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5K66Ynl074440 for ; Tue, 20 Jun 2006 06:06:34 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5K66Y2l074437 for perforce@freebsd.org; Tue, 20 Jun 2006 06:06:34 GMT (envelope-from jb@freebsd.org) Date: Tue, 20 Jun 2006 06:06:34 GMT Message-Id: <200606200606.k5K66Y2l074437@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 99660 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 06:06:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=99660 Change 99660 by jb@jb_freebsd2 on 2006/06/20 06:05:37 Remove a couple of hacks now the real functions exist. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.c#17 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.c#17 (text+ko) ==== @@ -25,14 +25,6 @@ #endif } void -dtrace_vtime_enable(void) -{ -} -void -dtrace_vtime_disable(void) -{ -} -void dtrace_vpanic(const char *fmt, __va_list args) { kdb_backtrace(); From owner-p4-projects@FreeBSD.ORG Tue Jun 20 06:07:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0103D16A484; Tue, 20 Jun 2006 06:07:37 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D16F016A481 for ; Tue, 20 Jun 2006 06:07:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 99B8243D49 for ; Tue, 20 Jun 2006 06:07:36 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5K67aoJ074534 for ; Tue, 20 Jun 2006 06:07:36 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5K67aBE074531 for perforce@freebsd.org; Tue, 20 Jun 2006 06:07:36 GMT (envelope-from jb@freebsd.org) Date: Tue, 20 Jun 2006 06:07:36 GMT Message-Id: <200606200607.k5K67aBE074531@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 99661 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 06:07:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=99661 Change 99661 by jb@jb_freebsd2 on 2006/06/20 06:07:11 Add the vtime functions. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace.c#29 edit .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_vtime.c#1 add Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace.c#29 (text+ko) ==== @@ -29,6 +29,8 @@ * Use is subject to license terms. */ +#define KDTRACE + /* * DTrace - Dynamic Tracing for Solaris * @@ -657,6 +659,8 @@ #include #include #include + +#include #if defined(__i386__) #include #endif From owner-p4-projects@FreeBSD.ORG Tue Jun 20 07:19:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37F2216A47A; Tue, 20 Jun 2006 07:19:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 141CD16A474 for ; Tue, 20 Jun 2006 07:19:06 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE47543D45 for ; Tue, 20 Jun 2006 07:19:05 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5K7J5Nh078689 for ; Tue, 20 Jun 2006 07:19:05 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5K7J5A1078686 for perforce@freebsd.org; Tue, 20 Jun 2006 07:19:05 GMT (envelope-from cdjones@FreeBSD.org) Date: Tue, 20 Jun 2006 07:19:05 GMT Message-Id: <200606200719.k5K7J5A1078686@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 99664 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 07:19:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=99664 Change 99664 by cdjones@cdjones_ides on 2006/06/20 07:18:40 Administrivia for the jail resources project. Initial stub for the scheduler coming soon. Affected files ... .. //depot/projects/soc2006/cdjones_jail/docs/BIBLIO.bib#1 add .. //depot/projects/soc2006/cdjones_jail/docs/PLAN#1 add .. //depot/projects/soc2006/cdjones_jail/docs/PROPOSAL#1 add .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/Make.tags.inc#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/Makefile#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/bus_if.m#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/clock_if.m#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/cpufreq_if.m#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/device_if.m#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/genassym.sh#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/imgact_aout.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/imgact_elf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/imgact_elf32.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/imgact_elf64.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/imgact_gzip.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/imgact_shell.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/inflate.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/init_main.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/init_sysent.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_acct.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_acl.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_alq.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_clock.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_condvar.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_conf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_context.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_cpu.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_descrip.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_environment.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_event.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_exec.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_exit.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_fork.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_idle.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_intr.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_kse.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_kthread.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_ktr.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_ktrace.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_linker.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_lock.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_lockf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mac.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_malloc.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mbuf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mib.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_module.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mtxpool.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mutex.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_ntptime.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_physio.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_pmc.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_poll.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_proc.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_prot.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_resource.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_rwlock.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sema.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_shutdown.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sig.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_subr.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_switch.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sx.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_synch.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_syscalls.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sysctl.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_tc.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_thr.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_thread.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_time.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_timeout.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_umtx.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_uuid.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_xxx.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/link_elf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/link_elf_obj.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/linker_if.m#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/makesyscalls.sh#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/md4c.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/md5c.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_jail.c#1 add .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_ule.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/serdev_if.m#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_autoconf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_blist.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_bus.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_clock.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_devstat.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_disk.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_eventhandler.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_firmware.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_hints.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_kdb.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_kobj.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_lock.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_log.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_mbpool.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_mchain.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_module.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_msgbuf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_param.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_pcpu.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_power.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_prf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_prof.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_rman.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_sbuf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_scanf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_sleepqueue.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_smp.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_stack.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_taskqueue.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_trap.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_turnstile.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_unit.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_witness.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sys_generic.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sys_pipe.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sys_process.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sys_socket.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/syscalls.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/syscalls.master#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_ipc.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_msg.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_sem.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_shm.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_compat.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_conf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_cons.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_pts.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_pty.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_subr.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/tty_tty.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_accf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_cow.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_domain.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_mbuf.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_mbuf2.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_mqueue.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_proto.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_sem.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_socket.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_socket2.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_syscalls.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_usrreq.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_aio.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_bio.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_cache.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_cluster.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_default.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_export.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_hash.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_init.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_lookup.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_mount.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_subr.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_syscalls.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_vnops.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vnode_if.src#1 branch .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/Makefile#1 branch .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.8#1 branch .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Tue Jun 20 07:45:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 219FD16A47F; Tue, 20 Jun 2006 07:45:39 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F122716A47C for ; Tue, 20 Jun 2006 07:45:38 +0000 (UTC) (envelope-from lawrance@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ADE5E43D48 for ; Tue, 20 Jun 2006 07:45:38 +0000 (GMT) (envelope-from lawrance@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5K7jclm079916 for ; Tue, 20 Jun 2006 07:45:38 GMT (envelope-from lawrance@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5K7jcmP079913 for perforce@freebsd.org; Tue, 20 Jun 2006 07:45:38 GMT (envelope-from lawrance@freebsd.org) Date: Tue, 20 Jun 2006 07:45:38 GMT Message-Id: <200606200745.k5K7jcmP079913@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to lawrance@freebsd.org using -f From: Sam Lawrance To: Perforce Change Reviews Cc: Subject: PERFORCE change 99665 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 07:45:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=99665 Change 99665 by lawrance@dirk on 2006/06/20 07:45:21 Don't build functions which call other functions we don't have. These are unused and were optimised away with -O2 in CFLAGS, so the link errors didn't show up by default. Discussed with: Peter Jeremy Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_open.c#14 edit .. //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/ctfmerge.c#4 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_open.c#14 (text) ==== @@ -841,6 +841,7 @@ *provmod = NULL; } +#if defined(sun) static const char * dt_get_sysinfo(int cmd, char *buf, size_t len) { @@ -855,6 +856,7 @@ return (buf); } +#endif static dtrace_hdl_t * dt_vopen(int version, int flags, int *errp, ==== //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/ctfmerge.c#4 (text) ==== @@ -231,14 +231,13 @@ progname, progname); } +#if defined(sun) static void bigheap(void) { size_t big, *size; int sizes, i; -#if defined(sun) struct memcntl_mha mha; -#endif /* * First, get the available pagesizes. @@ -267,7 +266,6 @@ if (brk((void *)((((uintptr_t)sbrk(0) - 1) & ~(big - 1)) + big)) != 0) return; -#if defined(sun) /* * Finally, set our heap to use the largest page size for which the * MC_HAT_ADVISE doesn't return EAGAIN. @@ -284,8 +282,8 @@ if (errno != EAGAIN) break; } +} #endif -} static void finalize_phase_one(workqueue_t *wq) From owner-p4-projects@FreeBSD.ORG Tue Jun 20 09:18:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D21A616A47E; Tue, 20 Jun 2006 09:18:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AAC0E16A474; Tue, 20 Jun 2006 09:18:15 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (eva.fit.vutbr.cz [147.229.10.14]) by mx1.FreeBSD.org (Postfix) with ESMTP id A4A5D43D45; Tue, 20 Jun 2006 09:18:13 +0000 (GMT) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (localhost [127.0.0.1]) by eva.fit.vutbr.cz (envelope-from xdivac02@eva.fit.vutbr.cz) (8.13.7/8.13.7) with ESMTP id k5K9I83R099633 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Tue, 20 Jun 2006 11:18:08 +0200 (CEST) Received: (from xdivac02@localhost) by eva.fit.vutbr.cz (8.13.7/8.13.3/Submit) id k5K9I70S099632; Tue, 20 Jun 2006 11:18:07 +0200 (CEST) Date: Tue, 20 Jun 2006 11:18:07 +0200 From: Divacky Roman To: John Baldwin Message-ID: <20060620091807.GA99542@stud.fit.vutbr.cz> References: <200606170857.k5H8vYVk017130@repoman.freebsd.org> <200606191002.26358.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200606191002.26358.jhb@freebsd.org> User-Agent: Mutt/1.4.2i X-Scanned-By: MIMEDefang 2.54 on 147.229.10.14 Cc: Roman Divacky , Perforce Change Reviews Subject: Re: PERFORCE change 99406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 09:18:16 -0000 On Mon, Jun 19, 2006 at 10:02:25AM -0400, John Baldwin wrote: > On Saturday 17 June 2006 04:57, Roman Divacky wrote: > > http://perforce.freebsd.org/chv.cgi?CH=99406 > > > > Change 99406 by rdivacky@rdivacky_witten on 2006/06/17 08:56:59 > > > > Change the emulpath sysctl to be per-prison. > > > > ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_mib.c#3 (text+ko) ==== > > > > @@ -90,7 +90,7 @@ > > static int > > linux_sysctl_linux_emul_path(SYSCTL_HANDLER_ARGS) > > { > > - char emul_path[LINUX_NAME_MAX]; > > + static char emul_path[LINUX_NAME_MAX]; > > int error; > > Elf32_Brandinfo **brandinfo; > > > > @@ -99,10 +99,39 @@ > > if (error || req->newptr == NULL) > > return (error); > > error = linux_set_emul_path(req->td, emul_path); > > - for (brandinfo = &linux_brandlist[0]; *brandinfo != NULL; > > - ++brandinfo) > > - if (elf32_insert_brand_entry(*brandinfo) < 0) > > - error = EINVAL; > > + { > > + static Elf32_Brandinfo linux_brand = { > > + ELFOSABI_LINUX, > > + EM_386, > > + "Linux", > > + emul_path, > > + "/lib/ld-linux.so.1", > > + &elf_linux_sysvec, > > + NULL, > > + BI_CAN_EXEC_DYN, > > + }; > > + static Elf32_Brandinfo linux_glibc2brand = { > > + ELFOSABI_LINUX, > > + EM_386, > > + "Linux", > > + emul_path, > > + "/lib/ld-linux.so.2", > > + &elf_linux_sysvec, > > + NULL, > > + BI_CAN_EXEC_DYN, > > + }; > > + > > + Elf32_Brandinfo *local_linux_brandlist[] = { > > + &linux_brand, > > + &linux_glibc2brand, > > + NULL > > + }; > > + > > + for (brandinfo = &local_linux_brandlist[0]; *brandinfo != NULL; > > + ++brandinfo) > > + if (elf32_insert_brand_entry(*brandinfo) < 0) > > + error = EINVAL; > > + } > > return (error); > > } > > I don't think this is going to work because the brand lists aren't > per-prison, they are one shared list. That is, once you create a > jail and try to change the path, the insert's will add new entries > to the end of the list, but an earlier entry for another jail > might handle the binary instead. Also, elf32_insert_brand_entry() hm... so there's no (easy) way to do it per-prison, right? > saves the pointer you pass to it, and your pointers are for variables > that are on the stack which will become garbage when this function > returns. the variable is declared static so it should work From owner-p4-projects@FreeBSD.ORG Tue Jun 20 11:35:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B2CD16A47E; Tue, 20 Jun 2006 11:35:26 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3E19D16A47C for ; Tue, 20 Jun 2006 11:35:26 +0000 (UTC) (envelope-from lawrance@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F14E143D48 for ; Tue, 20 Jun 2006 11:35:25 +0000 (GMT) (envelope-from lawrance@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KBZPtZ003863 for ; Tue, 20 Jun 2006 11:35:25 GMT (envelope-from lawrance@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KBZPgq003860 for perforce@freebsd.org; Tue, 20 Jun 2006 11:35:25 GMT (envelope-from lawrance@freebsd.org) Date: Tue, 20 Jun 2006 11:35:25 GMT Message-Id: <200606201135.k5KBZPgq003860@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to lawrance@freebsd.org using -f From: Sam Lawrance To: Perforce Change Reviews Cc: Subject: PERFORCE change 99668 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 11:35:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=99668 Change 99668 by lawrance@dirk on 2006/06/20 11:35:12 Implement DTrace raise() and stop() actions (the latter is assumed to be bogus at the moment). If there's a better lock-free way to get an AST from probe context, please let me know. - Move td_dtrace_sig and td_dtrace_stop earlier in struct thread, so they are zeroed out on initialisation. Other DTrace fields may benefit from this, I only moved the ones that I needed. - Solaris uses t_astflag and t_sig_check to invoke this behaviour without using locks in probe context. The equivalents on FreeBSD are td_flags fields TDF_ASTPENDING and TDF_NEEDSIGCHK. FreeBSD's td_flags is protected by sched_lock. To work around this I added TDP_ASTPENDING and TDP_NEEDSIGCHK fields to td_pflags. They are just like the td_flags equivalents, except that td_pflags is private to curthread, so no locking is required in probe context to modify them. - I added additional behaviour to i386/i386/exception.s to check for TDP_ASTPENDING. - ast() checks and clears TDP_NEEDSIGCHK and TDP_ASTPENDING. If TDP_NEEDSIGCHK is set, TDF_NEEDSIGCHK is set in flags. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_action.c#6 edit .. //depot/projects/dtrace/src/sys/i386/i386/exception.s#5 edit .. //depot/projects/dtrace/src/sys/i386/i386/genassym.c#2 edit .. //depot/projects/dtrace/src/sys/kern/kern_sig.c#4 edit .. //depot/projects/dtrace/src/sys/kern/subr_trap.c#2 edit .. //depot/projects/dtrace/src/sys/sys/proc.h#8 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_action.c#6 (text+ko) ==== @@ -103,17 +103,14 @@ return; } -#ifdef DOODAD /* * raise() has a queue depth of 1 -- we ignore all subsequent * invocations of the raise() action. */ - if (curthread->t_dtrace_sig == 0) - curthread->t_dtrace_sig = (uint8_t)sig; + if (curthread->td_dtrace_sig == 0) + curthread->td_dtrace_sig = (uint8_t)sig; - curthread->t_sig_check = 1; - aston(curthread); -#endif + curthread->td_pflags |= TDP_NEEDSIGCHK | TDP_ASTPENDING; } static void @@ -122,13 +119,14 @@ if (dtrace_destructive_disallow) return; -#ifdef DOODAD - if (!curthread->t_dtrace_stop) { - curthread->t_dtrace_stop = 1; - curthread->t_sig_check = 1; - aston(curthread); + if (!curthread->td_dtrace_stop) { + /* XXX stop it with a SIGSTOP for now. This is not + * how it is done on opensolaris. + */ + curthread->td_dtrace_stop = 1; + curthread->td_dtrace_sig = SIGSTOP; + curthread->td_pflags |= TDP_NEEDSIGCHK | TDP_ASTPENDING; } -#endif } static void ==== //depot/projects/dtrace/src/sys/i386/i386/exception.s#5 (text+ko) ==== @@ -446,7 +446,10 @@ cli movl PCPU(CURTHREAD),%eax testl $TDF_ASTPENDING | TDF_NEEDRESCHED,TD_FLAGS(%eax) + jne doreti_doast + testl $TDP_ASTPENDING, TD_PFLAGS(%eax) je doreti_exit +doreti_doast: sti pushl %esp /* pass a pointer to the trapframe */ call ast ==== //depot/projects/dtrace/src/sys/i386/i386/genassym.c#2 (text+ko) ==== @@ -82,6 +82,7 @@ ASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); ASSYM(TD_PCB, offsetof(struct thread, td_pcb)); +ASSYM(TD_PFLAGS, offsetof(struct thread, td_pflags)); ASSYM(TD_PROC, offsetof(struct thread, td_proc)); ASSYM(TD_MD, offsetof(struct thread, td_md)); @@ -90,6 +91,7 @@ ASSYM(TDF_ASTPENDING, TDF_ASTPENDING); ASSYM(TDF_NEEDRESCHED, TDF_NEEDRESCHED); +ASSYM(TDP_ASTPENDING, TDP_ASTPENDING); ASSYM(V_TRAP, offsetof(struct vmmeter, v_trap)); ASSYM(V_SYSCALL, offsetof(struct vmmeter, v_syscall)); ==== //depot/projects/dtrace/src/sys/kern/kern_sig.c#4 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/kern/subr_trap.c#2 (text+ko) ==== @@ -194,6 +194,16 @@ mtx_unlock_spin(&sched_lock); /* + * Clear AST from pflags; if signal delivery is + * required, poke flags to do the job. + */ + td->td_pflags &= ~(TDP_ASTPENDING); + if (td->td_pflags & TDP_NEEDSIGCHK) { + td->td_pflags &= ~TDP_NEEDSIGCHK; + flags |= TDF_NEEDSIGCHK; + } + + /* * XXXKSE While the fact that we owe a user profiling * tick is stored per KSE in this code, the statistics * themselves are still stored per process. @@ -266,6 +276,11 @@ if (flags & TDF_NEEDSIGCHK) { PROC_LOCK(p); mtx_lock(&p->p_sigacts->ps_mtx); + /* Signals from DTrace jump the queue. */ + if (td->td_dtrace_sig != 0) { + postsig(td->td_dtrace_sig); + td->td_dtrace_sig = 0; + } while ((sig = cursig(td)) != 0) postsig(sig); mtx_unlock(&p->p_sigacts->ps_mtx); ==== //depot/projects/dtrace/src/sys/sys/proc.h#8 (text+ko) ==== @@ -298,6 +298,9 @@ u_long td_profil_addr; /* (k) Temporary addr until AST. */ u_int td_profil_ticks; /* (k) Temporary ticks until AST. */ char td_name[MAXCOMLEN + 1]; /* (*) Thread name. */ +/* DTrace fields to be zeroed out */ + u_int8_t td_dtrace_stop; /* Indicates a DTrace-desired stop */ + u_int8_t td_dtrace_sig; /* Signal sent via DTrace's raise() */ #define td_endzero td_base_pri /* Copied during fork1() or thread_sched_upcall(). */ @@ -334,14 +337,9 @@ /* Start of DTrace-specific fields. */ u_int td_predcache; /* DTrace predicate cache */ - u_int64_t td_dtrace_vtime; - /* DTrace virtual time */ - u_int64_t td_dtrace_start; - /* DTrace slice start time */ + u_int64_t td_dtrace_vtime; /* DTrace virtual time */ + u_int64_t td_dtrace_start; /* DTrace slice start time */ - u_int8_t td_dtrace_stop; /* Indicates a DTrace-desired stop */ - u_int8_t td_dtrace_sig; /* Signal sent via DTrace's raise() */ - union __tdu { struct __tds { u_int8_t _td_dtrace_on; @@ -427,6 +425,8 @@ #define TDP_GEOM 0x00010000 /* Settle GEOM before finishing syscall */ #define TDP_SOFTDEP 0x00020000 /* Stuck processing softdep worklist */ #define TDP_NORUNNINGBUF 0x00040000 /* Ignore runningbufspace check */ +#define TDP_ASTPENDING 0x00080000 /* Thread has some asynchronous events. */ +#define TDP_NEEDSIGCHK 0x00100000 /* Thread may need signal delivery. */ /* * Reasons that the current thread can not be run yet. From owner-p4-projects@FreeBSD.ORG Tue Jun 20 13:59:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2A60F16A47E; Tue, 20 Jun 2006 13:59:20 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C6BB516A47B; Tue, 20 Jun 2006 13:59:19 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 34B6243D46; Tue, 20 Jun 2006 13:59:19 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k5KDxBKL027879; Tue, 20 Jun 2006 09:59:17 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Divacky Roman Date: Tue, 20 Jun 2006 09:16:32 -0400 User-Agent: KMail/1.9.1 References: <200606170857.k5H8vYVk017130@repoman.freebsd.org> <200606191002.26358.jhb@freebsd.org> <20060620091807.GA99542@stud.fit.vutbr.cz> In-Reply-To: <20060620091807.GA99542@stud.fit.vutbr.cz> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200606200916.32572.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Tue, 20 Jun 2006 09:59:17 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1550/Mon Jun 19 13:01:35 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Roman Divacky , Perforce Change Reviews Subject: Re: PERFORCE change 99406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 13:59:20 -0000 On Tuesday 20 June 2006 05:18, Divacky Roman wrote: > On Mon, Jun 19, 2006 at 10:02:25AM -0400, John Baldwin wrote: > > On Saturday 17 June 2006 04:57, Roman Divacky wrote: > > > http://perforce.freebsd.org/chv.cgi?CH=99406 > > > > > > Change 99406 by rdivacky@rdivacky_witten on 2006/06/17 08:56:59 > > > > > > Change the emulpath sysctl to be per-prison. > > > > > > ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_mib.c#3 (text+ko) ==== > > > > > > @@ -90,7 +90,7 @@ > > > static int > > > linux_sysctl_linux_emul_path(SYSCTL_HANDLER_ARGS) > > > { > > > - char emul_path[LINUX_NAME_MAX]; > > > + static char emul_path[LINUX_NAME_MAX]; > > > int error; > > > Elf32_Brandinfo **brandinfo; > > > > > > @@ -99,10 +99,39 @@ > > > if (error || req->newptr == NULL) > > > return (error); > > > error = linux_set_emul_path(req->td, emul_path); > > > - for (brandinfo = &linux_brandlist[0]; *brandinfo != NULL; > > > - ++brandinfo) > > > - if (elf32_insert_brand_entry(*brandinfo) < 0) > > > - error = EINVAL; > > > + { > > > + static Elf32_Brandinfo linux_brand = { > > > + ELFOSABI_LINUX, > > > + EM_386, > > > + "Linux", > > > + emul_path, > > > + "/lib/ld-linux.so.1", > > > + &elf_linux_sysvec, > > > + NULL, > > > + BI_CAN_EXEC_DYN, > > > + }; > > > + static Elf32_Brandinfo linux_glibc2brand = { > > > + ELFOSABI_LINUX, > > > + EM_386, > > > + "Linux", > > > + emul_path, > > > + "/lib/ld-linux.so.2", > > > + &elf_linux_sysvec, > > > + NULL, > > > + BI_CAN_EXEC_DYN, > > > + }; > > > + > > > + Elf32_Brandinfo *local_linux_brandlist[] = { > > > + &linux_brand, > > > + &linux_glibc2brand, > > > + NULL > > > + }; > > > + > > > + for (brandinfo = &local_linux_brandlist[0]; *brandinfo != NULL; > > > + ++brandinfo) > > > + if (elf32_insert_brand_entry(*brandinfo) < 0) > > > + error = EINVAL; > > > + } > > > return (error); > > > } > > > > I don't think this is going to work because the brand lists aren't > > per-prison, they are one shared list. That is, once you create a > > jail and try to change the path, the insert's will add new entries > > to the end of the list, but an earlier entry for another jail > > might handle the binary instead. Also, elf32_insert_brand_entry() > > hm... so there's no (easy) way to do it per-prison, right? Not really. I think if people want to use different linuxulators for different jails they should just use different chroot's with different /compat/linux contents to be honest. > > saves the pointer you pass to it, and your pointers are for variables > > that are on the stack which will become garbage when this function > > returns. > > the variable is declared static so it should work Ah, I had looked for static but missed it. That means the setting isn't per-jail though. This path is used to lookup rtld when executing the ELF binary. Since these variables are static, each time you execute a Linux binary it would use whichever prefix was set last for _all_ jails. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Tue Jun 20 14:02:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2EB4616A47A; Tue, 20 Jun 2006 14:02:50 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0684716A47C; Tue, 20 Jun 2006 14:02:50 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (eva.fit.vutbr.cz [147.229.10.14]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4DE8143D46; Tue, 20 Jun 2006 14:02:48 +0000 (GMT) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (localhost [127.0.0.1]) by eva.fit.vutbr.cz (envelope-from xdivac02@eva.fit.vutbr.cz) (8.13.7/8.13.7) with ESMTP id k5KE2gvq015095 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Tue, 20 Jun 2006 16:02:42 +0200 (CEST) Received: (from xdivac02@localhost) by eva.fit.vutbr.cz (8.13.7/8.13.3/Submit) id k5KE2gHh015093; Tue, 20 Jun 2006 16:02:42 +0200 (CEST) Date: Tue, 20 Jun 2006 16:02:42 +0200 From: Divacky Roman To: John Baldwin Message-ID: <20060620140241.GA15008@stud.fit.vutbr.cz> References: <200606170857.k5H8vYVk017130@repoman.freebsd.org> <200606191002.26358.jhb@freebsd.org> <20060620091807.GA99542@stud.fit.vutbr.cz> <200606200916.32572.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200606200916.32572.jhb@freebsd.org> User-Agent: Mutt/1.4.2i X-Scanned-By: MIMEDefang 2.54 on 147.229.10.14 Cc: Roman Divacky , Perforce Change Reviews Subject: Re: PERFORCE change 99406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 14:02:50 -0000 On Tue, Jun 20, 2006 at 09:16:32AM -0400, John Baldwin wrote: > On Tuesday 20 June 2006 05:18, Divacky Roman wrote: > > On Mon, Jun 19, 2006 at 10:02:25AM -0400, John Baldwin wrote: > > > On Saturday 17 June 2006 04:57, Roman Divacky wrote: > > > > http://perforce.freebsd.org/chv.cgi?CH=99406 > > > > > > > > Change 99406 by rdivacky@rdivacky_witten on 2006/06/17 08:56:59 I'll back it out completely From owner-p4-projects@FreeBSD.ORG Tue Jun 20 14:06:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CCCF516A47E; Tue, 20 Jun 2006 14:06:34 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8FBBF16A474 for ; Tue, 20 Jun 2006 14:06:34 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3D3A243D45 for ; Tue, 20 Jun 2006 14:06:34 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KE6YWf026175 for ; Tue, 20 Jun 2006 14:06:34 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KE6YE1026172 for perforce@freebsd.org; Tue, 20 Jun 2006 14:06:34 GMT (envelope-from bushman@freebsd.org) Date: Tue, 20 Jun 2006 14:06:34 GMT Message-Id: <200606201406.k5KE6YE1026172@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99671 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 14:06:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=99671 Change 99671 by bushman@bushman_nss_ldap_cached on 2006/06/20 14:06:17 Makefile's hierarchy changed so that modules are now built as the shared libraries + their sources are included to the libc sources so that statically linked programs would run normally. It would be better, though, to include nss-modules's source only for libc.a - and not for the libc.so. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getprotoent.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/netdb_private.h#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_backends.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#7 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/icmp_hosts_namadr.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/nss_icmp.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#4 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#2 (text+ko) ==== @@ -110,7 +110,29 @@ .if defined(KMSRCS) && !empty(KMSRCS) cp -p ${.ALLSRC} ${DESTDIR}/sys/libkern/${MACHINE_ARCH} .endif - + +# Include nss-modules's sources so that statically linked apps can work +# normally +CFLAGS+= -I${.CURDIR}/../libnssutil +CFLAGS+= -I${.CURDIR/include -I${.CURDIR/net + +.PATH: ${.CURDIR}/../libnssutil +.include "${.CURDIR}/../libnssutil/Makefile.inc" + +.PATH: ${.CURDIR}/../nss_files +.include "${.CURDIR}/../nss_files/Makefile.inc" + +.PATH: ${.CURDIR}/../nss_dns +.include "${.CURDIR}/../nss_dns/Makefile.inc" + +.if ${MK_NIS} != "no" +.PATH: ${.CURDIR}/../nss_nis +.include "${.CURDIR}/../nss_nis/Makefile.inc" +.endif + +.PATH: ${.CURDIR}/../nss_compat +.include "${.CURDIR}/../nss_compat/Makefile.inc" + .include # Disable warnings in contributed sources. ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#4 (text+ko) ==== @@ -7,7 +7,7 @@ SRCS+= addr2ascii.c ascii2addr.c base64.c ether_addr.c eui64.c \ gai_strerror.c getaddrinfo.c gethostnamadr.c \ getifaddrs.c getifmaddrs.c getnameinfo.c \ - getnetnamadr.c getproto.c getprotoent.c getprotoname.c getservent.c \ + getnetnamadr.c getprotoent.c getservent.c \ if_indextoname.c if_nameindex.c if_nametoindex.c \ ip6opt.c linkaddr.c map_v4v6.c name6.c \ nsdispatch.c nslexer.c nsparser.c nss_compat.c \ ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getprotoent.c#3 (text+ko) ==== @@ -278,6 +278,66 @@ #endif /* NS_CACHING */ int +getprotobyname_r(const char *name, struct protoent *pptr, char *buffer, + size_t buflen, struct protoent **result) +{ +#ifdef NS_CACHING + static const nss_cache_info cache_info = + NS_COMMON_CACHE_INFO_INITIALIZER( + protocols, (void *)nss_lt_name, + __proto_id_func, __proto_marshal_func, __proto_unmarshal_func); +#endif + static const ns_dtab dtab[] = { +#ifdef NS_CACHING + NS_CACHE_CB(&cache_info) +#endif + { NULL, NULL, NULL } + }; + int rv, ret_errno; + + ret_errno = 0; + *result = NULL; + rv = nsdispatch(result, dtab, NSDB_PROTOCOLS, "getprotobyname_r", + defaultsrc, name, pptr, buffer, buflen, &ret_errno); + + if (rv == NS_SUCCESS) + return (0); + else + return (ret_errno); +} + +int +getprotobynumber_r(int proto, struct protoent *pptr, char *buffer, + size_t buflen, struct protoent **result) +{ +#ifdef NS_CACHING + static const nss_cache_info cache_info = + NS_COMMON_CACHE_INFO_INITIALIZER( + protocols, (void *)nss_lt_id, + __proto_id_func, __proto_marshal_func, __proto_unmarshal_func); +#endif + + static const ns_dtab dtab[] = { +#ifdef NS_CACHING + NS_CACHE_CB(&cache_info) +#endif + { NULL, NULL, NULL } + }; + int rv, ret_errno; + + ret_errno = 0; + *result = NULL; + rv = nsdispatch(result, dtab, NSDB_PROTOCOLS, "getprotobynumber_r", + defaultsrc, proto, pptr, buffer, buflen, &ret_errno); + + if (rv == NS_SUCCESS) + return (0); + else + return (ret_errno); +} + + +int getprotoent_r(struct protoent *pptr, char *buffer, size_t buflen, struct protoent **result) { @@ -345,6 +405,35 @@ } struct protoent * +getprotobyname(const char *name) +{ + struct protodata *pd; + struct protoent *rval; + + if ((pd = __protodata_init()) == NULL) + return (NULL); + if (getprotobyname_r(name, &pd->proto, pd->data, sizeof(pd->data), + &rval) != 0) + return (NULL); + return (rval); +} + + +struct protoent * +getprotobynumber(int proto) +{ + struct protodata *pd; + struct protoent *rval; + + if ((pd = __protodata_init()) == NULL) + return (NULL); + if (getprotobynumber_r(proto, &pd->proto, pd->data, sizeof(pd->data), + &rval) != 0) + return (NULL); + return (rval); +} + +struct protoent * getprotoent(void) { struct protodata *pd; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/netdb_private.h#5 (text+ko) ==== @@ -48,7 +48,7 @@ (thr_keycreate(&name##_key, name##_free) == 0); \ } \ \ -struct name * \ +static struct name * \ __##name##_init(void) \ { \ struct name *he; \ ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_backends.h#2 (text+ko) ==== @@ -35,9 +35,12 @@ * Eventually, the implementations of existing built-in NSS functions * may be moved into NSS modules and live here. */ -#if 0 +#if 1 NSS_BACKEND( files, _files_nss_module_register ) NSS_BACKEND( dns, _dns_nss_module_register ) +#ifdef YP NSS_BACKEND( nis, _nis_nss_module_register ) +#endif NSS_BACKEND( compat, _compat_nss_module_register ) +//NSS_BACKEND( icmp, _icmp_nss_module_register ) #endif ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#4 (text+ko) ==== @@ -1,9 +1,10 @@ # $FreeBSD$ -LIB= nssutil -SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c rpcunpack.c\ - servunpack.c +LIB= nssutil +#SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c rpcunpack.c\ +# servunpack.c INTERNAL= NO_PIC= +.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#2 (text+ko) ==== @@ -7,8 +7,7 @@ SHLIBDIR?= /lib # NOTE: dirty hack with nss_files's file_serv.c is used -SRCS= nss_compat.c compat_group.c compat_passwd.c compat_serv.c\ - ${.CURDIR}/../nss_files/files_serv.c +SRCS+= ${.CURDIR}/../nss_files/files_serv.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -26,4 +25,5 @@ INCS= MAN= +.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#2 (text+ko) ==== @@ -72,6 +72,7 @@ static void compat_endstate(void *); NSS_TLS_HANDLING(compat); +static void pwd_init(struct passwd *pwd); static int pwdb_match_entry_v3(char *, size_t, enum nss_lookup_type, const char *, uid_t); static int pwdb_parse_entry_v3(char *, size_t, struct passwd *, int *); @@ -79,7 +80,7 @@ const char *, uid_t); static int pwdb_parse_entry_v4(char *, size_t, struct passwd *, int *); -struct { +static struct { int (*match)(char *, size_t, enum nss_lookup_type, const char *, uid_t); int (*parse)(char *, size_t, struct passwd *, int *); @@ -464,6 +465,22 @@ return (NS_SUCCESS); } +static void +pwd_init(struct passwd *pwd) +{ + static char nul[] = ""; + + memset(pwd, 0, sizeof(*pwd)); + pwd->pw_uid = (uid_t)-1; /* Considered least likely to lead to */ + pwd->pw_gid = (gid_t)-1; /* a security issue. */ + pwd->pw_name = nul; + pwd->pw_passwd = nul; + pwd->pw_class = nul; + pwd->pw_gecos = nul; + pwd->pw_dir = nul; + pwd->pw_shell = nul; +} + static DB * pwdbopen(int *version) { ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#2 (text+ko) ==== @@ -65,7 +65,7 @@ }; ns_mtab * -nss_module_register(const char *source, unsigned int *mtabsize, +_compat_nss_module_register(const char *source, unsigned int *mtabsize, nss_module_unregister_fn *unreg) { *mtabsize = sizeof(methods) / sizeof(methods[0]); @@ -74,8 +74,4 @@ return (methods); } -int -main(int argc, char **argv) -{ - return (0); -} +__weak_reference(_compat_nss_module_register, nss_module_register); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#5 (text+ko) ==== @@ -2,12 +2,13 @@ .include +LIB= nss_dns SHLIB_MAJOR= 1 SHLIB_NAME= nss_dns.so.${SHLIB_MAJOR} SHLIBDIR?= /lib -SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c\ - dns_group.c dns_net.c +#SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c\ +# dns_group.c dns_net.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -25,4 +26,5 @@ INCS= MAN= +.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#5 (text+ko) ==== @@ -84,7 +84,7 @@ }; ns_mtab * -nss_module_register(const char *source, unsigned int *mtabsize, +_dns_nss_module_register(const char *source, unsigned int *mtabsize, nss_module_unregister_fn *unreg) { *mtabsize = sizeof(methods) / sizeof(methods[0]); @@ -93,8 +93,4 @@ return (methods); } -int -main(int argc, char **argv) -{ - return (0); -} +__weak_reference(_dns_nss_module_register, nss_module_register); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#5 (text+ko) ==== @@ -2,13 +2,14 @@ .include +LIB= nss_files SHLIB_MAJOR= 1 SHLIB_NAME= nss_files.so.${SHLIB_MAJOR} SHLIBDIR?= /lib -SRCS= nss_files.c files_passwd.c files_group.c files_hosts_namadr.c\ - files_hosts_addrinfo.c files_serv.c files_proto.c\ - files_net.c files_rpc.c +#SRCS= nss_files.c files_passwd.c files_group.c files_hosts_namadr.c\ +# files_hosts_addrinfo.c files_serv.c files_proto.c\ +# files_net.c files_rpc.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -26,4 +27,5 @@ INCS= MAN= +.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.c#3 (text+ko) ==== @@ -71,7 +71,7 @@ static int pwdb_parse_entry_v4(char *, size_t, struct passwd *, int *); -struct { +static struct { int (*match)(char *, size_t, enum nss_lookup_type, const char *, uid_t); int (*parse)(char *, size_t, struct passwd *, int *); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.c#3 (text+ko) ==== @@ -62,7 +62,7 @@ } static void -protoent_data_free(void *ptr) +files_protoent_data_free(void *ptr) { struct files_protoent_data *ped = ptr; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#7 (text+ko) ==== @@ -126,7 +126,7 @@ }; ns_mtab * -nss_module_register(const char *source, unsigned int *mtabsize, +_files_nss_module_register(const char *source, unsigned int *mtabsize, nss_module_unregister_fn *unreg) { *mtabsize = sizeof(methods) / sizeof(methods[0]); @@ -135,8 +135,4 @@ return (methods); } -int -main(int argc, char **argv) -{ - return (0); -} +__weak_reference(_files_nss_module_register, nss_module_register); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#4 (text+ko) ==== @@ -2,11 +2,11 @@ .include -SHLIB_MAJOR= 1 -LIB= nss_icmp.so.${SHLIB_MAJOR} -SHLIBDIR?= /lib +SHLIB_MAJOR= 1 +SHLIB_NAME= nss_icmp.so.${SHLIB_MAJOR} +SHLIBDIR?= /lib -SRCS= nss_icmp.c icmp_hosts_namadr.c +#SRCS= nss_icmp.c icmp_hosts_namadr.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -19,9 +19,10 @@ .endif LDADD+= -lnssutil -LDFLAGS+= -L${.OBJDIR/../libnssutil +LDFLAGS+= -L${.OBJDIR}/../libnssutil INCS= MAN= +.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/icmp_hosts_namadr.c#2 (text+ko) ==== @@ -119,6 +119,13 @@ #include "netdb_private.h" #include "nss_icmp.h" +#ifdef INET6 +#define ADDRLEN(af) ((af) == AF_INET6 ? sizeof(struct in6_addr) : \ + sizeof(struct in_addr)) +#else +#define ADDRLEN(af) sizeof(struct in_addr) +#endif + NETDB_THREAD_ALLOC(hostent) NETDB_THREAD_ALLOC(icmp_hostent_data) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/nss_icmp.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ }; ns_mtab * -nss_module_register(const char *source, unsigned int *mtabsize, +_icmp_nss_module_register(const char *source, unsigned int *mtabsize, nss_module_unregister_fn *unreg) { *mtabsize = sizeof(methods) / sizeof(methods[0]); @@ -53,8 +53,4 @@ return (methods); } -int -main(int argc, char **argv) -{ - return (0); -} +__weak_reference(_icmp_nss_module_register, nss_module_register); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#5 (text+ko) ==== @@ -6,8 +6,8 @@ SHLIB_NAME= nss_nis.so.${SHLIB_MAJOR} SHLIBDIR?= /lib -SRCS= nss_nis.c nis_hosts_namadr.c nis_hosts_addrinfo.c nis_passwd.c\ - nis_group.c nis_net.c nis_rpc.c nis_serv.c +#SRCS= nss_nis.c nis_hosts_namadr.c nis_hosts_addrinfo.c nis_passwd.c\ +# nis_group.c nis_net.c nis_rpc.c nis_serv.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -25,4 +25,5 @@ INCS= MAN= +.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#4 (text+ko) ==== @@ -87,7 +87,7 @@ }; ns_mtab * -nss_module_register(const char *source, unsigned int *mtabsize, +_nis_nss_module_register(const char *source, unsigned int *mtabsize, nss_module_unregister_fn *unreg) { *mtabsize = sizeof(methods) / sizeof(methods[0]); @@ -96,8 +96,4 @@ return (methods); } -int -main(int argc, char **argv) -{ - return (0); -} +__weak_reference(_nis_nss_module_register, nss_module_register); From owner-p4-projects@FreeBSD.ORG Tue Jun 20 14:07:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2880B16A47F; Tue, 20 Jun 2006 14:07:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0741C16A474 for ; Tue, 20 Jun 2006 14:07:36 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C9A8D43D53 for ; Tue, 20 Jun 2006 14:07:35 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KE7Zar026225 for ; Tue, 20 Jun 2006 14:07:35 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KE7ZuN026222 for perforce@freebsd.org; Tue, 20 Jun 2006 14:07:35 GMT (envelope-from bushman@freebsd.org) Date: Tue, 20 Jun 2006 14:07:35 GMT Message-Id: <200606201407.k5KE7ZuN026222@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99672 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 14:07:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=99672 Change 99672 by bushman@bushman_nss_ldap_cached on 2006/06/20 14:07:17 Makefiles' includes, that allow the usage of nss-modules source from the libc Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile.inc#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile.inc#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile.inc#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile.inc#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile.inc#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile.inc#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Jun 20 14:32:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 02C2316A47E; Tue, 20 Jun 2006 14:32:46 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D25D816A47B; Tue, 20 Jun 2006 14:32:45 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C6B843D45; Tue, 20 Jun 2006 14:32:45 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k5KEWeRL028093; Tue, 20 Jun 2006 10:32:44 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Divacky Roman Date: Tue, 20 Jun 2006 10:31:55 -0400 User-Agent: KMail/1.9.1 References: <200606170857.k5H8vYVk017130@repoman.freebsd.org> <200606200916.32572.jhb@freebsd.org> <20060620140241.GA15008@stud.fit.vutbr.cz> In-Reply-To: <20060620140241.GA15008@stud.fit.vutbr.cz> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200606201031.55584.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Tue, 20 Jun 2006 10:32:44 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1550/Mon Jun 19 13:01:35 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Roman Divacky , Perforce Change Reviews Subject: Re: PERFORCE change 99406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 14:32:46 -0000 On Tuesday 20 June 2006 10:02, Divacky Roman wrote: > On Tue, Jun 20, 2006 at 09:16:32AM -0400, John Baldwin wrote: > > On Tuesday 20 June 2006 05:18, Divacky Roman wrote: > > > On Mon, Jun 19, 2006 at 10:02:25AM -0400, John Baldwin wrote: > > > > On Saturday 17 June 2006 04:57, Roman Divacky wrote: > > > > > http://perforce.freebsd.org/chv.cgi?CH=99406 > > > > > > > > > > Change 99406 by rdivacky@rdivacky_witten on 2006/06/17 08:56:59 > > I'll back it out completely Well, you could still make it work if you wanted to by making the list of ELF-brands virtualizable and using that to handle this. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Tue Jun 20 16:47:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BDBCD16A47B; Tue, 20 Jun 2006 16:47:12 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7F0E116A474 for ; Tue, 20 Jun 2006 16:47:12 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 27EAE43D45 for ; Tue, 20 Jun 2006 16:47:12 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KGlCqY046791 for ; Tue, 20 Jun 2006 16:47:12 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KGlBSH046087 for perforce@freebsd.org; Tue, 20 Jun 2006 16:47:11 GMT (envelope-from bushman@freebsd.org) Date: Tue, 20 Jun 2006 16:47:11 GMT Message-Id: <200606201647.k5KGlBSH046087@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99676 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 16:47:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=99676 Change 99676 by bushman@bushman_nss_ldap_cached on 2006/06/20 16:46:52 Lots of minor fixes, that allow modules to be compiled as the part of the libc library. Still there's a need to integrate them only in libc.a. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/netdb_private.h#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nsdispatch.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_name6.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_addrinfo.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_name6.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_rpc.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_serv.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_shells.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#8 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_group.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_addrinfo.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_namadr.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_name6.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_passwd.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_rpc.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_serv.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#5 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#3 (text+ko) ==== @@ -113,8 +113,7 @@ # Include nss-modules's sources so that statically linked apps can work # normally -CFLAGS+= -I${.CURDIR}/../libnssutil -CFLAGS+= -I${.CURDIR/include -I${.CURDIR/net +CFLAGS+= -I${.CURDIR}/../libnssutil -I${.CURDIR}/net .PATH: ${.CURDIR}/../libnssutil .include "${.CURDIR}/../libnssutil/Makefile.inc" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/netdb_private.h#6 (text+ko) ==== @@ -109,8 +109,6 @@ char data[sizeof(struct protoent_data)]; }; -struct protodata *__protodata_init(void); - void _map_v4v6_address(const char *, char *); void _map_v4v6_hostent(struct hostent *, char **, char *); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nsdispatch.c#3 (text+ko) ==== @@ -437,7 +437,7 @@ */ /* The built-in NSS modules are all loaded at once. */ #define NSS_BACKEND(name, reg) \ -ns_mtab *reg(unsigned int *, nss_module_unregister_fn *); +ns_mtab *reg(const char *, unsigned int *, nss_module_unregister_fn *); #include "nss_backends.h" #undef NSS_BACKEND ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#3 (text+ko) ==== @@ -21,6 +21,9 @@ #include #include #include +#include +#include + int __copy_hostent(struct hostent *he, struct hostent *hptr, char *buf, ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.c#2 (text+ko) ==== @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include +#include #include #include #include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.c#2 (text+ko) ==== @@ -31,10 +31,12 @@ * SUCH DAMAGE. */ +#include #include #include #include #include +#include #include int ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.c#2 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -113,7 +114,7 @@ else if (stayopen) st->fp = fopen(_PATH_GROUP, "r"); set_setent(dtab, mdata); - (void)nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", + (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", compatsrc, 0); break; case nss_end_ent: @@ -122,7 +123,7 @@ st->fp = NULL; } set_setent(dtab, mdata); - (void)nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", + (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", compatsrc, 0); break; default: @@ -206,17 +207,17 @@ set_lookup_type(dtab, how); switch (how) { case nss_lt_all: - rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrent_r", compatsrc, grp, buffer, bufsize, errnop); break; case nss_lt_id: - rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrgid_r", compatsrc, gid, grp, buffer, bufsize, errnop); break; case nss_lt_name: - rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrnam_r", compatsrc, name, grp, buffer, bufsize, errnop); break; @@ -227,7 +228,7 @@ break; case COMPAT_MODE_NAME: set_lookup_type(dtab, nss_lt_name); - rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrnam_r", compatsrc, st->name, grp, buffer, bufsize, errnop); switch (rv) { ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#3 (text+ko) ==== @@ -34,8 +34,9 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" +#include #include -#include #include #include #include @@ -48,6 +49,8 @@ #include #include #include +#include "un-namespace.h" +#include #include "nss_tls.h" #include "nss_compat.h" #include "pw_scan.h" @@ -418,17 +421,17 @@ pwd_init(pwd); switch (lookup_how) { case nss_lt_all: - rv = nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, "getpwent_r", compatsrc, pwd, buffer, bufsize, errnop); break; case nss_lt_id: - rv = nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, "getpwuid_r", compatsrc, uid, pwd, buffer, bufsize, errnop); break; case nss_lt_name: - rv = nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, + rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, "getpwnam_r", compatsrc, lookup_name, pwd, buffer, bufsize, errnop); break; @@ -560,7 +563,7 @@ st->db = pwdbopen(&st->version); st->stayopen = stayopen; set_setent(dtab, mdata); - (void)nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "setpwent", + (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "setpwent", compatsrc, 0); break; case nss_end_ent: @@ -569,7 +572,7 @@ st->db = NULL; } set_setent(dtab, mdata); - (void)nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "endpwent", + (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "endpwent", compatsrc, 0); break; default: ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.c#2 (text+ko) ==== @@ -25,8 +25,10 @@ * */ +#include "namespace.h" #include #include +#include "un-namespace.h" #include "../nss_files/files_serv.h" #include "nss_compat.h" @@ -49,11 +51,11 @@ switch ((enum nss_ent_type)mdata) { case nss_set_ent: f = va_arg(ap,int); - (void)nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, + (void)_nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "setservent", compat_src, f); break; case nss_end_ent: - (void)nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, + (void)_nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "endservent", compat_src); break; default: ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#3 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#3 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -51,7 +52,7 @@ #include #include "nss_tls.h" #include "gr_scan.h" - +#include "un-namespace.h" #ifdef HESIOD #define HESIOD_NAME_MAX 256 ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.c#5 (text+ko) ==== @@ -65,6 +65,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -91,7 +92,7 @@ #include #include #include - +#include "un-namespace.h" #include "res_config.h" #if defined(__KAME__) && defined(INET6) @@ -167,8 +168,6 @@ struct addrinfo *, const char *); static struct addrinfo *get_ai(const struct addrinfo *, const struct afd *, const char *); -static int get_portmatch(const struct addrinfo *, const char *); -static int get_port(struct addrinfo *, const char *, int); static const struct afd *find_afd(int); static struct addrinfo *getanswer(const querybuf *, int, const char *, int, @@ -182,8 +181,6 @@ static int res_querydomainN(const char *, const char *, struct res_target *, res_state); -static int str2number(const char *p); - static int get_canonname(const struct addrinfo *pai, struct addrinfo *ai, const char *str) @@ -264,94 +261,6 @@ return ai; } -static int -get_portmatch(const struct addrinfo *ai, const char *servname) -{ - - /* get_port does not touch first argument when matchonly == 1. */ - /* LINTED const cast */ - return get_port((struct addrinfo *)ai, servname, 1); -} - -static int -get_port(struct addrinfo *ai, const char *servname, int matchonly) -{ - const char *proto; - struct servent *sp; - int port; - int allownumeric; - - if (servname == NULL) - return 0; - switch (ai->ai_family) { - case AF_INET: -#ifdef AF_INET6 - case AF_INET6: -#endif - break; - default: - return 0; - } - - switch (ai->ai_socktype) { - case SOCK_RAW: - return EAI_SERVICE; - case SOCK_DGRAM: - case SOCK_STREAM: - allownumeric = 1; - break; - case ANY: - allownumeric = 0; - break; - default: - return EAI_SOCKTYPE; - } - - port = str2number(servname); - if (port >= 0) { - if (!allownumeric) - return EAI_SERVICE; - if (port < 0 || port > 65535) - return EAI_SERVICE; - port = htons(port); - } else { - if (ai->ai_flags & AI_NUMERICSERV) - return EAI_NONAME; - switch (ai->ai_socktype) { - case SOCK_DGRAM: - proto = "udp"; - break; - case SOCK_STREAM: - proto = "tcp"; - break; - default: - proto = NULL; - break; - } - - if ((sp = getservbyname(servname, proto)) == NULL) - return EAI_SERVICE; - port = sp->s_port; - } - - if (!matchonly) { - switch (ai->ai_family) { - case AF_INET: - ((struct sockaddr_in *)(void *) - ai->ai_addr)->sin_port = port; - break; -#ifdef INET6 - case AF_INET6: - ((struct sockaddr_in6 *)(void *) - ai->ai_addr)->sin6_port = port; - break; -#endif - } - } - - return 0; -} - static const struct afd * find_afd(int af) { @@ -995,23 +904,6 @@ } #endif /*RESOLVSORT*/ -static int -str2number(const char *p) -{ - char *ep; - unsigned long v; - - if (*p == '\0') - return -1; - ep = NULL; - errno = 0; - v = strtoul(p, &ep, 10); - if (errno == 0 && ep && *ep == '\0' && v <= UINT_MAX) - return v; - else - return -1; -} - /*ARGSUSED*/ int __dns_getaddrinfo(void *rv, void *cb_data, va_list ap) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#6 (text+ko) ==== @@ -56,6 +56,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -68,12 +69,15 @@ #include #include #include +#include +#include #include #include #include #include #include #include +#include "un-namespace.h" #include "reentrant.h" #include "netdb_private.h" #include "nss_dns.h" @@ -841,7 +845,7 @@ statp = __res_state(); if ((statp->options & RES_INIT) == 0 && res_ninit(statp) == -1) - return; + return (NS_UNAVAIL); if (f) statp->options |= RES_STAYOPEN | RES_USEVC; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_name6.c#4 (text+ko) ==== @@ -90,6 +90,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -115,6 +116,7 @@ #include #include #include +#include "un-namespace.h" #include "netdb_private.h" #include "res_config.h" #include "hosts_name6.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#3 (text+ko) ==== @@ -61,16 +61,18 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include #include #include - #include #include #include #include +#include +#include #include #include #include @@ -78,6 +80,7 @@ #include #include #include +#include "un-namespace.h" #include "netdb_private.h" #include "nss_dns.h" #include "reentrant.h" @@ -476,7 +479,7 @@ statp = __res_state(); if ((statp->options & RES_INIT) == 0 && res_ninit(statp) == -1) - return; + return (NS_UNAVAIL); if (f) statp->options |= RES_STAYOPEN | RES_USEVC; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#3 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -52,6 +53,7 @@ #include #include #include +#include "un-namespace.h" #include "libc_private.h" #include "nss_tls.h" #include "pw_scan.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#6 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.c#3 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -46,6 +47,7 @@ #include #include #include +#include "un-namespace.h" #include "nss_files.h" #include "nss_tls.h" #include "gr_scan.h" @@ -56,8 +58,6 @@ }; static void files_endstate(void *); NSS_TLS_HANDLING(files); -static int files_setgrent(void *, void *, va_list); -static int files_group(void *, void *, va_list); static void files_endstate(void *p) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_addrinfo.c#2 (text+ko) ==== @@ -65,6 +65,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -90,6 +91,7 @@ #include #include #include +#include "un-namespace.h" #include "res_config.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.c#4 (text+ko) ==== @@ -54,33 +54,31 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include #include #include #include +#include +#include #include #include #include #include +#include #include #include /* XXX */ #include /* XXX */ +#include "un-namespace.h" #include "reentrant.h" #include "netdb_private.h" #include "nss_files.h" -NETDB_THREAD_ALLOC(hostent) NETDB_THREAD_ALLOC(files_hostent_data) static void -hostent_free(void *ptr) -{ - free(ptr); -} - -static void files_hostent_data_free(void *ptr) { struct files_hostent_data *hed = ptr; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_name6.c#3 (text+ko) ==== @@ -90,6 +90,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -102,6 +103,7 @@ #include #include /* XXX */ #include /* XXX */ +#include "un-namespace.h" #include "netdb_private.h" #include "hosts_name6.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#4 (text+ko) ==== @@ -44,17 +44,22 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include #include #include #include +#include +#include #include #include +#include #include #include #include +#include "un-namespace.h" #include "netdb_private.h" #include "reentrant.h" #include "copynetent.h" @@ -274,7 +279,6 @@ struct files_netent_data *ned; struct netent ne, *nptr; res_state statp; - int error; nptr = va_arg(ap, struct netent *); buffer = va_arg(ap, char *); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.c#4 (text+ko) ==== @@ -34,8 +34,9 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" +#include #include -#include #include #include #include @@ -48,6 +49,8 @@ #include #include #include +#include "un-namespace.h" +#include #include "nss_files.h" #include "nss_tls.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.c#4 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -42,9 +43,11 @@ #include #include #include +#include #include #include #include +#include "un-namespace.h" #include "netdb_private.h" #include "nss_tls.h" #include "reentrant.h" @@ -70,12 +73,6 @@ free(ped); } -static void -protodata_free(void *ptr) -{ - free(ptr); -} - static int __copy_protoent(struct protoent *pe, struct protoent *pptr, char *buf, size_t buflen) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_rpc.c#3 (text+ko) ==== @@ -35,6 +35,7 @@ * Copyright (c) 1984 by Sun Microsystems, Inc. */ +#include "namespace.h" #include #include #include @@ -44,12 +45,14 @@ #include #include #include +#include #include #include #include #include #include #include +#include "un-namespace.h" #include "nss_files.h" #include "nss_tls.h" #include "rpcunpack.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_serv.c#3 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -43,10 +44,12 @@ #include #include #include +#include #include #include #include #include +#include "un-namespace.h" #include "files_serv.h" #include "nss_files.h" #include "nss_tls.h" @@ -192,19 +195,19 @@ if (st->compat_mode_active != 0) { switch (serv_mdata->how) { case nss_lt_name: - rv = nsdispatch(retval, compat_dtab, + rv = _nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "getservbyname_r", compat_src, name, proto, serv, buffer, bufsize, errnop); break; case nss_lt_id: - rv = nsdispatch(retval, compat_dtab, + rv = _nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "getservbyport_r", compat_src, port, proto, serv, buffer, bufsize, errnop); break; case nss_lt_all: - rv = nsdispatch(retval, compat_dtab, + rv = _nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "getservent_r", compat_src, serv, buffer, bufsize, errnop); break; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_shells.c#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#8 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_group.c#2 (text+ko) ==== @@ -34,6 +34,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -49,6 +50,7 @@ #include #include #include +#include "un-namespace.h" #include "nss_tls.h" #include "gr_scan.h" @@ -88,8 +90,8 @@ } -static int -nis_group(void *retval, void *mdata, va_list ap) +int +__nis_group(void *retval, void *mdata, va_list ap) { char *map; struct nis_state *st; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_addrinfo.c#2 (text+ko) ==== @@ -62,6 +62,7 @@ * - FreeBSD allowed classful IPv4 numeric (127.1), the code does not. */ +#include "namespace.h" #include #include #include @@ -88,11 +89,11 @@ #include #include #include - -#include "res_config.h" - #include #include +#include "un-namespace.h" +#include "libc_private.h" +#include "res_config.h" #ifdef DEBUG #include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_namadr.c#4 (text+ko) ==== @@ -26,6 +26,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -39,6 +40,8 @@ #include #include #include +#include +#include #include /* XXX */ //#ifdef YP #include @@ -47,6 +50,7 @@ //#endif #include #include +#include "un-namespace.h" #include "reentrant.h" #include "netdb_private.h" #include "nss_nis.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_name6.c#3 (text+ko) ==== @@ -90,6 +90,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -111,6 +112,7 @@ //#endif #include #include +#include "un-namespace.h" #include "netdb_private.h" #include "hosts_name6.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.c#3 (text+ko) ==== @@ -26,6 +26,7 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include @@ -34,6 +35,8 @@ #include #include #include +#include +#include #include #include #include @@ -43,6 +46,7 @@ #include #include #include +#include "un-namespace.h" #include "netdb_private.h" #include "reentrant.h" #include "copynetent.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_passwd.c#2 (text+ko) ==== @@ -34,11 +34,11 @@ #include __FBSDID("$FreeBSD$"); +#include "namespace.h" #include #include #include #include -#include #include #include #include @@ -51,6 +51,7 @@ #include #include #include +#include "un-namespace.h" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jun 20 17:20:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 55E0D16A47F; Tue, 20 Jun 2006 17:20:58 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1516E16A474 for ; Tue, 20 Jun 2006 17:20:58 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF84543D45 for ; Tue, 20 Jun 2006 17:20:57 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KHKv0s049586 for ; Tue, 20 Jun 2006 17:20:57 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KHKsGf049583 for perforce@freebsd.org; Tue, 20 Jun 2006 17:20:54 GMT (envelope-from jhb@freebsd.org) Date: Tue, 20 Jun 2006 17:20:54 GMT Message-Id: <200606201720.k5KHKsGf049583@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99677 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 17:20:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=99677 Change 99677 by jhb@jhb_mutex on 2006/06/20 17:20:27 IFC @99674. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/fpu.c#10 integrate .. //depot/projects/smpng/sys/amd64/amd64/initcpu.c#6 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#53 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#59 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#44 integrate .. //depot/projects/smpng/sys/amd64/conf/GENERIC#47 integrate .. //depot/projects/smpng/sys/amd64/include/md_var.h#13 integrate .. //depot/projects/smpng/sys/arm/arm/elf_trampoline.c#7 integrate .. //depot/projects/smpng/sys/arm/arm/pmap.c#29 integrate .. //depot/projects/smpng/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/smpng/sys/arm/at91/if_ate.c#5 integrate .. //depot/projects/smpng/sys/arm/conf/IQ31244#11 integrate .. //depot/projects/smpng/sys/arm/conf/KB920X#3 integrate .. //depot/projects/smpng/sys/arm/conf/SIMICS#9 integrate .. //depot/projects/smpng/sys/arm/conf/SKYEYE#3 integrate .. //depot/projects/smpng/sys/boot/Makefile#21 integrate .. //depot/projects/smpng/sys/conf/Makefile.arm#22 integrate .. //depot/projects/smpng/sys/conf/NOTES#121 integrate .. //depot/projects/smpng/sys/conf/files#177 integrate .. //depot/projects/smpng/sys/conf/kern.post.mk#55 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#20 integrate .. //depot/projects/smpng/sys/ddb/db_sym.c#6 integrate .. //depot/projects/smpng/sys/dev/aac/aac_pci.c#42 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#67 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#76 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#42 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi.c#6 integrate .. //depot/projects/smpng/sys/dev/mxge/eth_z8e.dat.gz.uu#2 integrate .. //depot/projects/smpng/sys/dev/mxge/ethp_z8e.dat.gz.uu#2 integrate .. //depot/projects/smpng/sys/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/smpng/sys/dev/mxge/if_mxge_var.h#2 integrate .. //depot/projects/smpng/sys/dev/mxge/mxge_mcp.h#2 integrate .. //depot/projects/smpng/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/smpng/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/smpng/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/smpng/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/smpng/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/smpng/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/smpng/sys/dev/sound/driver.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/midi/midi.c#11 integrate .. //depot/projects/smpng/sys/dev/sound/midi/sequencer.c#12 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/smpng/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/smpng/sys/dev/sound/pci/cmi.c#29 integrate .. //depot/projects/smpng/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/smpng/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/smpng/sys/dev/sound/pci/es137x.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ich.c#44 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro.c#19 integrate .. //depot/projects/smpng/sys/dev/sound/pci/via8233.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_rate.c#12 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/sound.c#32 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/vchan.c#17 integrate .. //depot/projects/smpng/sys/dev/usb/uhid.c#28 integrate .. //depot/projects/smpng/sys/dev/usb/umodem.c#24 integrate .. //depot/projects/smpng/sys/dev/usb/uplcom.c#24 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs#90 integrate .. //depot/projects/smpng/sys/dev/usb/uscanner.c#33 integrate .. //depot/projects/smpng/sys/dev/usb/uvisor.c#17 integrate .. //depot/projects/smpng/sys/dev/wl/if_wl.c#28 integrate .. //depot/projects/smpng/sys/geom/geom_dev.c#41 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_wakeup.c#34 integrate .. //depot/projects/smpng/sys/i386/conf/GENERIC#77 integrate .. //depot/projects/smpng/sys/i386/conf/XBOX#5 integrate .. //depot/projects/smpng/sys/i386/i386/db_trace.c#29 integrate .. //depot/projects/smpng/sys/i386/i386/identcpu.c#45 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#98 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#93 integrate .. //depot/projects/smpng/sys/i386/include/specialreg.h#11 integrate .. //depot/projects/smpng/sys/ia64/conf/GENERIC#50 integrate .. //depot/projects/smpng/sys/ia64/conf/SKI#22 integrate .. //depot/projects/smpng/sys/ia64/ia64/pmap.c#78 integrate .. //depot/projects/smpng/sys/kern/kern_clock.c#51 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#71 integrate .. //depot/projects/smpng/sys/kern/kern_module.c#19 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#104 integrate .. //depot/projects/smpng/sys/kern/kern_sysctl.c#50 integrate .. //depot/projects/smpng/sys/kern/kern_tc.c#41 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#58 integrate .. //depot/projects/smpng/sys/kern/sched_core.c#2 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#67 integrate .. //depot/projects/smpng/sys/kern/subr_kdb.c#18 integrate .. //depot/projects/smpng/sys/kern/uipc_socket.c#85 integrate .. //depot/projects/smpng/sys/kern/uipc_socket2.c#53 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#77 integrate .. //depot/projects/smpng/sys/kern/uipc_usrreq.c#59 integrate .. //depot/projects/smpng/sys/kern/vfs_cache.c#32 integrate .. //depot/projects/smpng/sys/modules/Makefile#124 integrate .. //depot/projects/smpng/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/smpng/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/smpng/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/smpng/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/smpng/sys/modules/ppc/Makefile#1 branch .. //depot/projects/smpng/sys/modules/sound/driver/Makefile#8 integrate .. //depot/projects/smpng/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/smpng/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/smpng/sys/net/bpf.c#60 integrate .. //depot/projects/smpng/sys/net/bpf.h#18 integrate .. //depot/projects/smpng/sys/net/if.c#82 integrate .. //depot/projects/smpng/sys/net/if.h#31 integrate .. //depot/projects/smpng/sys/net/if_bridge.c#30 integrate .. //depot/projects/smpng/sys/net/if_clone.c#9 integrate .. //depot/projects/smpng/sys/net/if_var.h#44 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#71 integrate .. //depot/projects/smpng/sys/netinet/tcp_input.c#86 integrate .. //depot/projects/smpng/sys/netinet/tcp_seq.h#11 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#49 integrate .. //depot/projects/smpng/sys/netinet/tcp_var.h#43 integrate .. //depot/projects/smpng/sys/pc98/conf/GENERIC#62 integrate .. //depot/projects/smpng/sys/posix4/ksched.c#17 integrate .. //depot/projects/smpng/sys/powerpc/conf/GENERIC#34 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/mmu_if.m#5 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/pmap_dispatch.c#5 integrate .. //depot/projects/smpng/sys/security/audit/audit_bsm_token.c#4 integrate .. //depot/projects/smpng/sys/sparc64/conf/GENERIC#69 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/pmap.c#65 integrate .. //depot/projects/smpng/sys/sys/protosw.h#19 integrate .. //depot/projects/smpng/sys/sys/sched.h#21 integrate .. //depot/projects/smpng/sys/sys/socketvar.h#52 integrate .. //depot/projects/smpng/sys/sys/sockio.h#11 integrate .. //depot/projects/smpng/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/smpng/sys/vm/pmap.h#31 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#58 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#80 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/fpu.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/smpng/sys/amd64/amd64/initcpu.c#6 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/smpng/sys/amd64/amd64/machdep.c#53 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#59 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.556 2006/06/12 20:05:27 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.557 2006/06/15 01:01:05 ups Exp $"); /* * Manages physical address maps. @@ -2356,15 +2356,13 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { PMAP_LOCK(pmap); - mpte = pmap_enter_quick_locked(pmap, va, m, prot, mpte); + (void) pmap_enter_quick_locked(pmap, va, m, prot, NULL); PMAP_UNLOCK(pmap); - return (mpte); } static vm_page_t ==== //depot/projects/smpng/sys/amd64/amd64/trap.c#44 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/smpng/sys/amd64/conf/GENERIC#47 (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.459 2006/06/13 13:12:56 davidxu Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ cpu HAMMER ident GENERIC @@ -46,7 +46,6 @@ options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_GPT # GUID Partition Tables. -options COMPAT_43 # Needed by COMPAT_LINUX32 options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!] options COMPAT_IA32 # Compatible with i386 binaries options COMPAT_FREEBSD4 # Compatible with FreeBSD4 ==== //depot/projects/smpng/sys/amd64/include/md_var.h#13 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/smpng/sys/arm/arm/elf_trampoline.c#7 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.7 2006/06/12 22:58:50 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.8 2006/06/18 22:46:30 cognet Exp $"); #include #include #include @@ -64,7 +64,7 @@ #define cpu_idcache_wbinv_all xscale_cache_purgeID #endif -#ifdef KZIP + int arm_picache_size; int arm_picache_line_size; int arm_picache_ways; @@ -91,7 +91,6 @@ extern int arm9_dcache_sets_max; extern int arm9_dcache_index_max; extern int arm9_dcache_index_inc; -#endif static __inline void * memcpy(void *dst, const void *src, int len) @@ -100,7 +99,7 @@ char *d = dst; while (len) { - if (0 && len >= 4 && !((vm_offset_t)d & 3) && + if (len >= 4 && !((vm_offset_t)d & 3) && !((vm_offset_t)s & 3)) { *(uint32_t *)d = *(uint32_t *)s; s += 4; @@ -137,7 +136,7 @@ { int physaddr = KERNPHYSADDR; int tmp1; - unsigned int sp = (unsigned int)&_end; + unsigned int sp = ((unsigned int)&_end & ~3) + 4; #ifdef KZIP sp += KERNSIZE + 0x100; sp &= ~(L1_TABLE_SIZE - 1); @@ -164,6 +163,14 @@ "2: nop\n" "mov sp, %2\n" : "=r" (tmp1), "+r" (physaddr), "+r" (sp)); +#ifndef KZIP +#ifdef CPU_ARM9 + /* So that idcache_wbinv works; */ + if ((cpufunc_id() & 0x0000f000) == 0x00009000) + arm9_setup(); +#endif + cpu_idcache_wbinv_all(); +#endif __start(); } @@ -305,6 +312,7 @@ output(void *dummy, unsigned char *ptr, unsigned long len) { + memcpy(i_output, ptr, len); i_output += len; return (0); @@ -461,6 +469,10 @@ __asm __volatile("mcr p15, 0, %0, c7, c5, 0\n" "mcr p15, 0, %0, c7, c10, 4\n" : : "r" (curaddr)); + __asm __volatile("mrc p15, 0, %0, c1, c0, 0\n" + "bic %0, %0, #1\n" /* MMU_ENABLE */ + "mcr p15, 0, %0, c1, c0, 0\n" + : "=r" (ssym)); /* Jump to the entry point. */ ((void(*)(void))(entry_point - KERNVIRTADDR + curaddr))(); __asm __volatile(".globl func_end\n" @@ -477,7 +489,8 @@ */ int __hack; static __inline void -setup_pagetables(unsigned int pt_addr, vm_paddr_t physstart, vm_paddr_t physend) +setup_pagetables(unsigned int pt_addr, vm_paddr_t physstart, vm_paddr_t physend, + int write_back) { unsigned int *pd = (unsigned int *)pt_addr; vm_paddr_t addr; @@ -485,9 +498,12 @@ int tmp; bzero(pd, L1_TABLE_SIZE); - for (addr = physstart; addr < physend; addr += L1_S_SIZE) + for (addr = physstart; addr < physend; addr += L1_S_SIZE) { pd[addr >> L1_S_SHIFT] = L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)| L1_S_DOM(PMAP_DOMAIN_KERNEL) | addr; + if (write_back) + pd[addr >> L1_S_SHIFT] |= L1_S_B; + } /* XXX: See below */ if (0xfff00000 < physstart || 0xfff00000 > physend) pd[0xfff00000 >> L1_S_SHIFT] = L1_TYPE_S|L1_S_AP(AP_KRW)| @@ -520,13 +536,14 @@ void *dst, *altdst; char *kernel = (char *)&kernel_start; int sp; + int pt_addr; __asm __volatile("mov %0, pc" : "=r" (curaddr)); curaddr = (void*)((unsigned int)curaddr & 0xfff00000); #ifdef KZIP if (*kernel == 0x1f && kernel[1] == 0x8b) { - int pt_addr = (((int)&_end + KERNSIZE + 0x100) & + pt_addr = (((int)&_end + KERNSIZE + 0x100) & ~(L1_TABLE_SIZE - 1)) + L1_TABLE_SIZE; #ifdef CPU_ARM9 @@ -535,7 +552,7 @@ arm9_setup(); #endif setup_pagetables(pt_addr, (vm_paddr_t)curaddr, - (vm_paddr_t)curaddr + 0x10000000); + (vm_paddr_t)curaddr + 0x10000000, 1); /* Gzipped kernel */ dst = inflate_kernel(kernel, &_end); kernel = (char *)&_end; @@ -554,8 +571,13 @@ dst = 4 + load_kernel((unsigned int)&kernel_start, (unsigned int)curaddr, (unsigned int)&func_end, 0); - sp = (vm_offset_t)dst + 4096; - dst = (void *)sp; + dst = (void *)(((vm_offset_t)dst & ~3)); + pt_addr = ((unsigned int)dst &~(L1_TABLE_SIZE - 1)) + L1_TABLE_SIZE; + setup_pagetables(pt_addr, (vm_paddr_t)curaddr, + (vm_paddr_t)curaddr + 0x10000000, 0); + sp = pt_addr + L1_TABLE_SIZE + 8192; + sp = sp &~3; + dst = (void *)(sp + 4); memcpy((void *)dst, (void *)&load_kernel, (unsigned int)&func_end - (unsigned int)&load_kernel); do_call(dst, kernel, dst + (unsigned int)(&func_end) - ==== //depot/projects/smpng/sys/arm/arm/pmap.c#29 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.63 2006/06/11 04:53:06 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.64 2006/06/15 01:01:05 ups Exp $"); #include #include #include @@ -3572,16 +3572,14 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot & (VM_PROT_READ | VM_PROT_EXECUTE), FALSE); PMAP_UNLOCK(pmap); - return (NULL); } /* ==== //depot/projects/smpng/sys/arm/at91/at91_pmc.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pmc.c,v 1.1 2006/03/24 07:37:56 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pmc.c,v 1.2 2006/06/17 23:22:10 imp Exp $"); #include #include @@ -332,12 +332,11 @@ mckr = RD4(sc, PMC_MCKR); mck.parent = clock_list[mckr & 0x3]; mck.parent->refcnt++; - freq = mck.parent->hz; - freq /= 1 << ((mckr >> 2) & 3); + freq = mck.parent->hz / (1 << ((mckr >> 2) & 3)); mck.hz = freq / (1 + ((mckr >> 8) & 3)); device_printf(sc->dev, - "main clock: %d Hz PLLA: %d MHz CPU: %d MHz main %d MHz\n", + "Primary: %d Hz PLLA: %d MHz CPU: %d MHz MCK: %d MHz\n", sc->main_clock_hz, at91_pmc_pll_rate(main_clock, RD4(sc, CKGR_PLLAR), 0) / 1000000, freq / 1000000, mck.hz / 1000000); ==== //depot/projects/smpng/sys/arm/at91/if_ate.c#5 (text) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.7 2006/05/13 23:41:15 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.8 2006/06/17 23:24:35 imp Exp $"); #include #include @@ -96,6 +96,7 @@ int txcur; /* current tx map pointer */ bus_addr_t rx_desc_phys; eth_rx_desc_t *rx_descs; + int use_rmii; struct ifmib_iso_8802_3 mibdata; /* stuff for network mgmt */ }; @@ -174,6 +175,8 @@ if (err) goto out; + sc->use_rmii = (RD4(sc, ETH_CFG) & ETH_CFG_RMII) == ETH_CFG_RMII; + /* calling atestop before ifp is set is OK */ atestop(sc); ATE_LOCK_INIT(sc); @@ -182,6 +185,7 @@ ate_get_mac(sc, eaddr); ate_set_mac(sc, eaddr); + sc->ifp = ifp = if_alloc(IFT_ETHER); if (mii_phy_probe(dev, &sc->miibus, ate_ifmedia_upd, ate_ifmedia_sts)) { device_printf(dev, "Cannot find my PHY.\n"); @@ -693,11 +697,11 @@ * to this chip. Select the right one based on a compile-time * option. */ -#ifdef ATE_USE_RMII - WR4(sc, ETH_CFG, RD4(sc, ETH_CFG) | ETH_CFG_RMII); -#else - WR4(sc, ETH_CFG, RD4(sc, ETH_CFG) & ~ETH_CFG_RMII); -#endif + if (sc->use_rmii) + WR4(sc, ETH_CFG, RD4(sc, ETH_CFG) | ETH_CFG_RMII); + else + WR4(sc, ETH_CFG, RD4(sc, ETH_CFG) & ~ETH_CFG_RMII); + /* * Turn on the multicast hash, and write 0's to it. */ ==== //depot/projects/smpng/sys/arm/conf/IQ31244#11 (text+ko) ==== @@ -15,7 +15,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/arm/conf/IQ31244,v 1.14 2006/06/07 22:41:14 cognet Exp $ +# $FreeBSD: src/sys/arm/conf/IQ31244,v 1.15 2006/06/15 19:58:52 netchild Exp $ machine arm ident IQ31244 @@ -48,7 +48,6 @@ options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) options PSEUDOFS #Pseudo-filesystem framework -options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory ==== //depot/projects/smpng/sys/arm/conf/KB920X#3 (text) ==== @@ -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/arm/conf/KB920X,v 1.5 2006/06/07 22:41:14 cognet Exp $ +# $FreeBSD: src/sys/arm/conf/KB920X,v 1.7 2006/06/17 23:34:59 imp Exp $ machine arm ident KB920X @@ -51,7 +51,6 @@ #options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) options PSEUDOFS #Pseudo-filesystem framework -options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] #options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI #options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory @@ -80,5 +79,5 @@ device mem # Memory and kernel memory devices device md -device at91_twi # TWI: Two Wire Interface +# device at91_twi # TWI: Two Wire Interface device at91_spi # SPI: ==== //depot/projects/smpng/sys/arm/conf/SIMICS#9 (text+ko) ==== @@ -15,7 +15,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/arm/conf/SIMICS,v 1.9 2006/05/13 02:47:39 imp Exp $ +# $FreeBSD: src/sys/arm/conf/SIMICS,v 1.10 2006/06/15 19:58:52 netchild Exp $ machine arm ident SIMICS @@ -48,7 +48,6 @@ options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) options PSEUDOFS #Pseudo-filesystem framework -options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] #options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory options SYSVMSG #SYSV-style message queues ==== //depot/projects/smpng/sys/arm/conf/SKYEYE#3 (text) ==== @@ -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/arm/conf/SKYEYE,v 1.4 2006/06/07 22:41:14 cognet Exp $ +# $FreeBSD: src/sys/arm/conf/SKYEYE,v 1.5 2006/06/15 19:58:52 netchild Exp $ machine arm ident KB920X @@ -51,7 +51,6 @@ options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) options PSEUDOFS #Pseudo-filesystem framework -options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI #options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory ==== //depot/projects/smpng/sys/boot/Makefile#21 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/Makefile,v 1.28 2006/05/12 04:09:52 jhb Exp $ +# $FreeBSD: src/sys/boot/Makefile,v 1.29 2006/06/18 17:44:40 imp Exp $ .include @@ -17,7 +17,9 @@ SUBDIR+= ofw .endif +.if ${MACHINE_ARCH} != "arm" # Pick the machine-dependent subdir based on the target architecture. SUBDIR+= ${MACHINE:S/amd64/i386/} +.endif .include ==== //depot/projects/smpng/sys/conf/Makefile.arm#22 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.arm -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.arm,v 1.28 2006/06/12 22:58:50 cognet Exp $ +# $FreeBSD: src/sys/conf/Makefile.arm,v 1.29 2006/06/18 22:46:30 cognet Exp $ # # Makefile for FreeBSD # @@ -64,7 +64,7 @@ $S/$M/$M/cpufunc_asm_sa1.S $S/$M/$M/cpufunc_asm_arm10.S \ $S/$M/$M/cpufunc_asm_xscale.S $S/$M/$M/cpufunc_asm.S trampoline: ${KERNEL_KO}.tramp -${KERNEL_KO}.tramp: ${KERNEL_KO} +${KERNEL_KO}.tramp: ${KERNEL_KO} $S/$M/$M/inckern.S $S/$M/$M/elf_trampoline.c echo "#define KERNNAME \"${KERNEL_KO}.tmp\"" >opt_kernname.h sed s/${KERNVIRTADDR}/${KERNPHYSADDR}/ ldscript.$M > ldscript.$M.tramp sed s/" + SIZEOF_HEADERS"// ldscript.$M.tramp > \ @@ -74,9 +74,10 @@ eval $$(stat -s ${KERNEL_KO}.tmp) && \ echo "#define KERNSIZE $$st_size" >>opt_kernname.h ${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.$M.tramp \ - $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o ${KERNEL_KO}.tramp + $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S ${FILES_CPU_FUNC} \ + -o ${KERNEL_KO}.tramp ${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.$M.tramp.noheader \ - $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o \ + $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S ${FILES_CPU_FUNC} -o \ ${KERNEL_KO}.tramp.noheader ${OBJCOPY} -S -O binary ${KERNEL_KO}.tramp.noheader \ ${KERNEL_KO}.tramp.bin ==== //depot/projects/smpng/sys/conf/NOTES#121 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1366 2006/06/13 13:12:55 davidxu Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1367 2006/06/19 22:11:44 jhb Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -1707,6 +1707,9 @@ # PCI and ISA varieties. # awi: Support for IEEE 802.11 PC Card devices using the AMD Am79C930 and # Harris (Intersil) Chipset with PCnetMobile firmware by AMD. +# bce: Broadcom NetXtreme II (BCM5706/BCM5708) PCI/PCIe Gigabit Ethernet +# adapters. +# bfe: Broadcom BCM4401 Ethernet adapter. # bge: Support for gigabit ethernet adapters based on the Broadcom # BCM570x family of controllers, including the 3Com 3c996-T, # the Netgear GA302T, the SysKonnect SK-9D21 and SK-9D41, and @@ -1836,17 +1839,24 @@ device xe # PCI Ethernet NICs that use the common MII bus controller code. +device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet +device bfe # Broadcom BCM440x 10/100 Ethernet +device bge # Broadcom BCM570xx Gigabit Ethernet device dc # DEC/Intel 21143 and various workalikes device fxp # Intel EtherExpress PRO/100B (82557, 82558) hint.fxp.0.prefer_iomap="0" device hme # Sun HME (Happy Meal Ethernet) +device lge # Level 1 LXT1001 gigabit Ethernet device my # Myson Fast Ethernet (MTD80X, MTD89X) +device nge # NatSemi DP83820 gigabit Ethernet device rl # RealTek 8129/8139 device pcn # AMD Am79C97x PCI 10/100 NICs device sf # Adaptec AIC-6915 (``Starfire'') device sbsh # Granch SBNI16 SHDSL modem device sis # Silicon Integrated Systems SiS 900/SiS 7016 +device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet device ste # Sundance ST201 (D-Link DFE-550TX) +device ti # Alteon Networks Tigon I/II gigabit Ethernet device tl # Texas Instruments ThunderLAN device tx # SMC EtherPower II (83c170 ``EPIC'') device vr # VIA Rhine, Rhine II @@ -1859,12 +1869,7 @@ device txp # 3Com 3cR990 (``Typhoon'') device vx # 3Com 3c590, 3c595 (``Vortex'') -# PCI Gigabit & FDDI NICs. -device bge -device lge -device nge -device sk -device ti +# PCI FDDI NICs. device fpa # PCI WAN adapters. ==== //depot/projects/smpng/sys/conf/files#177 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1124 2006/06/13 13:12:55 davidxu Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1125 2006/06/14 03:03:08 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -967,7 +967,9 @@ dev/uart/uart_dbg.c optional uart gdb dev/uart/uart_dev_ns8250.c optional uart uart_ns8250 dev/uart/uart_dev_sab82532.c optional uart uart_sab82532 +dev/uart/uart_dev_sab82532.c optional uart scc dev/uart/uart_dev_z8530.c optional uart uart_z8530 +dev/uart/uart_dev_z8530.c optional uart scc dev/uart/uart_if.m optional uart dev/uart/uart_subr.c optional uart dev/uart/uart_tty.c optional uart ==== //depot/projects/smpng/sys/conf/kern.post.mk#55 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/kern.post.mk,v 1.94 2006/06/13 00:57:10 cognet Exp $ +# $FreeBSD: src/sys/conf/kern.post.mk,v 1.95 2006/06/18 17:48:45 imp Exp $ # Part of a unified Makefile for building kernels. This part includes all # the definitions that need to be after all the % directives except %RULES @@ -199,22 +199,6 @@ @[ -f .depend ] || { echo "you must make depend first"; exit 1; } sh $S/conf/systags.sh -.if ${MACHINE_ARCH} != "ia64" -.if exists(${DESTDIR}/boot) -kernel-install-check: - @if [ ! -f ${DESTDIR}/boot/device.hints ] ; then \ - echo "You must set up a ${DESTDIR}/boot/device.hints file first." ; \ - exit 1 ; \ - fi - @if [ x"`grep device.hints ${DESTDIR}/boot/defaults/loader.conf ${DESTDIR}/boot/loader.conf`" = "x" ]; then \ - echo "You must activate /boot/device.hints in loader.conf." ; \ - exit 1 ; \ - fi - -kernel-install: kernel-install-check -.endif -.endif - kernel-install: @if [ ! -f ${KERNEL_KO} ] ; then \ echo "You must build a kernel first." ; \ ==== //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#20 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/if_pfsync.c,v 1.26 2005/12/05 11:58:31 ru Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/if_pfsync.c,v 1.28 2006/06/16 10:25:06 mlaier Exp $ */ /* $OpenBSD: if_pfsync.c,v 1.46 2005/02/20 15:58:38 mcbride Exp $ */ /* @@ -102,6 +102,8 @@ #include "opt_carp.h" #ifdef DEV_CARP #define NCARP 1 +#else +#define NCARP 0 #endif #else #include "carp.h" @@ -221,6 +223,7 @@ sc->sc_statep.s = NULL; sc->sc_statep_net.s = NULL; sc->sc_maxupdates = 128; + sc->sc_sync_peer.s_addr = htonl(INADDR_PFSYNC_GROUP); sc->sc_sendaddr.s_addr = htonl(INADDR_PFSYNC_GROUP); sc->sc_ureq_received = 0; sc->sc_ureq_sent = 0; @@ -1054,7 +1057,11 @@ return (error); if (pfsyncr.pfsyncr_syncpeer.s_addr == 0) +#ifdef __FreeBSD__ + sc->sc_sync_peer.s_addr = htonl(INADDR_PFSYNC_GROUP); +#else sc->sc_sync_peer.s_addr = INADDR_PFSYNC_GROUP; +#endif else sc->sc_sync_peer.s_addr = pfsyncr.pfsyncr_syncpeer.s_addr; @@ -1118,7 +1125,11 @@ } if (sc->sc_sync_ifp && +#ifdef __FreeBSD__ + sc->sc_sync_peer.s_addr == htonl(INADDR_PFSYNC_GROUP)) { +#else sc->sc_sync_peer.s_addr == INADDR_PFSYNC_GROUP) { +#endif struct in_addr addr; if (!(sc->sc_sync_ifp->if_flags & IFF_MULTICAST)) { @@ -1152,7 +1163,11 @@ } if (sc->sc_sync_ifp || +#ifdef __FreeBSD__ + sc->sc_sendaddr.s_addr != htonl(INADDR_PFSYNC_GROUP)) { +#else sc->sc_sendaddr.s_addr != INADDR_PFSYNC_GROUP) { +#endif /* Request a full state table update. */ sc->sc_ureq_sent = time_uptime; #if NCARP > 0 @@ -1321,7 +1336,11 @@ * hear, does it make a sound? */ if (ifp->if_bpf == NULL && sc->sc_sync_ifp == NULL && +#ifdef __FreeBSD__ + sc->sc_sync_peer.s_addr == htonl(INADDR_PFSYNC_GROUP)) { +#else sc->sc_sync_peer.s_addr == INADDR_PFSYNC_GROUP) { +#endif /* Don't leave any stale pfsync packets hanging around. */ if (sc->sc_mbuf != NULL) { m_freem(sc->sc_mbuf); @@ -1773,7 +1792,12 @@ sc->sc_statep_net.s = NULL; } - if (sc->sc_sync_ifp || sc->sc_sync_peer.s_addr != INADDR_PFSYNC_GROUP) { +#ifdef __FreeBSD__ + if (sc->sc_sync_ifp || + sc->sc_sync_peer.s_addr != htonl(INADDR_PFSYNC_GROUP)) { +#else + if (sc->sc_sync_ifp ||sc->sc_sync_peer.s_addr != INADDR_PFSYNC_GROUP) { +#endif struct ip *ip; struct sockaddr sa; @@ -1811,12 +1835,7 @@ #endif m->m_flags |= M_MCAST; ip->ip_dst = sc->sc_sendaddr; -#ifdef __FreeBSD__ - /* XXX_IMPORT */ - sc->sc_sendaddr.s_addr = htonl(sc->sc_sync_peer.s_addr); -#else sc->sc_sendaddr.s_addr = sc->sc_sync_peer.s_addr; -#endif pfsyncstats.pfsyncs_opackets++; #ifdef __FreeBSD__ ==== //depot/projects/smpng/sys/ddb/db_sym.c#6 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ddb/db_sym.c,v 1.36 2005/01/06 01:34:41 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/ddb/db_sym.c,v 1.37 2006/06/16 16:17:52 kib Exp $"); #include #include @@ -230,7 +230,6 @@ c_db_sym_t ret = C_DB_SYM_NULL, sym; newdiff = diff = ~0; - db_last_symtab = 0; for (i = 0; i < db_nsymtab; i++) { sym = X_db_search_symbol(&db_symtabs[i], val, strategy, &newdiff); if (newdiff < diff) { ==== //depot/projects/smpng/sys/dev/aac/aac_pci.c#42 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/aac/aac_pci.c,v 1.58 2005/11/06 22:52:52 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_pci.c,v 1.59 2006/06/17 18:42:26 brueffer Exp $"); /* * PCI bus interface and resource allocation. @@ -126,13 +126,13 @@ {0x9005, 0x0285, 0x9005, 0x0286, AAC_HWIF_I960RX, AAC_FLAGS_NO4GB | AAC_FLAGS_256FIBS, "Adaptec SCSI RAID 2120S"}, {0x9005, 0x0285, 0x9005, 0x0290, AAC_HWIF_I960RX, AAC_FLAGS_NO4GB, - "Adaptec SCSI RAID 2410SA"}, + "Adaptec SATA RAID 2410SA"}, {0x9005, 0x0285, 0x1028, 0x0291, AAC_HWIF_I960RX, AAC_FLAGS_NO4GB, "Dell CERC SATA RAID 2"}, {0x9005, 0x0285, 0x9005, 0x0292, AAC_HWIF_I960RX, AAC_FLAGS_NO4GB, - "Adaptec SCSI RAID 2810SA"}, + "Adaptec SATA RAID 2810SA"}, {0x9005, 0x0285, 0x9005, 0x0293, AAC_HWIF_I960RX, AAC_FLAGS_NO4GB, - "Adaptec SCSI RAID 21610SA"}, + "Adaptec SATA RAID 21610SA"}, {0x9005, 0x0285, 0x103c, 0x3227, AAC_HWIF_I960RX, AAC_FLAGS_NO4GB, "HP ML110 G2 (Adaptec 2610SA)"}, {0x9005, 0x0286, 0x9005, 0x028c, AAC_HWIF_RKT, 0, @@ -161,9 +161,9 @@ {0x9005, 0x0286, 0x9005, 0x029d, AAC_HWIF_RKT, 0, "Adaptec SATA RAID 2420SA"}, {0x9005, 0x0286, 0x9005, 0x029e, AAC_HWIF_RKT, 0, - "ICP9024RO SATA RAID"}, + "ICP ICP9024RO SCSI RAID"}, {0x9005, 0x0286, 0x9005, 0x029f, AAC_HWIF_RKT, 0, - "ICP9014RO SATA RAID"}, + "ICP ICP9014RO SCSI RAID"}, {0x9005, 0x0285, 0x9005, 0x0294, AAC_HWIF_I960RX, 0, "Adaptec SATA RAID 2026ZCR"}, {0x9005, 0x0285, 0x103c, 0x3227, AAC_HWIF_I960RX, 0, @@ -185,13 +185,13 @@ {0x9005, 0x0285, 0x9005, 0x028f, AAC_HWIF_I960RX, 0, "Adaptec SATA RAID 2025SA ZCR"}, {0x9005, 0x0285, 0x9005, 0x02a4, AAC_HWIF_I960RX, 0, - "ICP 9085LI SAS RAID"}, + "ICP ICP9085LI SAS RAID"}, {0x9005, 0x0285, 0x9005, 0x02a5, AAC_HWIF_I960RX, 0, - "ICP 5085BR SAS RAID"}, + "ICP ICP5085BR SAS RAID"}, {0x9005, 0x0286, 0x9005, 0x02a0, AAC_HWIF_RKT, 0, - "ICP9047MA SATA RAID"}, + "ICP ICP9047MA SATA RAID"}, {0x9005, 0x0286, 0x9005, 0x02a1, AAC_HWIF_RKT, 0, - "ICP9087MA SATA RAID"}, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jun 20 19:46:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D5B616A47C; Tue, 20 Jun 2006 19:46:57 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2A48116A47A for ; Tue, 20 Jun 2006 19:46:57 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5A04443D6D for ; Tue, 20 Jun 2006 19:46:53 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KJkrmh058796 for ; Tue, 20 Jun 2006 19:46:53 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KJkrhZ058793 for perforce@freebsd.org; Tue, 20 Jun 2006 19:46:53 GMT (envelope-from als@FreeBSD.org) Date: Tue, 20 Jun 2006 19:46:53 GMT Message-Id: <200606201946.k5KJkrhZ058793@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99685 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 19:46:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=99685 Change 99685 by als@als_head on 2006/06/20 19:46:30 clear workplace after resolving pr i386/97679. Affected files ... .. //depot/projects/jail2/sys/net/if.c.new#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Tue Jun 20 21:20:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 88F6A16A47D; Tue, 20 Jun 2006 21:20:20 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5A13816A47B for ; Tue, 20 Jun 2006 21:20:20 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA74543D48 for ; Tue, 20 Jun 2006 21:20:19 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KLKJXb074623 for ; Tue, 20 Jun 2006 21:20:19 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KLKIU2074620 for perforce@freebsd.org; Tue, 20 Jun 2006 21:20:18 GMT (envelope-from jhb@freebsd.org) Date: Tue, 20 Jun 2006 21:20:18 GMT Message-Id: <200606202120.k5KLKIU2074620@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99698 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 21:20:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=99698 Change 99698 by jhb@jhb_mutex on 2006/06/20 21:19:46 IFC @99696 - much linker loopback. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#60 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/smpng/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#5 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#39 integrate .. //depot/projects/smpng/sys/dev/digi/digi.c#34 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi.c#7 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#99 integrate .. //depot/projects/smpng/sys/i386/linux/linux_dummy.c#14 integrate .. //depot/projects/smpng/sys/i386/linux/linux_proto.h#26 integrate .. //depot/projects/smpng/sys/i386/linux/linux_syscall.h#25 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysent.c#26 integrate .. //depot/projects/smpng/sys/i386/linux/syscalls.master#26 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#72 integrate .. //depot/projects/smpng/sys/kern/subr_firmware.c#11 integrate .. //depot/projects/smpng/sys/sys/linker.h#24 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#60 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.557 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -1664,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2335,6 +2336,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2376,7 +2378,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2394,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2412,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2446,12 +2436,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters ==== //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #define LINUX_SYS_exit 1 @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 #define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #include @@ -273,62 +273,62 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64, AUE_NULL }, /* 250 = linux_fadvise64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 251 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 252 = exit_group */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 253 = linux_lookup_dcookie */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 254 = linux_epoll_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = linux_epoll_ctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = linux_epoll_wait */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = linux_set_tid_address */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = linux_timer_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = linux_timer_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = linux_timer_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = linux_timer_getoverrun */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = linux_timer_delete */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = linux_clock_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = linux_clock_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = linux_clock_getres */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = linux_statfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = linux_fstatfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = linux_tgkill */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = linux_utimes */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 272 = linux_fadvise64_64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 274 = linux_mbind */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 275 = linux_get_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 276 = linux_set_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 277 = linux_mq_open */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 278 = linux_mq_unlink */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 279 = linux_mq_timedsend */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 280 = linux_mq_timedreceive */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = linux_mq_notify */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = linux_mq_getsetattr */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = linux_kexec_load */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = linux_waitid */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = linux_add_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = linux_request_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = linux_keyctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = linux_ioprio_set */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = linux_ioprio_get */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = linux_inotify_init */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = linux_inotify_add_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = linux_migrate_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = linux_openat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = linux_mkdirat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 297 = linux_mknodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 298 = linux_fchownat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 299 = linux_futimesat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 300 = linux_fstatat64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 301 = linux_unlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 302 = linux_renameat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 303 = linux_linkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 304 = linux_symlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 305 = linux_readlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 306 = linux_fchmodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 307 = linux_faccessat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 308 = linux_pselect6 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 309 = linux_ppoll */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 310 = linux_unshare */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL }, /* 253 = linux_lookup_dcookie */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_create, AUE_NULL }, /* 254 = linux_epoll_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL }, /* 262 = linux_timer_getoverrun */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_delete, AUE_NULL }, /* 263 = linux_timer_delete */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME }, /* 264 = linux_clock_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_gettime, AUE_NULL }, /* 265 = linux_clock_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_getres, AUE_NULL }, /* 266 = linux_clock_getres */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_nanosleep, AUE_NULL }, /* 267 = linux_clock_nanosleep */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_statfs64, AUE_NULL }, /* 268 = linux_statfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatfs64, AUE_NULL }, /* 269 = linux_fstatfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_tgkill, AUE_NULL }, /* 270 = linux_tgkill */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_utimes, AUE_NULL }, /* 271 = linux_utimes */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64_64, AUE_NULL }, /* 272 = linux_fadvise64_64 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mbind, AUE_NULL }, /* 274 = linux_mbind */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_get_mempolicy, AUE_NULL }, /* 275 = linux_get_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_mempolicy, AUE_NULL }, /* 276 = linux_set_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_open, AUE_NULL }, /* 277 = linux_mq_open */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_unlink, AUE_NULL }, /* 278 = linux_mq_unlink */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedsend, AUE_NULL }, /* 279 = linux_mq_timedsend */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedreceive, AUE_NULL }, /* 280 = linux_mq_timedreceive */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_notify, AUE_NULL }, /* 281 = linux_mq_notify */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_getsetattr, AUE_NULL }, /* 282 = linux_mq_getsetattr */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_kexec_load, AUE_NULL }, /* 283 = linux_kexec_load */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_waitid, AUE_NULL }, /* 284 = linux_waitid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_add_key, AUE_NULL }, /* 286 = linux_add_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_request_key, AUE_NULL }, /* 287 = linux_request_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_keyctl, AUE_NULL }, /* 288 = linux_keyctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_set, AUE_NULL }, /* 289 = linux_ioprio_set */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_get, AUE_NULL }, /* 290 = linux_ioprio_get */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_init, AUE_NULL }, /* 291 = linux_inotify_init */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_add_watch, AUE_NULL }, /* 292 = linux_inotify_add_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_rm_watch, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_migrate_pages, AUE_NULL }, /* 294 = linux_migrate_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_openat, AUE_NULL }, /* 295 = linux_openat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mkdirat, AUE_NULL }, /* 296 = linux_mkdirat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mknodat, AUE_NULL }, /* 297 = linux_mknodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchownat, AUE_NULL }, /* 298 = linux_fchownat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_futimesat, AUE_NULL }, /* 299 = linux_futimesat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatat64, AUE_NULL }, /* 300 = linux_fstatat64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unlinkat, AUE_NULL }, /* 301 = linux_unlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_renameat, AUE_NULL }, /* 302 = linux_renameat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_linkat, AUE_NULL }, /* 303 = linux_linkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_symlinkat, AUE_NULL }, /* 304 = linux_symlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_readlinkat, AUE_NULL }, /* 305 = linux_readlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchmodat, AUE_NULL }, /* 306 = linux_fchmodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_faccessat, AUE_NULL }, /* 307 = linux_faccessat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_pselect6, AUE_NULL }, /* 308 = linux_pselect6 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ppoll, AUE_NULL }, /* 309 = linux_ppoll */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unshare, AUE_NULL }, /* 310 = linux_unshare */ }; ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#8 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -418,61 +418,61 @@ 251 AUE_NULL UNIMPL 252 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit_group \ sys_exit_args void -253 AUE_NULL UNIMPL linux_lookup_dcookie -254 AUE_NULL UNIMPL linux_epoll_create -255 AUE_NULL UNIMPL linux_epoll_ctl -256 AUE_NULL UNIMPL linux_epoll_wait -257 AUE_NULL UNIMPL linux_remap_file_pages -258 AUE_NULL UNIMPL linux_set_tid_address -259 AUE_NULL UNIMPL linux_timer_create -260 AUE_NULL UNIMPL linux_timer_settime -261 AUE_NULL UNIMPL linux_timer_gettime -262 AUE_NULL UNIMPL linux_timer_getoverrun -263 AUE_NULL UNIMPL linux_timer_delete -264 AUE_CLOCK_SETTIME UNIMPL linux_clock_settime -265 AUE_NULL UNIMPL linux_clock_gettime -266 AUE_NULL UNIMPL linux_clock_getres -267 AUE_NULL UNIMPL linux_clock_nanosleep -268 AUE_NULL UNIMPL linux_statfs64 -269 AUE_NULL UNIMPL linux_fstatfs64 -270 AUE_NULL UNIMPL linux_tgkill /* 270 */ -271 AUE_NULL UNIMPL linux_utimes -272 AUE_NULL UNIMPL linux_fadvise64_64 -273 AUE_NULL UNIMPL linux_ni_syscall /* linux_vserver */ -274 AUE_NULL UNIMPL linux_mbind -275 AUE_NULL UNIMPL linux_get_mempolicy -276 AUE_NULL UNIMPL linux_set_mempolicy -277 AUE_NULL UNIMPL linux_mq_open -278 AUE_NULL UNIMPL linux_mq_unlink -279 AUE_NULL UNIMPL linux_mq_timedsend -280 AUE_NULL UNIMPL linux_mq_timedreceive /* 280 */ -281 AUE_NULL UNIMPL linux_mq_notify -282 AUE_NULL UNIMPL linux_mq_getsetattr -283 AUE_NULL UNIMPL linux_kexec_load -284 AUE_NULL UNIMPL linux_waitid -285 AUE_NULL UNIMPL linux_ni_syscall /* 285 */ /* available */ -286 AUE_NULL UNIMPL linux_add_key -287 AUE_NULL UNIMPL linux_request_key -288 AUE_NULL UNIMPL linux_keyctl -289 AUE_NULL UNIMPL linux_ioprio_set -290 AUE_NULL UNIMPL linux_ioprio_get /* 290 */ -291 AUE_NULL UNIMPL linux_inotify_init -292 AUE_NULL UNIMPL linux_inotify_add_watch -293 AUE_NULL UNIMPL linux_inotify_rm_watch -294 AUE_NULL UNIMPL linux_migrate_pages -295 AUE_NULL UNIMPL linux_openat /* 295 */ -296 AUE_NULL UNIMPL linux_mkdirat -297 AUE_NULL UNIMPL linux_mknodat -298 AUE_NULL UNIMPL linux_fchownat -299 AUE_NULL UNIMPL linux_futimesat -300 AUE_NULL UNIMPL linux_fstatat64 /* 300 */ -301 AUE_NULL UNIMPL linux_unlinkat -302 AUE_NULL UNIMPL linux_renameat -303 AUE_NULL UNIMPL linux_linkat -304 AUE_NULL UNIMPL linux_symlinkat -305 AUE_NULL UNIMPL linux_readlinkat /* 305 */ -306 AUE_NULL UNIMPL linux_fchmodat -307 AUE_NULL UNIMPL linux_faccessat -308 AUE_NULL UNIMPL linux_pselect6 -309 AUE_NULL UNIMPL linux_ppoll -310 AUE_NULL UNIMPL linux_unshare /* 310 */ +253 AUE_NULL MSTD { int linux_lookup_dcookie(void); } +254 AUE_NULL MSTD { int linux_epoll_create(void); } +255 AUE_NULL MSTD { int linux_epoll_ctl(void); } +256 AUE_NULL MSTD { int linux_epoll_wait(void); } +257 AUE_NULL MSTD { int linux_remap_file_pages(void); } +258 AUE_NULL MSTD { int linux_set_tid_address(void); } +259 AUE_NULL MSTD { int linux_timer_create(void); } +260 AUE_NULL MSTD { int linux_timer_settime(void); } +261 AUE_NULL MSTD { int linux_timer_gettime(void); } +262 AUE_NULL MSTD { int linux_timer_getoverrun(void); } +263 AUE_NULL MSTD { int linux_timer_delete(void); } +264 AUE_CLOCK_SETTIME MSTD { int linux_clock_settime(void); } +265 AUE_NULL MSTD { int linux_clock_gettime(void); } +266 AUE_NULL MSTD { int linux_clock_getres(void); } +267 AUE_NULL MSTD { int linux_clock_nanosleep(void); } +268 AUE_NULL MSTD { int linux_statfs64(void); } +269 AUE_NULL MSTD { int linux_fstatfs64(void); } +270 AUE_NULL MSTD { int linux_tgkill(void); } +271 AUE_NULL MSTD { int linux_utimes(void); } +272 AUE_NULL MSTD { int linux_fadvise64_64(void); } +273 AUE_NULL UNIMPL +274 AUE_NULL MSTD { int linux_mbind(void); } +275 AUE_NULL MSTD { int linux_get_mempolicy(void); } +276 AUE_NULL MSTD { int linux_set_mempolicy(void); } +277 AUE_NULL MSTD { int linux_mq_open(void); } +278 AUE_NULL MSTD { int linux_mq_unlink(void); } +279 AUE_NULL MSTD { int linux_mq_timedsend(void); } +280 AUE_NULL MSTD { int linux_mq_timedreceive(void); } +281 AUE_NULL MSTD { int linux_mq_notify(void); } +282 AUE_NULL MSTD { int linux_mq_getsetattr(void); } +283 AUE_NULL MSTD { int linux_kexec_load(void); } +284 AUE_NULL MSTD { int linux_waitid(void); } +285 AUE_NULL UNIMPL +286 AUE_NULL MSTD { int linux_add_key(void); } +287 AUE_NULL MSTD { int linux_request_key(void); } +288 AUE_NULL MSTD { int linux_keyctl(void); } +289 AUE_NULL MSTD { int linux_ioprio_set(void); } +290 AUE_NULL MSTD { int linux_ioprio_get(void); } +291 AUE_NULL MSTD { int linux_inotify_init(void); } +292 AUE_NULL MSTD { int linux_inotify_add_watch(void); } +293 AUE_NULL MSTD { int linux_inotify_rm_watch(void); } +294 AUE_NULL MSTD { int linux_migrate_pages(void); } +295 AUE_NULL MSTD { int linux_openat(void); } +296 AUE_NULL MSTD { int linux_mkdirat(void); } +297 AUE_NULL MSTD { int linux_mknodat(void); } +298 AUE_NULL MSTD { int linux_fchownat(void); } +299 AUE_NULL MSTD { int linux_futimesat(void); } +300 AUE_NULL MSTD { int linux_fstatat64(void); } +301 AUE_NULL MSTD { int linux_unlinkat(void); } +302 AUE_NULL MSTD { int linux_renameat(void); } +303 AUE_NULL MSTD { int linux_linkat(void); } +304 AUE_NULL MSTD { int linux_symlinkat(void); } +305 AUE_NULL MSTD { int linux_readlinkat(void); } +306 AUE_NULL MSTD { int linux_fchmodat(void); } +307 AUE_NULL MSTD { int linux_faccessat(void); } +308 AUE_NULL MSTD { int linux_pselect6(void); } +309 AUE_NULL MSTD { int linux_ppoll(void); } +310 AUE_NULL MSTD { int linux_unshare(void); } ==== //depot/projects/smpng/sys/arm/at91/at91rm92reg.h#3 (text) ==== @@ -22,7 +22,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $FreeBSD: src/sys/arm/at91/at91rm92reg.h,v 1.2 2006/03/18 01:38:25 imp Exp $ */ +/* $FreeBSD: src/sys/arm/at91/at91rm92reg.h,v 1.3 2006/06/20 20:13:40 imp Exp $ */ #ifndef AT91RM92REG_H_ #define AT91RM92REG_H_ @@ -341,4 +341,44 @@ #define AT91C_MASTER_CLOCK 60000000 +/* SDRAMC */ + +#define AT91RM92_SDRAMC_BASE 0xfffff90 +#define AT91RM92_SDRAMC_MR 0x00 +#define AT91RM92_SDRAMC_MR_MODE_NORMAL 0 +#define AT91RM92_SDRAMC_MR_MODE_NOP 1 +#define AT91RM92_SDRAMC_MR_MODE_PRECHARGE 2 +#define AT91RM92_SDRAMC_MR_MODE_LOAD_MODE_REGISTER 3 +#define AT91RM92_SDRAMC_MR_MODE_REFRESH 4 +#define AT91RM92_SDRAMC_MR_DBW_16 0x10 +#define AT91RM92_SDRAMC_TR 0x04 +#define AT91RM92_SDRAMC_CR 0x08 +#define AT91RM92_SDRAMC_CR_NC_8 0x0 +#define AT91RM92_SDRAMC_CR_NC_9 0x1 +#define AT91RM92_SDRAMC_CR_NC_10 0x2 +#define AT91RM92_SDRAMC_CR_NC_11 0x3 +#define AT91RM92_SDRAMC_CR_NC_MASK 0x00000003 +#define AT91RM92_SDRAMC_CR_NR_11 0x0 +#define AT91RM92_SDRAMC_CR_NR_12 0x4 +#define AT91RM92_SDRAMC_CR_NR_13 0x8 +#define AT91RM92_SDRAMC_CR_NR_RES 0xc +#define AT91RM92_SDRAMC_CR_NR_MASK 0x0000000c +#define AT91RM92_SDRAMC_CR_NB_2 0x00 +#define AT91RM92_SDRAMC_CR_NB_4 0x10 +#define AT91RM92_SDRAMC_CR_NB_MASK 0x00000010 +#define AT91RM92_SDRAMC_CR_NCAS_MASK 0x00000060 +#define AT91RM92_SDRAMC_CR_TWR_MASK 0x00000780 +#define AT91RM92_SDRAMC_CR_TRC_MASK 0x00007800 +#define AT91RM92_SDRAMC_CR_TRP_MASK 0x00078000 +#define AT91RM92_SDRAMC_CR_TRCD_MASK 0x00780000 +#define AT91RM92_SDRAMC_CR_TRAS_MASK 0x07800000 +#define AT91RM92_SDRAMC_CR_TXSR_MASK 0x78000000 +#define AT91RM92_SDRAMC_SRR 0x0c +#define AT91RM92_SDRAMC_LPR 0x10 +#define AT91RM92_SDRAMC_IER 0x14 +#define AT91RM92_SDRAMC_IDR 0x18 +#define AT91RM92_SDRAMC_IMR 0x1c +#define AT91RM92_SDRAMC_ISR 0x20 +#define AT91RM92_SDRAMC_IER_RES 0x1 + #endif /* AT91RM92REG_H_ */ ==== //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#5 (text) ==== @@ -47,7 +47,7 @@ #include "opt_ddb.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.6 2006/06/12 22:57:24 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.7 2006/06/20 20:13:40 imp Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -182,6 +182,24 @@ extern vm_offset_t ksym_start, ksym_end; #endif +static int +board_init(void) +{ + uint32_t memsize; + uint32_t *SDRAMC = (uint32_t *)(AT91RM92_BASE + AT91RM92_SDRAMC_BASE); + uint32_t cr, mr; + int banks, rows, cols, bw; /* log2 size */ + + cr = SDRAMC[AT91RM92_SDRAMC_CR / 4]; + mr = SDRAMC[AT91RM92_SDRAMC_MR / 4]; + bw = (mr & AT91RM92_SDRAMC_MR_DBW_16) ? 1 : 2; + banks = (cr & AT91RM92_SDRAMC_CR_NB_4) ? 2 : 1; + rows = ((cr & AT91RM92_SDRAMC_CR_NR_MASK) >> 2) + 11; + cols = (cr & AT91RM92_SDRAMC_CR_NC_MASK) + 8; + memsize = 1 << (cols + rows + banks + bw); + return (memsize); +} + void * initarm(void *arg, void *arg2) { @@ -192,7 +210,7 @@ vm_offset_t afterkern; int i = 0; uint32_t fake_preload[35]; - uint32_t memsize = 32 * 1024 * 1024; + uint32_t memsize; vm_offset_t lastaddr; #ifdef DDB vm_offset_t zstart = 0, zend = 0; @@ -341,7 +359,7 @@ cpu_tlb_flushID(); cpu_domains(DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)); cninit(); - + memsize = board_init(); /* * Pages were allocated during the secondary bootstrap for the * stacks for different CPU modes. ==== //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#39 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.104 2005/12/16 17:27:45 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.105 2006/06/20 20:37:17 jhb Exp $"); /* * This file implements a translation layer between the BSD networking ==== //depot/projects/smpng/sys/dev/digi/digi.c#34 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/digi/digi.c,v 1.61 2006/05/25 22:04:46 jhb Exp $ + * $FreeBSD: src/sys/dev/digi/digi.c,v 1.62 2006/06/20 20:54:13 jhb Exp $ */ /*- ==== //depot/projects/smpng/sys/dev/mfi/mfi.c#7 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.7 2006/06/19 05:35:56 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.9 2006/06/20 21:06:05 ps Exp $"); #include "opt_mfi.h" @@ -58,10 +58,12 @@ static int mfi_polled_command(struct mfi_softc *, struct mfi_command *); static int mfi_get_controller_info(struct mfi_softc *); static int mfi_get_log_state(struct mfi_softc *, - struct mfi_evt_log_state *); + struct mfi_evt_log_state **); #ifdef NOTYET static int mfi_get_entry(struct mfi_softc *, int); #endif +static int mfi_dcmd_command(struct mfi_softc *, struct mfi_command **, + uint32_t, void **, size_t); static void mfi_data_cb(void *, bus_dma_segment_t *, int, int); static void mfi_startup(void *arg); static void mfi_intr(void *arg); @@ -441,6 +443,53 @@ } static int +mfi_dcmd_command(struct mfi_softc *sc, struct mfi_command **cmp, uint32_t opcode, + void **bufp, size_t bufsize) +{ + struct mfi_command *cm; + struct mfi_dcmd_frame *dcmd; + void *buf = NULL; + + mtx_assert(&sc->mfi_io_lock, MA_OWNED); + + cm = mfi_dequeue_free(sc); + if (cm == NULL) + return (EBUSY); + + if ((bufsize > 0) && (bufp != NULL)) { + if (*bufp == NULL) { + buf = malloc(bufsize, M_MFIBUF, M_NOWAIT|M_ZERO); + if (buf == NULL) { + mfi_release_command(cm); + return (ENOMEM); + } + *bufp = buf; + } else { + buf = *bufp; + } + } + + dcmd = &cm->cm_frame->dcmd; + bzero(dcmd->mbox, MFI_MBOX_SIZE); + dcmd->header.cmd = MFI_CMD_DCMD; + dcmd->header.timeout = 0; + dcmd->header.flags = 0; + dcmd->header.data_len = bufsize; + dcmd->opcode = opcode; + cm->cm_sg = &dcmd->sgl; + cm->cm_total_frame_size = MFI_DCMD_FRAME_SIZE; + cm->cm_flags = 0; + cm->cm_data = buf; + cm->cm_private = buf; + cm->cm_len = bufsize; + + *cmp = cm; + if ((bufp != NULL) && (*bufp == NULL) && (buf != NULL)) + *bufp = buf; + return (0); +} + +static int mfi_comms_init(struct mfi_softc *sc) { struct mfi_command *cm; @@ -483,35 +532,20 @@ static int mfi_get_controller_info(struct mfi_softc *sc) { - struct mfi_command *cm; - struct mfi_dcmd_frame *dcmd; - struct mfi_ctrl_info *ci; + struct mfi_command *cm = NULL; + struct mfi_ctrl_info *ci = NULL; uint32_t max_sectors_1, max_sectors_2; int error; - if ((cm = mfi_dequeue_free(sc)) == NULL) - return (EBUSY); - - ci = malloc(sizeof(struct mfi_ctrl_info), M_MFIBUF, M_NOWAIT | M_ZERO); - if (ci == NULL) { - mfi_release_command(cm); - return (ENOMEM); - } - - dcmd = &cm->cm_frame->dcmd; - bzero(dcmd->mbox, MFI_MBOX_SIZE); - dcmd->header.cmd = MFI_CMD_DCMD; - dcmd->header.timeout = 0; - dcmd->header.data_len = sizeof(struct mfi_ctrl_info); - dcmd->opcode = MFI_DCMD_CTRL_GETINFO; - cm->cm_sg = &dcmd->sgl; - cm->cm_total_frame_size = MFI_DCMD_FRAME_SIZE; + mtx_lock(&sc->mfi_io_lock); + error = mfi_dcmd_command(sc, &cm, MFI_DCMD_CTRL_GETINFO, + (void **)&ci, sizeof(*ci)); + if (error) + goto out; cm->cm_flags = MFI_CMD_DATAIN | MFI_CMD_POLLED; - cm->cm_data = ci; - cm->cm_len = sizeof(struct mfi_ctrl_info); if ((error = mfi_mapcmd(sc, cm)) != 0) { - device_printf(sc->mfi_dev, "Controller info buffer map failed"); + device_printf(sc->mfi_dev, "Controller info buffer map failed\n"); free(ci, M_MFIBUF); mfi_release_command(cm); return (error); @@ -522,9 +556,8 @@ device_printf(sc->mfi_dev, "Failed to get controller info\n"); sc->mfi_max_io = (sc->mfi_total_sgl - 1) * PAGE_SIZE / MFI_SECTOR_LEN; - free(ci, M_MFIBUF); - mfi_release_command(cm); - return (0); + error = 0; + goto out; } bus_dmamap_sync(sc->mfi_buffer_dmat, cm->cm_dmamap, @@ -535,55 +568,45 @@ max_sectors_2 = ci->max_request_size; sc->mfi_max_io = min(max_sectors_1, max_sectors_2); - free(ci, M_MFIBUF); - mfi_release_command(cm); - +out: + if (ci) + free(ci, M_MFIBUF); + if (cm) + mfi_release_command(cm); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jun 20 21:26:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F74E16A492; Tue, 20 Jun 2006 21:26:28 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3439E16A47B for ; Tue, 20 Jun 2006 21:26:28 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D817243D77 for ; Tue, 20 Jun 2006 21:26:27 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KLQRTj074974 for ; Tue, 20 Jun 2006 21:26:27 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KLQRjp074971 for perforce@freebsd.org; Tue, 20 Jun 2006 21:26:27 GMT (envelope-from jhb@freebsd.org) Date: Tue, 20 Jun 2006 21:26:27 GMT Message-Id: <200606202126.k5KLQRjp074971@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99699 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 21:26:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=99699 Change 99699 by jhb@jhb_mutex on 2006/06/20 21:26:19 Revert to CVS. Affected files ... .. //depot/projects/smpng/sys/kern/subr_firmware.c#12 edit Differences ... ==== //depot/projects/smpng/sys/kern/subr_firmware.c#12 (text+ko) ==== @@ -221,7 +221,8 @@ if (fp == NULL) break; file = fp->file; - clearentry(fp); + /* No longer explicitly loaded. */ + fp->file = NULL; mtx_unlock(&firmware_mtx); linker_release_module(NULL, NULL, file); From owner-p4-projects@FreeBSD.ORG Tue Jun 20 21:30:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E567616A47C; Tue, 20 Jun 2006 21:30:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C11E616A474 for ; Tue, 20 Jun 2006 21:30:33 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4584543D6D for ; Tue, 20 Jun 2006 21:30:33 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KLUXYa075181 for ; Tue, 20 Jun 2006 21:30:33 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KLUWQh075178 for perforce@freebsd.org; Tue, 20 Jun 2006 21:30:32 GMT (envelope-from imp@freebsd.org) Date: Tue, 20 Jun 2006 21:30:32 GMT Message-Id: <200606202130.k5KLUWQh075178@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 99700 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 21:30:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=99700 Change 99700 by imp@imp_lighthouse on 2006/06/20 21:29:46 p4 edit is your friend... Trust your friend... Re-implement the workaround for the MII problem that we seem to be having... Wait up to 10seconds for link, and reset the MII if we don't get link in that time and try again... Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/emac.c#19 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/emac.c#19 (text+ko) ==== @@ -391,20 +391,6 @@ unsigned sec; int i; #endif -#if 0 - -// AT91F_MII_WritePhy(pEmac, 20, 0x70); - AT91F_MII_WritePhy(pEmac, 0x0, 0x3300); - while (AT91F_MII_ReadPhy(pEmac, 0x0) & (1 << 9)); - sec = GetSeconds(); - while (1) { - for (i = 0; i <= 0x18; i++) - printf("%x ", AT91F_MII_ReadPhy(pEmac, i)); - printf("\r\n"); - while (GetSeconds() <= sec + 2) continue; - sec = GetSeconds(); - } -#endif #ifdef BOOT_KB9202 stat2 = AT91F_MII_ReadPhy(pEmac, MII_STS2_REG); if (!(stat2 & MII_STS2_LINK)) @@ -416,21 +402,20 @@ update |= AT91C_EMAC_FD; #endif #ifdef BOOT_TSC -again:; - stat2 = AT91F_MII_ReadPhy(pEmac, MII_STS_REG); - stat2 = AT91F_MII_ReadPhy(pEmac, MII_STS_REG); - if (!(stat2 & MII_STS_LINK_STAT)) { - sec = GetSeconds(); - printf("emac: missing link status 0x%x\r\n", stat2); - for (i = 0; i <= 0x18; i++) - printf("%x ", AT91F_MII_ReadPhy(pEmac, i)); - printf("\r\n"); - while (GetSeconds() <= sec + 2) continue; - sec = GetSeconds(); - AT91F_MII_WritePhy(pEmac, 0x0, 0x3300); - while (AT91F_MII_ReadPhy(pEmac, 0x0) & (1 << 9)); - goto again; - return; + while (1) { + for (i = 0; i < 10; i++) { + stat2 = AT91F_MII_ReadPhy(pEmac, MII_STS_REG); + if (stat2 & MII_STS_LINK_STAT) + break; + printf("."); + sec = GetSeconds(); + while (GetSeconds() <= sec) continue; + } + if (stat2 & MII_STS_LINK_STAT) + break; + printf("Resetting MII..."); + AT91F_MII_WritePhy(pEmac, 0x0, 0x8000); + while (AT91F_MII_ReadPhy(pEmac, 0x0) & 0x8000) continue; } printf("emac: link"); stat2 = AT91F_MII_ReadPhy(pEmac, MII_SPEC_STS_REG); From owner-p4-projects@FreeBSD.ORG Tue Jun 20 21:37:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADB3916A47D; Tue, 20 Jun 2006 21:37:45 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8C5EC16A47A for ; Tue, 20 Jun 2006 21:37:45 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0364243D53 for ; Tue, 20 Jun 2006 21:37:44 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5KLbhhF075669 for ; Tue, 20 Jun 2006 21:37:43 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5KLbheh075666 for perforce@freebsd.org; Tue, 20 Jun 2006 21:37:43 GMT (envelope-from jhb@freebsd.org) Date: Tue, 20 Jun 2006 21:37:43 GMT Message-Id: <200606202137.k5KLbheh075666@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99703 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 20 Jun 2006 21:37:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=99703 Change 99703 by jhb@jhb_mutex on 2006/06/20 21:36:58 IFC @99701 - more loopback. Affected files ... .. //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#40 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#73 integrate .. //depot/projects/smpng/sys/kern/link_elf.c#38 integrate .. //depot/projects/smpng/sys/kern/link_elf_obj.c#13 integrate .. //depot/projects/smpng/sys/net/if_bridge.c#31 integrate Differences ... ==== //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#40 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.105 2006/06/20 20:37:17 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.106 2006/06/20 21:31:38 jhb Exp $"); /* * This file implements a translation layer between the BSD networking ==== //depot/projects/smpng/sys/kern/kern_linker.c#73 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.133 2006/06/20 20:54:13 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.134 2006/06/20 21:31:38 jhb Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" ==== //depot/projects/smpng/sys/kern/link_elf.c#38 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/link_elf.c,v 1.87 2005/12/18 04:52:36 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/link_elf.c,v 1.88 2006/06/20 21:31:38 jhb Exp $"); #include "opt_gdb.h" #include "opt_mac.h" ==== //depot/projects/smpng/sys/kern/link_elf_obj.c#13 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/link_elf_obj.c,v 1.90 2005/12/18 04:52:36 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/link_elf_obj.c,v 1.91 2006/06/20 21:31:38 jhb Exp $"); #include "opt_ddb.h" #include "opt_mac.h" ==== //depot/projects/smpng/sys/net/if_bridge.c#31 (text+ko) ==== @@ -80,7 +80,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/net/if_bridge.c,v 1.64 2006/06/19 02:25:11 thompsa Exp $"); +__FBSDID("$FreeBSD: src/sys/net/if_bridge.c,v 1.65 2006/06/20 21:28:18 thompsa Exp $"); #include "opt_inet.h" #include "opt_inet6.h" @@ -1363,6 +1363,7 @@ switch (ifs->if_type) { case IFT_ETHER: + case IFT_GIF: case IFT_L2VLAN: break; default: From owner-p4-projects@FreeBSD.ORG Wed Jun 21 01:11:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CCCBA16A482; Wed, 21 Jun 2006 01:11:27 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 964EC16A47F for ; Wed, 21 Jun 2006 01:11:27 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F3C2B43D6D for ; Wed, 21 Jun 2006 01:11:23 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L1BNVa004298 for ; Wed, 21 Jun 2006 01:11:23 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L1BNUH004295 for perforce@freebsd.org; Wed, 21 Jun 2006 01:11:23 GMT (envelope-from wsalamon@computer.org) Date: Wed, 21 Jun 2006 01:11:23 GMT Message-Id: <200606210111.k5L1BNUH004295@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 99716 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 01:11:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=99716 Change 99716 by wsalamon@vh3 on 2006/06/21 01:10:24 Add the ACL, EXTATTR, SCHED, and other events recently added to audit_kevents.h. Affected files ... .. //depot/projects/trustedbsd/openbsm/etc/audit_event#11 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/etc/audit_event#11 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $P4: //depot/projects/trustedbsd/openbsm/etc/audit_event#10 $ +# $P4: //depot/projects/trustedbsd/openbsm/etc/audit_event#11 $ # 0:AUE_NULL:indir system call:no 1:AUE_EXIT:exit(2):pc @@ -314,6 +314,49 @@ 378:AUE_KEVENT:kevent(2):no 379:AUE_FSYNC:fsync(2):fm 380:AUE_NMOUNT:nmount(2):ad +381:AUE_BDFLUSH:bdflush(2):ad +382:AUE_SETFSUID:setfsuid(2):ot +383:AUE_SETFSGID:setfsgid(2):ot +384:AUE_PERSONALITY:personality(2):pc +385:AUE_SCHED_GETSCHEDULER:getscheduler(2):ad +386:AUE_SCHED_SETSCHEDULER:setscheduler(2):ad +387:AUE_PRCTL:prctl(2):pc +388:AUE_GETCWD:getcwd(2):pc +389:AUE_CAPGET:capget(2):pc +390:AUE_CAPSET:capset(2):pc +391:AUE_PIVOT_ROOT:pivot_root(2):pc +392:AUE_RTPRIO::rtprio(2):pc +393:AUE_SCHED_GETPARAM:sched_getparam(2):ad +394:AUE_SCHED_SETPARAM:sched_setparam(2):ad +395:AUE_SCHED_GET_PRIORITY_MAX:sched_get_priority_max(2):ad +396:AUE_SCHED_GET_PRIORITY_MIN:sched_get_priority_min(2):ad +397:AUE_SCHED_RR_GET_INTERVAL:sched_rr_get_interval(2):ad +398:AUE_ACL_GET_FILE:acl_get_file(2):fa +399:AUE_ACL_SET_FILE:acl_set_file(2):fm +400:AUE_ACL_GET_FD:acl_get_fd(2):fa +401:AUE_ACL_SET_FD:acl_set_fd(2):fm +402:AUE_ACL_DELETE_FILE:acl_delete_file(2):fm +403:AUE_ACL_DELETE_FD:acl_delete_fd(2):fm +404:AUE_ACL_CHECK_FILE:acl_aclcheck_file(2):fa +405:AUE_ACL_CHECK_FD:acl_aclcheck_fd(2):fa +406:AUE_ACL_GET_LINK:acl_get_link(2):fa +407:AUE_ACL_SET_LINK:acl_set_link(2):fm +408:AUE_ACL_DELETE_LINK:acl_delete_link(2):fm +409:AUE_ACL_CHECK_LINK:acl_aclcheck_link(2):fa +410:AUE_SYSARCH:sysarch(2):na +411:AUE_EXTATTRCTL:extattrctl(2):fm +412:AUE_EXTATTR_GET_FILE:extattr_get_file(2):fa +413:AUE_EXTATTR_SET_FILE:extattr_set_file(2):fm +414:AUE_EXTATTR_LIST_FILE:extattr_list_file(2):fa +415:AUE_EXTATTR_DELETE_FILE:extattr_delete_file(2):fm +416:AUE_EXTATTR_GET_FD:extattr_get_fd(2):fa +417:AUE_EXTATTR_SET_FD:extattr_set_fd(2):fm +418:AUE_EXTATTR_LIST_FD:extattr_list_fd(2):fa +419:AUE_EXTATTR_DELETE_FD:extattr_delete_fd(2):fm +420:AUE_EXTATTR_GET_LINK:extattr_get_link(2):fa +421:AUE_EXTATTR_SET_LINK:extattr_set_link(2):fm +422:AUE_EXTATTR_LIST_LINK:extattr_list_link(2):fa +423:AUE_EXTATTR_DELETE_LINK:extattr_delete_link(2):fm 6152:AUE_login:login - local:lo 6153:AUE_logout:logout - local:lo 6159:AUE_su:su(1):lo From owner-p4-projects@FreeBSD.ORG Wed Jun 21 01:17:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F7E216A47C; Wed, 21 Jun 2006 01:17:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7938316A47A for ; Wed, 21 Jun 2006 01:17:32 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1C52F43D45 for ; Wed, 21 Jun 2006 01:17:32 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L1HVdR004590 for ; Wed, 21 Jun 2006 01:17:31 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L1HVOd004587 for perforce@freebsd.org; Wed, 21 Jun 2006 01:17:31 GMT (envelope-from wsalamon@computer.org) Date: Wed, 21 Jun 2006 01:17:31 GMT Message-Id: <200606210117.k5L1HVOd004587@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 99717 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 01:17:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=99717 Change 99717 by wsalamon@vh3 on 2006/06/21 01:17:11 Integrate recent audit events from OpenBSM into trustedbsd/audit3. Affected files ... .. //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#12 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#12 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#11 $ +# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#12 $ # $FreeBSD: src/contrib/openbsm/etc/audit_event,v 1.2 2006/03/26 01:44:35 rwatson Exp $ # 0:AUE_NULL:indir system call:no @@ -315,6 +315,49 @@ 378:AUE_KEVENT:kevent(2):no 379:AUE_FSYNC:fsync(2):fm 380:AUE_NMOUNT:nmount(2):ad +381:AUE_BDFLUSH:bdflush(2):ad +382:AUE_SETFSUID:setfsuid(2):ot +383:AUE_SETFSGID:setfsgid(2):ot +384:AUE_PERSONALITY:personality(2):pc +385:AUE_SCHED_GETSCHEDULER:getscheduler(2):ad +386:AUE_SCHED_SETSCHEDULER:setscheduler(2):ad +387:AUE_PRCTL:prctl(2):pc +388:AUE_GETCWD:getcwd(2):pc +389:AUE_CAPGET:capget(2):pc +390:AUE_CAPSET:capset(2):pc +391:AUE_PIVOT_ROOT:pivot_root(2):pc +392:AUE_RTPRIO::rtprio(2):pc +393:AUE_SCHED_GETPARAM:sched_getparam(2):ad +394:AUE_SCHED_SETPARAM:sched_setparam(2):ad +395:AUE_SCHED_GET_PRIORITY_MAX:sched_get_priority_max(2):ad +396:AUE_SCHED_GET_PRIORITY_MIN:sched_get_priority_min(2):ad +397:AUE_SCHED_RR_GET_INTERVAL:sched_rr_get_interval(2):ad +398:AUE_ACL_GET_FILE:acl_get_file(2):fa +399:AUE_ACL_SET_FILE:acl_set_file(2):fm +400:AUE_ACL_GET_FD:acl_get_fd(2):fa +401:AUE_ACL_SET_FD:acl_set_fd(2):fm +402:AUE_ACL_DELETE_FILE:acl_delete_file(2):fm +403:AUE_ACL_DELETE_FD:acl_delete_fd(2):fm +404:AUE_ACL_CHECK_FILE:acl_aclcheck_file(2):fa +405:AUE_ACL_CHECK_FD:acl_aclcheck_fd(2):fa +406:AUE_ACL_GET_LINK:acl_get_link(2):fa +407:AUE_ACL_SET_LINK:acl_set_link(2):fm +408:AUE_ACL_DELETE_LINK:acl_delete_link(2):fm +409:AUE_ACL_CHECK_LINK:acl_aclcheck_link(2):fa +410:AUE_SYSARCH:sysarch(2):na +411:AUE_EXTATTRCTL:extattrctl(2):fm +412:AUE_EXTATTR_GET_FILE:extattr_get_file(2):fa +413:AUE_EXTATTR_SET_FILE:extattr_set_file(2):fm +414:AUE_EXTATTR_LIST_FILE:extattr_list_file(2):fa +415:AUE_EXTATTR_DELETE_FILE:extattr_delete_file(2):fm +416:AUE_EXTATTR_GET_FD:extattr_get_fd(2):fa +417:AUE_EXTATTR_SET_FD:extattr_set_fd(2):fm +418:AUE_EXTATTR_LIST_FD:extattr_list_fd(2):fa +419:AUE_EXTATTR_DELETE_FD:extattr_delete_fd(2):fm +420:AUE_EXTATTR_GET_LINK:extattr_get_link(2):fa +421:AUE_EXTATTR_SET_LINK:extattr_set_link(2):fm +422:AUE_EXTATTR_LIST_LINK:extattr_list_link(2):fa +423:AUE_EXTATTR_DELETE_LINK:extattr_delete_link(2):fm 6152:AUE_login:login - local:lo 6153:AUE_logout:logout - local:lo 6159:AUE_su:su(1):lo From owner-p4-projects@FreeBSD.ORG Wed Jun 21 05:16:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 54A7616A47D; Wed, 21 Jun 2006 05:16:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 16BDF16A474 for ; Wed, 21 Jun 2006 05:16:36 +0000 (UTC) (envelope-from kip.macy@gmail.com) Received: from nz-out-0102.google.com (nz-out-0102.google.com [64.233.162.195]) by mx1.FreeBSD.org (Postfix) with ESMTP id 15F3443D48 for ; Wed, 21 Jun 2006 05:16:34 +0000 (GMT) (envelope-from kip.macy@gmail.com) Received: by nz-out-0102.google.com with SMTP id x3so76564nzd for ; Tue, 20 Jun 2006 22:16:34 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=DrAyNRtaYEx1TIZpcLy9jf8xwB5toZ90k81BoAgRD+tRuCBNcbohe4x3brB5FL5PleschRWtoLy2IHV/7Ef1OmNd4cBfEjdf1FZYgtzitO9ECHC+u4tVXo9l1ueZttrnkft6PYXNLeltY/XSGHrSvXKfEiHCCJ9R7blxV3THixs= Received: by 10.65.244.15 with SMTP id w15mr229516qbr; Tue, 20 Jun 2006 22:16:34 -0700 (PDT) Received: by 10.65.225.9 with HTTP; Tue, 20 Jun 2006 22:16:34 -0700 (PDT) Message-ID: Date: Tue, 20 Jun 2006 22:16:34 -0700 From: "Kip Macy" To: "Andrew R. Reiter" In-Reply-To: <20060619193506.F40529@fledge.watson.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <200606192330.k5JNUMVL029897@repoman.freebsd.org> <20060619193506.F40529@fledge.watson.org> Cc: Perforce Change Reviews , Kip Macy Subject: Re: PERFORCE change 99646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: kmacy@fsmware.com List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Jun 2006 05:16:36 -0000 Actually rwlocks would probably be best - but they're sx locks right now to make WITNESS happy. Any speedup that comes won't come from being shared, as the allproc lock was shared, it will come from making the process lists per-cpu so that fork, exit, and functions scanning the process lists won't be serialized across all cpus. -Kip On 6/19/06, Andrew R. Reiter wrote: > On Mon, 19 Jun 2006, Kip Macy wrote: > > :http://perforce.freebsd.org/chv.cgi?CH=99646 > : > :Change 99646 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/19 23:29:26 > : > : convert pcpu allproc locks to sx to avoid having to fix cases where > : sx locks are being acquired afterwards > : add 2 missed unlocks > > Nice. Good thought. I have seen the recent "benchmark" SMP emails and am > not aggro like DT, so I don't care about too much detail; however, do you > believe the switch from straight mutex locks to shared/exclusive locks > will assist in some performance areas? > > Thanks for your work, > Andrew > > : > :Affected files ... > : > :.. //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 edit > :.. //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 edit > :.. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 edit > :.. //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 edit > :.. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 edit > :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 edit > :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 edit > :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 edit > : > :Differences ... > : > :==== //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 (text+ko) ==== > : > :@@ -568,18 +568,18 @@ > : /* next process */ > : if (*p == NULL) { > : *p = LIST_FIRST(&(*pc)->pc_allproc); > :- PCPU_PROC_LOCK(*pc); > :+ PCPU_PROC_RLOCK(*pc); > : } else if ((LIST_NEXT(*p, p_list) == NULL) && (SLIST_NEXT(*pc, pc_allcpu) != NULL)) { > :- PCPU_PROC_UNLOCK(*pc); > :+ PCPU_PROC_RUNLOCK(*pc); > : *pc = SLIST_NEXT(*pc, pc_allcpu); > :- PCPU_PROC_LOCK(*pc); > :+ PCPU_PROC_RLOCK(*pc); > : *p = LIST_FIRST(&(*pc)->pc_allproc); > : } else { > : *p = LIST_NEXT(*p, p_list); > : } > : /* out of processes: next node */ > : if (*p == NULL) { > :- PCPU_PROC_UNLOCK(*pc); > :+ PCPU_PROC_RUNLOCK(*pc); > : *pn = (*pn)->pn_next; > : } > : } > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 (text+ko) ==== > : > :@@ -147,14 +147,14 @@ > : > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > :- > : if (p->p_sysent == entry->sysvec) { > : rval = TRUE; > : break; > : } > : } > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 (text+ko) ==== > : > :@@ -539,12 +539,12 @@ > : > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : microuptime(&p->p_stats->p_start); > : p->p_rux.rux_runtime = 0; > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : PCPU_SET(switchtime, cpu_ticks()); > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 (text+ko) ==== > : > :@@ -2357,7 +2357,7 @@ > : > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : fdp = fdhold(p); > : if (fdp == NULL) > :@@ -2379,7 +2379,7 @@ > : while (nrele--) > : vrele(olddp); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : if (rootvnode == olddp) { > :@@ -2459,7 +2459,7 @@ > : xf.xf_size = sizeof(xf); > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : if (p->p_state == PRS_NEW) > : continue; > :@@ -2496,7 +2496,7 @@ > : if (error) > : break; > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : return (error); > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 (text+ko) ==== > : > :@@ -403,15 +403,10 @@ > : * Remove proc from allproc queue and pidhash chain. > : * Place onto zombproc. Unlink from parent's child list. > : */ > :- if (p->p_pcpu == NULL) > :- panic("process: %d has null pcpu pointer", p->p_pid); > :- if (!mtx_initialized(&(p->p_pcpu->pc_allproc_lock))) > :- panic("null allproc lock on %d", p->p_pcpu->pc_cpuid); > :- > :- PCPU_PROC_LOCK(p->p_pcpu); > :+ PCPU_PROC_WLOCK(p->p_pcpu); > : LIST_REMOVE(p, p_list); > : LIST_INSERT_HEAD(&p->p_pcpu->pc_zombproc, p, p_list); > :- PCPU_PROC_UNLOCK(p->p_pcpu); > :+ PCPU_PROC_WUNLOCK(p->p_pcpu); > : > : mtx_lock(&pidhash_lock); > : LIST_REMOVE(p, p_hash); > :@@ -770,9 +765,9 @@ > : * we have an exclusive reference. > : */ > : > :- PCPU_PROC_LOCK(p->p_pcpu); > :+ PCPU_PROC_WLOCK(p->p_pcpu); > : LIST_REMOVE(p, p_list); /* off zombproc */ > :- PCPU_PROC_UNLOCK(p->p_pcpu); > :+ PCPU_PROC_WUNLOCK(p->p_pcpu); > : > : mtx_lock(&pidhash_lock); > : LIST_REMOVE(p, p_hash); /* off zombproc */ > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 (text+ko) ==== > : > :@@ -371,7 +371,7 @@ > : * than trypid, so we can avoid checking for a while. > : */ > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : > : p2 = LIST_FIRST(&pc->pc_allproc); > : again: > :@@ -385,7 +385,7 @@ > : trypid++; > : if (trypid >= pidchecked) { > : PROC_UNLOCK(p2); > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : goto retry; > : } > : } > :@@ -409,7 +409,7 @@ > : p2 = LIST_FIRST(&pc->pc_zombproc); > : goto again; > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : } > : mtx_unlock(&pidalloc_lock); > :@@ -429,9 +429,9 @@ > : AUDIT_ARG(pid, p2->p_pid); > : p2->p_pcpu = pcpup; > : > :- PCPU_PROC_LOCK(p2->p_pcpu); > :+ PCPU_PROC_WLOCK(p2->p_pcpu); > : LIST_INSERT_HEAD(&p2->p_pcpu->pc_allproc, p2, p_list); > :- PCPU_PROC_UNLOCK(p2->p_pcpu); > :+ PCPU_PROC_WUNLOCK(p2->p_pcpu); > : > : mtx_lock(&pidhash_lock); > : LIST_INSERT_HEAD(PIDHASH(p2->p_pid), p2, p_hash); > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 (text+ko) ==== > : > :@@ -640,7 +640,7 @@ > : if (ops == KTROP_CLEARFILE) { > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : PROC_LOCK(p); > : if (p->p_tracevp == vp) { > :@@ -664,7 +664,7 @@ > : } else > : PROC_UNLOCK(p); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : goto done; > :@@ -983,7 +983,7 @@ > : cred = NULL; > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : PROC_LOCK(p); > : if (p->p_tracevp == vp) { > :@@ -1001,7 +1001,7 @@ > : cred = NULL; > : } > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 (text+ko) ==== > : > :@@ -110,9 +110,10 @@ > : void > : procinit() > : { > :- > :+ > : sx_init(&allpcpu_lock, "allpcpu"); > : sx_init(&proctree_lock, "proctree"); > :+ sx_init(&pcpu_find(0)->pc_allproc_lock, "cpu allproc"); > : mtx_init(&ppeers_lock, "p_peers", NULL, MTX_DEF); > : mtx_init(&pidalloc_lock, "pidalloc", NULL, MTX_DEF); > : mtx_init(&pidhash_lock, "pidhash", NULL, MTX_DEF); > :@@ -1002,7 +1003,7 @@ > : sx_slock(&allpcpu_lock); > : for (doingzomb = 0 ; doingzomb < 2 ; doingzomb++) { > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : if (!doingzomb) > : p = LIST_FIRST(&pc->pc_allproc); > : else > :@@ -1105,12 +1106,12 @@ > : > : error = sysctl_out_proc(p, req, flags | doingzomb); > : if (error) { > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : sx_sunlock(&allpcpu_lock); > : return (error); > : } > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : } > : sx_sunlock(&allpcpu_lock); > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 (text+ko) ==== > : > :@@ -144,7 +144,7 @@ > : uap->who = td->td_ucred->cr_uid; > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : PROC_LOCK(p); > : if (!p_cansee(td, p) && > :@@ -154,7 +154,7 @@ > : } > : PROC_UNLOCK(p); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : break; > :@@ -236,9 +236,8 @@ > : uap->who = td->td_ucred->cr_uid; > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > :- > : PROC_LOCK(p); > : if (p->p_ucred->cr_uid == uap->who && > : !p_cansee(td, p)) { > :@@ -247,6 +246,7 @@ > : } > : PROC_UNLOCK(p); > : } > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : break; > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 (text+ko) ==== > : > :@@ -1648,7 +1648,7 @@ > : */ > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : PROC_LOCK(p); > : if (p->p_pid <= 1 || p->p_flag & P_SYSTEM || > :@@ -1663,7 +1663,7 @@ > : } > : PROC_UNLOCK(p); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : } else { > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 (text+ko) ==== > : > :@@ -392,7 +392,7 @@ > : realstathz = stathz ? stathz : hz; > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : /* > : * Prevent state changes and protect run queue. > :@@ -481,7 +481,7 @@ > : } /* end of thread loop */ > : mtx_unlock_spin(&sched_lock); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } /* end of process loop */ > : sx_sunlock(&allpcpu_lock); > : } > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 (text+ko) ==== > : > :@@ -75,7 +75,8 @@ > : cpuid_to_pcpu[cpuid] = pcpu; > : LIST_INIT(&pcpu->pc_allproc); > : LIST_INIT(&pcpu->pc_zombproc); > :- mtx_init(&pcpu->pc_allproc_lock, "cpu allproc", NULL, MTX_DEF); > :+ if (cpuid != 0) > :+ sx_init(&pcpu->pc_allproc_lock, "cpu allproc"); > : SLIST_INSERT_HEAD(&cpuhead, pcpu, pc_allcpu); > : cpu_pcpu_init(pcpu, cpuid, size); > : } > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 (text+ko) ==== > : > :@@ -275,13 +275,13 @@ > : */ > : { "proctree", &lock_class_sx }, > : { "allpcpu", &lock_class_sx }, > :+ { "cpu allproc", &lock_class_sx }, > : { NULL, NULL }, > : /* > : * Various mutexes > : */ > : { "Giant", &lock_class_mtx_sleep }, > : { "pidalloc", &lock_class_mtx_sleep }, > :- { "cpu allproc", &lock_class_mtx_sleep }, > : { "pidhash", &lock_class_mtx_sleep }, > : { "filedesc structure", &lock_class_mtx_sleep }, > : { "pipe mutex", &lock_class_mtx_sleep }, > : > :==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 (text+ko) ==== > : > :@@ -532,7 +532,7 @@ > : /* this is slow, should be optimized */ > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : PROC_LOCK(p); > : mtx_lock_spin(&sched_lock); > :@@ -545,6 +545,7 @@ > : break; /* proc lock held */ > : PROC_UNLOCK(p); > : } > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : if (p == NULL) { > : > :==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 (text+ko) ==== > : > :@@ -79,7 +79,7 @@ > : struct rwindow pc_tsbwbuf[2]; \ > : u_int pc_node; \ > : uint16_t pc_cpulist[MAXCPU]; \ > :- uint64_t pad[6]; > :+ uint64_t pad[7]; > : > : /* XXX SUN4V_FIXME - as we access the *_ra and *_size fields in quick > : * succession we _really_ want them to be L1 cache line size aligned > : > :==== //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 (text+ko) ==== > : > :@@ -43,12 +43,13 @@ > : > : #include > : #include > :+#include > : #include > : > : LIST_HEAD(proclist, proc); > : struct pcb; > : struct thread; > :- > :+struct sx; > : /* > : * This structure maps out the global data that needs to be kept on a > : * per-cpu basis. The members are accessed via the PCPU_GET/SET/PTR > :@@ -68,7 +69,7 @@ > : cpumask_t pc_other_cpus; /* Mask of all other cpus */ > : SLIST_ENTRY(pcpu) pc_allcpu; > : struct lock_list_entry *pc_spinlocks; > :- struct mtx pc_allproc_lock; /* lock for pcpu process list */ > :+ struct sx pc_allproc_lock; /* lock for pcpu process list */ > : struct proclist pc_zombproc; > : struct proclist pc_allproc; > : #ifdef KTR_PERCPU > : > :==== //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 (text+ko) ==== > : > :@@ -623,8 +623,10 @@ > : #define PROC_LOCK_ASSERT(p, type) mtx_assert(&(p)->p_mtx, (type)) > : > : /* lock pcpu process list */ > :-#define PCPU_PROC_LOCK(pc) mtx_lock(&(pc)->pc_allproc_lock) > :-#define PCPU_PROC_UNLOCK(pc) mtx_unlock(&(pc)->pc_allproc_lock) > :+#define PCPU_PROC_RLOCK(pc) sx_slock(&(pc)->pc_allproc_lock) > :+#define PCPU_PROC_RUNLOCK(pc) sx_sunlock(&(pc)->pc_allproc_lock) > :+#define PCPU_PROC_WLOCK(pc) sx_xlock(&(pc)->pc_allproc_lock) > :+#define PCPU_PROC_WUNLOCK(pc) sx_xunlock(&(pc)->pc_allproc_lock) > : > : > : /* Lock and unlock a process group. */ > : > :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 (text+ko) ==== > : > :@@ -678,7 +678,7 @@ > : ppri = INT_MIN; > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : if (p->p_sflag & (PS_INMEM | PS_SWAPPINGOUT | PS_SWAPPINGIN)) > : continue; > :@@ -709,7 +709,7 @@ > : } > : mtx_unlock_spin(&sched_lock); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : > :@@ -808,7 +808,7 @@ > : retry: > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : > : struct vmspace *vm; > :@@ -930,7 +930,7 @@ > : PROC_UNLOCK(p); > : vm_map_unlock(&vm->vm_map); > : vmspace_free(vm); > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : sx_sunlock(&allpcpu_lock); > : goto retry; > : } > :@@ -944,7 +944,7 @@ > : vmspace_free(vm); > : continue; > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : /* > : > :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 (text+ko) ==== > : > :@@ -143,7 +143,7 @@ > : */ > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : if (p->p_flag & P_SYSTEM) > : continue; > :@@ -209,7 +209,7 @@ > : if (paging) > : totalp->t_pw++; > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : /* > : > :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 (text+ko) ==== > : > :@@ -1224,7 +1224,7 @@ > : bigsize = 0; > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : int breakout; > : > :@@ -1281,7 +1281,7 @@ > : } else > : PROC_UNLOCK(p); > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : if (bigproc != NULL) { > :@@ -1576,7 +1576,7 @@ > : > : sx_slock(&allpcpu_lock); > : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { > :- PCPU_PROC_LOCK(pc); > :+ PCPU_PROC_RLOCK(pc); > : LIST_FOREACH(p, &pc->pc_allproc, p_list) { > : vm_pindex_t limit, size; > : > :@@ -1630,7 +1630,7 @@ > : &p->p_vmspace->vm_map, limit); > : } > : } > :- PCPU_PROC_UNLOCK(pc); > :+ PCPU_PROC_RUNLOCK(pc); > : } > : sx_sunlock(&allpcpu_lock); > : } > : > : > > -- > arr@watson.org > From owner-p4-projects@FreeBSD.ORG Wed Jun 21 05:19:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 52DC416A47E; Wed, 21 Jun 2006 05:19:21 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2DDCF16A47B; Wed, 21 Jun 2006 05:19:21 +0000 (UTC) (envelope-from arr@watson.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7AE9843D48; Wed, 21 Jun 2006 05:19:20 +0000 (GMT) (envelope-from arr@watson.org) Received: from fledge.watson.org (localhost.watson.org [127.0.0.1]) by fledge.watson.org (8.13.6/8.13.6) with ESMTP id k5L5JJfG053607; Wed, 21 Jun 2006 01:19:19 -0400 (EDT) (envelope-from arr@watson.org) Received: from localhost (arr@localhost) by fledge.watson.org (8.13.6/8.13.6/Submit) with ESMTP id k5L5JJrs053604; Wed, 21 Jun 2006 01:19:19 -0400 (EDT) (envelope-from arr@watson.org) X-Authentication-Warning: fledge.watson.org: arr owned process doing -bs Date: Wed, 21 Jun 2006 01:19:19 -0400 (EDT) From: "Andrew R. Reiter" To: kmacy@fsmware.com In-Reply-To: Message-ID: <20060621011854.L51425@fledge.watson.org> References: <200606192330.k5JNUMVL029897@repoman.freebsd.org> <20060619193506.F40529@fledge.watson.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: Perforce Change Reviews , Kip Macy Subject: Re: PERFORCE change 99646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 05:19:21 -0000 On Tue, 20 Jun 2006, Kip Macy wrote: :Actually rwlocks would probably be best - but they're sx locks right :now to make WITNESS happy. Any speedup that comes won't come from :being shared, as the allproc lock was shared, it will come from making :the process lists per-cpu so that fork, exit, and functions scanning :the process lists won't be serialized across all cpus. ah; yes. PCPU would be much nicer. Thanks for responding. : :On 6/19/06, Andrew R. Reiter wrote: :> On Mon, 19 Jun 2006, Kip Macy wrote: :> :> :http://perforce.freebsd.org/chv.cgi?CH=99646 :> : :> :Change 99646 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/19 23:29:26 :> : :> : convert pcpu allproc locks to sx to avoid having to fix cases where :> : sx locks are being acquired afterwards :> : add 2 missed unlocks :> :> Nice. Good thought. I have seen the recent "benchmark" SMP emails and am :> not aggro like DT, so I don't care about too much detail; however, do you :> believe the switch from straight mutex locks to shared/exclusive locks :> will assist in some performance areas? :> :> Thanks for your work, :> Andrew :> :> : :> :Affected files ... :> : :> :.. //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 edit :> :.. //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 edit :> : :> :Differences ... :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/fs/pseudofs/pseudofs_vnops.c#4 :> (text+ko) ==== :> : :> :@@ -568,18 +568,18 @@ :> : /* next process */ :> : if (*p == NULL) { :> : *p = LIST_FIRST(&(*pc)->pc_allproc); :> :- PCPU_PROC_LOCK(*pc); :> :+ PCPU_PROC_RLOCK(*pc); :> : } else if ((LIST_NEXT(*p, p_list) == NULL) && :> (SLIST_NEXT(*pc, pc_allcpu) != NULL)) { :> :- PCPU_PROC_UNLOCK(*pc); :> :+ PCPU_PROC_RUNLOCK(*pc); :> : *pc = SLIST_NEXT(*pc, pc_allcpu); :> :- PCPU_PROC_LOCK(*pc); :> :+ PCPU_PROC_RLOCK(*pc); :> : *p = LIST_FIRST(&(*pc)->pc_allproc); :> : } else { :> : *p = LIST_NEXT(*p, p_list); :> : } :> : /* out of processes: next node */ :> : if (*p == NULL) { :> :- PCPU_PROC_UNLOCK(*pc); :> :+ PCPU_PROC_RUNLOCK(*pc); :> : *pn = (*pn)->pn_next; :> : } :> : } :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/imgact_elf.c#4 (text+ko) ==== :> : :> :@@ -147,14 +147,14 @@ :> : :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> :- :> : if (p->p_sysent == entry->sysvec) { :> : rval = TRUE; :> : break; :> : } :> : } :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#7 (text+ko) ==== :> : :> :@@ -539,12 +539,12 @@ :> : :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : microuptime(&p->p_stats->p_start); :> : p->p_rux.rux_runtime = 0; :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : PCPU_SET(switchtime, cpu_ticks()); :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#5 (text+ko) :> ==== :> : :> :@@ -2357,7 +2357,7 @@ :> : :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : fdp = fdhold(p); :> : if (fdp == NULL) :> :@@ -2379,7 +2379,7 @@ :> : while (nrele--) :> : vrele(olddp); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : if (rootvnode == olddp) { :> :@@ -2459,7 +2459,7 @@ :> : xf.xf_size = sizeof(xf); :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : if (p->p_state == PRS_NEW) :> : continue; :> :@@ -2496,7 +2496,7 @@ :> : if (error) :> : break; :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : return (error); :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#6 (text+ko) ==== :> : :> :@@ -403,15 +403,10 @@ :> : * Remove proc from allproc queue and pidhash chain. :> : * Place onto zombproc. Unlink from parent's child list. :> : */ :> :- if (p->p_pcpu == NULL) :> :- panic("process: %d has null pcpu pointer", p->p_pid); :> :- if (!mtx_initialized(&(p->p_pcpu->pc_allproc_lock))) :> :- panic("null allproc lock on %d", p->p_pcpu->pc_cpuid); :> :- :> :- PCPU_PROC_LOCK(p->p_pcpu); :> :+ PCPU_PROC_WLOCK(p->p_pcpu); :> : LIST_REMOVE(p, p_list); :> : LIST_INSERT_HEAD(&p->p_pcpu->pc_zombproc, p, p_list); :> :- PCPU_PROC_UNLOCK(p->p_pcpu); :> :+ PCPU_PROC_WUNLOCK(p->p_pcpu); :> : :> : mtx_lock(&pidhash_lock); :> : LIST_REMOVE(p, p_hash); :> :@@ -770,9 +765,9 @@ :> : * we have an exclusive reference. :> : */ :> : :> :- PCPU_PROC_LOCK(p->p_pcpu); :> :+ PCPU_PROC_WLOCK(p->p_pcpu); :> : LIST_REMOVE(p, p_list); /* off zombproc */ :> :- PCPU_PROC_UNLOCK(p->p_pcpu); :> :+ PCPU_PROC_WUNLOCK(p->p_pcpu); :> : :> : mtx_lock(&pidhash_lock); :> : LIST_REMOVE(p, p_hash); /* off zombproc */ :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#6 (text+ko) ==== :> : :> :@@ -371,7 +371,7 @@ :> : * than trypid, so we can avoid checking for a while. :> : */ :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : :> : p2 = LIST_FIRST(&pc->pc_allproc); :> : again: :> :@@ -385,7 +385,7 @@ :> : trypid++; :> : if (trypid >= pidchecked) { :> : PROC_UNLOCK(p2); :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : goto retry; :> : } :> : } :> :@@ -409,7 +409,7 @@ :> : p2 = LIST_FIRST(&pc->pc_zombproc); :> : goto again; :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : } :> : mtx_unlock(&pidalloc_lock); :> :@@ -429,9 +429,9 @@ :> : AUDIT_ARG(pid, p2->p_pid); :> : p2->p_pcpu = pcpup; :> : :> :- PCPU_PROC_LOCK(p2->p_pcpu); :> :+ PCPU_PROC_WLOCK(p2->p_pcpu); :> : LIST_INSERT_HEAD(&p2->p_pcpu->pc_allproc, p2, p_list); :> :- PCPU_PROC_UNLOCK(p2->p_pcpu); :> :+ PCPU_PROC_WUNLOCK(p2->p_pcpu); :> : :> : mtx_lock(&pidhash_lock); :> : LIST_INSERT_HEAD(PIDHASH(p2->p_pid), p2, p_hash); :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_ktrace.c#5 (text+ko) :> ==== :> : :> :@@ -640,7 +640,7 @@ :> : if (ops == KTROP_CLEARFILE) { :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : PROC_LOCK(p); :> : if (p->p_tracevp == vp) { :> :@@ -664,7 +664,7 @@ :> : } else :> : PROC_UNLOCK(p); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : goto done; :> :@@ -983,7 +983,7 @@ :> : cred = NULL; :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : PROC_LOCK(p); :> : if (p->p_tracevp == vp) { :> :@@ -1001,7 +1001,7 @@ :> : cred = NULL; :> : } :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#5 (text+ko) ==== :> : :> :@@ -110,9 +110,10 @@ :> : void :> : procinit() :> : { :> :- :> :+ :> : sx_init(&allpcpu_lock, "allpcpu"); :> : sx_init(&proctree_lock, "proctree"); :> :+ sx_init(&pcpu_find(0)->pc_allproc_lock, "cpu allproc"); :> : mtx_init(&ppeers_lock, "p_peers", NULL, MTX_DEF); :> : mtx_init(&pidalloc_lock, "pidalloc", NULL, MTX_DEF); :> : mtx_init(&pidhash_lock, "pidhash", NULL, MTX_DEF); :> :@@ -1002,7 +1003,7 @@ :> : sx_slock(&allpcpu_lock); :> : for (doingzomb = 0 ; doingzomb < 2 ; doingzomb++) { :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : if (!doingzomb) :> : p = LIST_FIRST(&pc->pc_allproc); :> : else :> :@@ -1105,12 +1106,12 @@ :> : :> : error = sysctl_out_proc(p, req, flags | :> doingzomb); :> : if (error) { :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : sx_sunlock(&allpcpu_lock); :> : return (error); :> : } :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : } :> : sx_sunlock(&allpcpu_lock); :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#6 (text+ko) :> ==== :> : :> :@@ -144,7 +144,7 @@ :> : uap->who = td->td_ucred->cr_uid; :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : PROC_LOCK(p); :> : if (!p_cansee(td, p) && :> :@@ -154,7 +154,7 @@ :> : } :> : PROC_UNLOCK(p); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : break; :> :@@ -236,9 +236,8 @@ :> : uap->who = td->td_ucred->cr_uid; :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> :- :> : PROC_LOCK(p); :> : if (p->p_ucred->cr_uid == uap->who && :> : !p_cansee(td, p)) { :> :@@ -247,6 +246,7 @@ :> : } :> : PROC_UNLOCK(p); :> : } :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : break; :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#9 (text+ko) ==== :> : :> :@@ -1648,7 +1648,7 @@ :> : */ :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : PROC_LOCK(p); :> : if (p->p_pid <= 1 || p->p_flag & P_SYSTEM || :> :@@ -1663,7 +1663,7 @@ :> : } :> : PROC_UNLOCK(p); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : } else { :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#9 (text+ko) ==== :> : :> :@@ -392,7 +392,7 @@ :> : realstathz = stathz ? stathz : hz; :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : /* :> : * Prevent state changes and protect run queue. :> :@@ -481,7 +481,7 @@ :> : } /* end of thread loop */ :> : mtx_unlock_spin(&sched_lock); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } /* end of process loop */ :> : sx_sunlock(&allpcpu_lock); :> : } :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_pcpu.c#4 (text+ko) ==== :> : :> :@@ -75,7 +75,8 @@ :> : cpuid_to_pcpu[cpuid] = pcpu; :> : LIST_INIT(&pcpu->pc_allproc); :> : LIST_INIT(&pcpu->pc_zombproc); :> :- mtx_init(&pcpu->pc_allproc_lock, "cpu allproc", NULL, MTX_DEF); :> :+ if (cpuid != 0) :> :+ sx_init(&pcpu->pc_allproc_lock, "cpu allproc"); :> : SLIST_INSERT_HEAD(&cpuhead, pcpu, pc_allcpu); :> : cpu_pcpu_init(pcpu, cpuid, size); :> : } :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#7 (text+ko) :> ==== :> : :> :@@ -275,13 +275,13 @@ :> : */ :> : { "proctree", &lock_class_sx }, :> : { "allpcpu", &lock_class_sx }, :> :+ { "cpu allproc", &lock_class_sx }, :> : { NULL, NULL }, :> : /* :> : * Various mutexes :> : */ :> : { "Giant", &lock_class_mtx_sleep }, :> : { "pidalloc", &lock_class_mtx_sleep }, :> :- { "cpu allproc", &lock_class_mtx_sleep }, :> : { "pidhash", &lock_class_mtx_sleep }, :> : { "filedesc structure", &lock_class_mtx_sleep }, :> : { "pipe mutex", &lock_class_mtx_sleep }, :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#6 (text+ko) :> ==== :> : :> :@@ -532,7 +532,7 @@ :> : /* this is slow, should be optimized */ :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : PROC_LOCK(p); :> : mtx_lock_spin(&sched_lock); :> :@@ -545,6 +545,7 @@ :> : break; /* proc lock held */ :> : PROC_UNLOCK(p); :> : } :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : if (p == NULL) { :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#15 (text+ko) :> ==== :> : :> :@@ -79,7 +79,7 @@ :> : struct rwindow pc_tsbwbuf[2]; \ :> : u_int pc_node; \ :> : uint16_t pc_cpulist[MAXCPU]; \ :> :- uint64_t pad[6]; :> :+ uint64_t pad[7]; :> : :> : /* XXX SUN4V_FIXME - as we access the *_ra and *_size fields in quick :> : * succession we _really_ want them to be L1 cache line size aligned :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#4 (text+ko) ==== :> : :> :@@ -43,12 +43,13 @@ :> : :> : #include :> : #include :> :+#include :> : #include :> : :> : LIST_HEAD(proclist, proc); :> : struct pcb; :> : struct thread; :> :- :> :+struct sx; :> : /* :> : * This structure maps out the global data that needs to be kept on a :> : * per-cpu basis. The members are accessed via the PCPU_GET/SET/PTR :> :@@ -68,7 +69,7 @@ :> : cpumask_t pc_other_cpus; /* Mask of all other cpus */ :> : SLIST_ENTRY(pcpu) pc_allcpu; :> : struct lock_list_entry *pc_spinlocks; :> :- struct mtx pc_allproc_lock; /* lock for pcpu process list :> */ :> :+ struct sx pc_allproc_lock; /* lock for pcpu process list :> */ :> : struct proclist pc_zombproc; :> : struct proclist pc_allproc; :> : #ifdef KTR_PERCPU :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#7 (text+ko) ==== :> : :> :@@ -623,8 +623,10 @@ :> : #define PROC_LOCK_ASSERT(p, type) mtx_assert(&(p)->p_mtx, :> (type)) :> : :> : /* lock pcpu process list */ :> :-#define PCPU_PROC_LOCK(pc) mtx_lock(&(pc)->pc_allproc_lock) :> :-#define PCPU_PROC_UNLOCK(pc) mtx_unlock(&(pc)->pc_allproc_lock) :> :+#define PCPU_PROC_RLOCK(pc) sx_slock(&(pc)->pc_allproc_lock) :> :+#define PCPU_PROC_RUNLOCK(pc) sx_sunlock(&(pc)->pc_allproc_lock) :> :+#define PCPU_PROC_WLOCK(pc) sx_xlock(&(pc)->pc_allproc_lock) :> :+#define PCPU_PROC_WUNLOCK(pc) sx_xunlock(&(pc)->pc_allproc_lock) :> : :> : :> : /* Lock and unlock a process group. */ :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#7 (text+ko) ==== :> : :> :@@ -678,7 +678,7 @@ :> : ppri = INT_MIN; :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : if (p->p_sflag & (PS_INMEM | PS_SWAPPINGOUT | :> PS_SWAPPINGIN)) :> : continue; :> :@@ -709,7 +709,7 @@ :> : } :> : mtx_unlock_spin(&sched_lock); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : :> :@@ -808,7 +808,7 @@ :> : retry: :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : :> : struct vmspace *vm; :> :@@ -930,7 +930,7 @@ :> : PROC_UNLOCK(p); :> : vm_map_unlock(&vm->vm_map); :> : vmspace_free(vm); :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : sx_sunlock(&allpcpu_lock); :> : goto retry; :> : } :> :@@ -944,7 +944,7 @@ :> : vmspace_free(vm); :> : continue; :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : /* :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#5 (text+ko) ==== :> : :> :@@ -143,7 +143,7 @@ :> : */ :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : if (p->p_flag & P_SYSTEM) :> : continue; :> :@@ -209,7 +209,7 @@ :> : if (paging) :> : totalp->t_pw++; :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : /* :> : :> :==== //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#4 (text+ko) ==== :> : :> :@@ -1224,7 +1224,7 @@ :> : bigsize = 0; :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : int breakout; :> : :> :@@ -1281,7 +1281,7 @@ :> : } else :> : PROC_UNLOCK(p); :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : if (bigproc != NULL) { :> :@@ -1576,7 +1576,7 @@ :> : :> : sx_slock(&allpcpu_lock); :> : SLIST_FOREACH(pc, &cpuhead, pc_allcpu) { :> :- PCPU_PROC_LOCK(pc); :> :+ PCPU_PROC_RLOCK(pc); :> : LIST_FOREACH(p, &pc->pc_allproc, p_list) { :> : vm_pindex_t limit, size; :> : :> :@@ -1630,7 +1630,7 @@ :> : &p->p_vmspace->vm_map, :> limit); :> : } :> : } :> :- PCPU_PROC_UNLOCK(pc); :> :+ PCPU_PROC_RUNLOCK(pc); :> : } :> : sx_sunlock(&allpcpu_lock); :> : } :> : :> : :> :> -- :> arr@watson.org :> : : -- arr@watson.org From owner-p4-projects@FreeBSD.ORG Wed Jun 21 07:09:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C7DBC16A47B; Wed, 21 Jun 2006 07:09:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A48F316A474 for ; Wed, 21 Jun 2006 07:09:48 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5EB3F43D46 for ; Wed, 21 Jun 2006 07:09:48 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L79mub034313 for ; Wed, 21 Jun 2006 07:09:48 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L79mtE034310 for perforce@freebsd.org; Wed, 21 Jun 2006 07:09:48 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 21 Jun 2006 07:09:48 GMT Message-Id: <200606210709.k5L79mtE034310@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 99725 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 07:09:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=99725 Change 99725 by kmacy@kmacy_storage:sun4v_work on 2006/06/21 07:08:57 fix KTR compile by undoing sparc64 specific define Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/ktr.h#2 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/ktr.h#2 (text+ko) ==== @@ -38,8 +38,8 @@ #ifndef LOCORE -#define KTR_CPU UPA_CR_GET_MID(ldxa(0, ASI_UPA_CONFIG_REG)) - +#define KTR_CPU PCPU_GET(cpuid) + #else #define AND(var, mask, r1, r2) \ From owner-p4-projects@FreeBSD.ORG Wed Jun 21 08:07:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1DE9516A50E; Wed, 21 Jun 2006 08:07:08 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D4BC516A502 for ; Wed, 21 Jun 2006 08:07:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8ED6243D46 for ; Wed, 21 Jun 2006 08:07:07 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L877qm038272 for ; Wed, 21 Jun 2006 08:07:07 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L877uv038269 for perforce@freebsd.org; Wed, 21 Jun 2006 08:07:07 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 21 Jun 2006 08:07:07 GMT Message-Id: <200606210807.k5L877uv038269@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 99732 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 08:07:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=99732 Change 99732 by hselasky@hselasky_mini_itx on 2006/06/21 08:06:20 Made a copy of the "uaudio" driver, for reference. Affected files ... .. //depot/projects/usb/src/sys/dev/sound/usb.old/uaudio.c#1 add .. //depot/projects/usb/src/sys/dev/sound/usb.old/uaudio.h#1 add .. //depot/projects/usb/src/sys/dev/sound/usb.old/uaudio_pcm.c#1 add .. //depot/projects/usb/src/sys/dev/sound/usb.old/uaudioreg.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Jun 21 08:10:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A00B16A47C; Wed, 21 Jun 2006 08:10:12 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4D9F416A479 for ; Wed, 21 Jun 2006 08:10:12 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E744343D46 for ; Wed, 21 Jun 2006 08:10:11 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L8ABoI038443 for ; Wed, 21 Jun 2006 08:10:11 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L8ABkm038440 for perforce@freebsd.org; Wed, 21 Jun 2006 08:10:11 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 21 Jun 2006 08:10:11 GMT Message-Id: <200606210810.k5L8ABkm038440@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 99733 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 08:10:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=99733 Change 99733 by kmacy@kmacy_storage:sun4v_work on 2006/06/21 08:09:40 socket and filedesc pushdown Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_umtx.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_pipe.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/filedesc.h#4 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/lock.h#5 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/socket.h#3 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/unpcb.h#3 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#6 (text+ko) ==== @@ -359,25 +359,8 @@ struct vnode *vp; u_int newmin; int error, flg, tmp; - int giant_locked; + int giant_locked = 0; - /* - * XXXRW: Some fcntl() calls require Giant -- others don't. Try to - * avoid grabbing Giant for calls we know don't need it. - */ - switch (cmd) { - case F_DUPFD: - case F_GETFD: - case F_SETFD: - case F_GETFL: - giant_locked = 0; - break; - - default: - giant_locked = 1; - mtx_lock(&Giant); - } - error = 0; flg = F_POSIX; p = td->td_proc; @@ -391,9 +374,12 @@ } pop = &fdp->fd_ofileflags[fd]; + if ((fp->f_ops->fo_flags & DFLAG_MPSAFE) == 0) { + mtx_lock(&Giant); + giant_locked = 1; + } switch (cmd) { case F_DUPFD: - /* mtx_assert(&Giant, MA_NOTOWNED); */ FILEDESC_UNLOCK(fdp); newmin = arg; PROC_LOCK(p); @@ -408,20 +394,17 @@ break; case F_GETFD: - /* mtx_assert(&Giant, MA_NOTOWNED); */ td->td_retval[0] = (*pop & UF_EXCLOSE) ? FD_CLOEXEC : 0; FILEDESC_UNLOCK(fdp); break; case F_SETFD: - /* mtx_assert(&Giant, MA_NOTOWNED); */ *pop = (*pop &~ UF_EXCLOSE) | (arg & FD_CLOEXEC ? UF_EXCLOSE : 0); FILEDESC_UNLOCK(fdp); break; case F_GETFL: - /* mtx_assert(&Giant, MA_NOTOWNED); */ FILE_LOCK(fp); td->td_retval[0] = OFLAGS(fp->f_flag); FILE_UNLOCK(fp); @@ -429,7 +412,6 @@ break; case F_SETFL: - mtx_assert(&Giant, MA_OWNED); FILE_LOCK(fp); fhold_locked(fp); fp->f_flag &= ~FCNTLFLAGS; @@ -457,7 +439,6 @@ break; case F_GETOWN: - mtx_assert(&Giant, MA_OWNED); fhold(fp); FILEDESC_UNLOCK(fdp); error = fo_ioctl(fp, FIOGETOWN, &tmp, td->td_ucred, td); @@ -467,7 +448,6 @@ break; case F_SETOWN: - mtx_assert(&Giant, MA_OWNED); fhold(fp); FILEDESC_UNLOCK(fdp); tmp = arg; @@ -476,12 +456,10 @@ break; case F_SETLKW: - mtx_assert(&Giant, MA_OWNED); flg |= F_WAIT; /* FALLTHROUGH F_SETLK */ case F_SETLK: - mtx_assert(&Giant, MA_OWNED); if (fp->f_type != DTYPE_VNODE) { FILEDESC_UNLOCK(fdp); error = EBADF; @@ -555,7 +533,6 @@ break; case F_GETLK: - mtx_assert(&Giant, MA_OWNED); if (fp->f_type != DTYPE_VNODE) { FILEDESC_UNLOCK(fdp); error = EBADF; ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_umtx.c#6 (text+ko) ==== @@ -97,7 +97,6 @@ static void umtxq_init_chains(void *); static int umtxq_hash(struct umtx_key *key); static struct mtx *umtxq_mtx(int chain); -static void umtxq_lock(struct umtx_key *key); static void umtxq_unlock(struct umtx_key *key); static void umtxq_busy(struct umtx_key *key); static void umtxq_unbusy(struct umtx_key *key); @@ -188,12 +187,20 @@ wakeup_one(&umtxq_chains[chain]); } +#define umtxq_lock(key) \ +do { \ + int chain = umtxq_hash(key); \ + mtx_lock(umtxq_mtx(chain)); \ +} while (0) + +#if 0 static inline void umtxq_lock(struct umtx_key *key) { int chain = umtxq_hash(key); - mtx_lock(umtxq_mtx(chain)); + mtx_lock(umtxq_mtx(chain)); } +#endif static inline void umtxq_unlock(struct umtx_key *key) ==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_pipe.c#3 (text+ko) ==== @@ -153,7 +153,7 @@ .fo_kqfilter = pipe_kqfilter, .fo_stat = pipe_stat, .fo_close = pipe_close, - .fo_flags = DFLAG_PASSABLE + .fo_flags = DFLAG_PASSABLE | DFLAG_MPSAFE }; static void filt_pipedetach(struct knote *kn); ==== //depot/projects/kmacy_sun4v/src/sys/sys/filedesc.h#4 (text+ko) ==== @@ -114,7 +114,7 @@ ("fdesc locking mistake %d should be %d", (fd)->fd_locked, 2)); \ (fd)->fd_locked = 0; \ if ((fd)->fd_wanted) \ - wakeup(&(fd)->fd_locked); \ + wakeup_one(&(fd)->fd_locked); \ mtx_unlock(&(fd)->fd_mtx); \ } while (0) @@ -134,7 +134,7 @@ ("fdesc locking mistake %d should be %d", (fd)->fd_locked, 1)); \ (fd)->fd_locked = 0; \ if ((fd)->fd_wanted) \ - wakeup(&(fd)->fd_locked); \ + wakeup_one(&(fd)->fd_locked); \ mtx_unlock(&(fd)->fd_mtx); \ } while (0) ==== //depot/projects/kmacy_sun4v/src/sys/sys/lock.h#5 (text+ko) ==== @@ -72,7 +72,7 @@ #define LO_PROFILE 0x10000000 /* Enable per-lock profiling */ /* - * Lock classes are statically assigned an index into the gobal lock_classes + * Lock classes are statically assigned an index into the global lock_classes * array. Debugging code looks up the lock class for a given lock object * by indexing the array. */ ==== //depot/projects/kmacy_sun4v/src/sys/sys/socket.h#3 (text+ko) ==== @@ -208,7 +208,8 @@ #define AF_SCLUSTER 34 /* Sitara cluster protocol */ #define AF_ARP 35 #define AF_BLUETOOTH 36 /* Bluetooth sockets */ -#define AF_MAX 37 +#define AF_STUB 37 /* Stub sample protocol */ +#define AF_MAX 38 #endif /* @@ -293,6 +294,7 @@ #define PF_SCLUSTER AF_SCLUSTER #define PF_ARP AF_ARP #define PF_BLUETOOTH AF_BLUETOOTH +#define PF_STUB AF_STUB #define PF_MAX AF_MAX ==== //depot/projects/kmacy_sun4v/src/sys/sys/unpcb.h#3 (text+ko) ==== @@ -78,6 +78,7 @@ unp_gen_t unp_gencnt; /* generation count of this instance */ int unp_flags; /* flags */ struct xucred unp_peercred; /* peer credentials, if applicable */ + struct mtx unp_mtx; /* mutex */ }; /* @@ -98,6 +99,14 @@ #define UNP_WANTCRED 0x004 /* credentials wanted */ #define UNP_CONNWAIT 0x008 /* connect blocks until accepted */ +/* + * These flags are used to handle non-atomicity in connect() and bind() + * operations on a socket: in particular, to avoid races between multiple + * threads or processes operating simultaneously on the same socket. + */ +#define UNP_CONNECTING 0x010 /* Currently connecting. */ +#define UNP_BINDING 0x020 /* Currently binding. */ + #define sotounpcb(so) ((struct unpcb *)((so)->so_pcb)) /* Hack alert -- this structure depends on . */ From owner-p4-projects@FreeBSD.ORG Wed Jun 21 08:12:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 852AE16A481; Wed, 21 Jun 2006 08:12:15 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6071816A474 for ; Wed, 21 Jun 2006 08:12:15 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 291FB43D45 for ; Wed, 21 Jun 2006 08:12:15 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L8CFpT038625 for ; Wed, 21 Jun 2006 08:12:15 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L8CEGS038622 for perforce@freebsd.org; Wed, 21 Jun 2006 08:12:14 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 21 Jun 2006 08:12:14 GMT Message-Id: <200606210812.k5L8CEGS038622@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 99734 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 08:12:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=99734 Change 99734 by hselasky@hselasky_mini_itx on 2006/06/21 08:11:35 Made a copy of "pcm" for reference. Affected files ... .. //depot/projects/usb/src/sys/dev/sound/pcm.old/ac97.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/ac97.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/ac97_if.m#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/ac97_patch.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/ac97_patch.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/buffer.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/buffer.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/channel.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/channel.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/channel_if.m#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/dsp.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/dsp.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/fake.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/feeder.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/feeder.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/feeder_fmt.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/feeder_if.m#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/feeder_rate.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/feeder_volume.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/mixer.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/mixer.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/mixer_if.m#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/sndstat.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/sound.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/sound.h#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/vchan.c#1 add .. //depot/projects/usb/src/sys/dev/sound/pcm.old/vchan.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Jun 21 08:29:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1DEAD16A47B; Wed, 21 Jun 2006 08:29:38 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ECB4E16A474 for ; Wed, 21 Jun 2006 08:29:37 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7893E43D49 for ; Wed, 21 Jun 2006 08:29:37 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L8TbDK039551 for ; Wed, 21 Jun 2006 08:29:37 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L8Ta0G039548 for perforce@freebsd.org; Wed, 21 Jun 2006 08:29:36 GMT (envelope-from scottl@freebsd.org) Date: Wed, 21 Jun 2006 08:29:36 GMT Message-Id: <200606210829.k5L8Ta0G039548@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 99735 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 08:29:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=99735 Change 99735 by scottl@scottl-wv1u on 2006/06/21 08:29:14 CAM_PERIPH_LOCK/CAM_PERIPH_UNLOCK are used to take the SIM lock in the periph. Also fix a mistake with the order of locking in the close routines. Affected files ... .. //depot/projects/scottl-camlock/src/sys/cam/cam_periph.h#8 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_da.c#12 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_pass.c#10 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_ses.c#8 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/cam/cam_periph.h#8 (text+ko) ==== @@ -126,6 +126,9 @@ #define CAM_PERIPH_MAXMAPS 2 +#define CAM_PERIPH_LOCK(periph) mtx_lock((periph)->sim->mtx) +#define CAM_PERIPH_UNLOCK(periph) mtx_unlock((periph)->sim->mtx) + struct cam_periph_map_info { int num_bufs_used; struct buf *bp[CAM_PERIPH_MAXMAPS]; ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_da.c#12 (text+ko) ==== @@ -540,7 +540,7 @@ return (error); /* error code from tsleep */ if (cam_periph_acquire(periph) != CAM_REQ_CMP) { - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); return(ENXIO); } @@ -658,8 +658,8 @@ } softc->flags &= ~DA_FLAG_OPEN; + cam_periph_release(periph); cam_periph_unlock(periph); - cam_periph_release(periph); return (0); } @@ -682,7 +682,7 @@ } softc = (struct da_softc *)periph->softc; - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); #if 0 /* @@ -703,7 +703,7 @@ */ if ((softc->flags & DA_FLAG_PACK_INVALID)) { splx(s); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); biofinish(bp, NULL, ENXIO); return; } @@ -719,7 +719,7 @@ * Schedule ourselves for performing the work. */ xpt_schedule(periph, /* XXX priority */1); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); return; } ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_pass.c#10 (text+ko) ==== @@ -409,8 +409,8 @@ softc = (struct pass_softc *)periph->softc; softc->flags &= ~PASS_FLAG_OPEN; + cam_periph_release(periph); cam_periph_unlock(periph); - cam_periph_release(periph); return (0); } @@ -464,8 +464,8 @@ if (periph == NULL) return(ENXIO); + CAM_PERIPH_LOCK(periph); softc = (struct pass_softc *)periph->softc; - mtx_lock(periph->sim->mtx); error = 0; @@ -532,7 +532,7 @@ break; } - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); return(error); } ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_ses.c#8 (text+ko) ==== @@ -483,8 +483,8 @@ softc = (struct ses_softc *)periph->softc; softc->ses_flags &= ~SES_FLAG_OPEN; + cam_periph_release(periph); cam_periph_unlock(periph); - cam_periph_release(periph); return (0); } @@ -542,17 +542,17 @@ CAM_DEBUG(periph->path, CAM_DEBUG_TRACE, ("entering sesioctl\n")); - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); ssc = (struct ses_softc *)periph->softc; /* * Now check to see whether we're initialized or not. */ if ((ssc->ses_flags & SES_FLAG_INITIALIZED) == 0) { - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); return (ENXIO); } - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); error = 0; @@ -586,30 +586,30 @@ * XXX Dropping the lock while copying multiple segments is * bogus. */ - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); for (uobj = addr, i = 0; i != ssc->ses_nobjects; i++, uobj++) { obj.obj_id = i; obj.subencid = ssc->ses_objmap[i].subenclosure; obj.object_type = ssc->ses_objmap[i].enctype; - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); error = copyout(&obj, uobj, sizeof (ses_object)); - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); if (error) { break; } } - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); break; case SESIOC_GETENCSTAT: - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); error = (*ssc->ses_vec.get_encstat)(ssc, 1); if (error) { - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); break; } tmp = ssc->ses_encstat & ~ENCI_SVALID; - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); error = copyout(&tmp, addr, sizeof (ses_encstat)); ssc->ses_encstat = tmp; break; @@ -618,9 +618,9 @@ error = copyin(addr, &tmp, sizeof (ses_encstat)); if (error) break; - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); error = (*ssc->ses_vec.set_encstat)(ssc, tmp, 1); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); break; case SESIOC_GETOBJSTAT: @@ -631,9 +631,9 @@ error = EINVAL; break; } - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); error = (*ssc->ses_vec.get_objstat)(ssc, &objs, 1); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); if (error) break; error = copyout(&objs, addr, sizeof (ses_objstat)); @@ -652,9 +652,9 @@ error = EINVAL; break; } - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); error = (*ssc->ses_vec.set_objstat)(ssc, &objs, 1); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); /* * Always (for now) invalidate entry. @@ -664,15 +664,15 @@ case SESIOC_INIT: - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); error = (*ssc->ses_vec.init_enc)(ssc); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); break; default: - mtx_lock(periph->sim->mtx); + CAM_PERIPH_LOCK(periph); error = cam_periph_ioctl(periph, cmd, arg_addr, seserror); - mtx_unlock(periph->sim->mtx); + CAM_PERIPH_UNLOCK(periph); break; } return (error); From owner-p4-projects@FreeBSD.ORG Wed Jun 21 09:59:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 18BF316A481; Wed, 21 Jun 2006 09:59:40 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C9D0116A47E for ; Wed, 21 Jun 2006 09:59:39 +0000 (UTC) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1AE3743D67 for ; Wed, 21 Jun 2006 09:59:30 +0000 (GMT) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5L9xTxv061387 for ; Wed, 21 Jun 2006 09:59:29 GMT (envelope-from dongmei@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5L9xT81061384 for perforce@freebsd.org; Wed, 21 Jun 2006 09:59:29 GMT (envelope-from dongmei@FreeBSD.org) Date: Wed, 21 Jun 2006 09:59:29 GMT Message-Id: <200606210959.k5L9xT81061384@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to dongmei@FreeBSD.org using -f From: dongmei To: Perforce Change Reviews Cc: Subject: PERFORCE change 99741 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 09:59:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=99741 Change 99741 by dongmei@soc-dongmei-sebsd on 2006/06/21 09:58:43 Ported setools-2.3 from selinux Affected files ... .. //depot/projects/soc2006/dongmei_sebsd/Makefile#3 integrate .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/COPYING#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/ChangeLog-setools#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/INSTALL#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/KNOWN-BUGS#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/README#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/analysis_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/apol_gui.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/apol_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/classes_perms_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/common_widgets.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/cond_bools_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/cond_rules_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/context_dialog.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/context_selector.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/dirflow_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/dta_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/dta_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/file_contexts_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/file_relabel_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/flow_assertion_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/flowassert_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/foo_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/fscontexts_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/fulflow_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/head.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/iflow_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/initial_sids_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/level_dialog.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/mls_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/netcontexts_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/obj_perms_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver12#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver15#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver16#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver17#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver18#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver19#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perm_maps/apol_perm_mapping_ver20#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/perms_map.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/policyconf.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/range_dialog.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/range_selector.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/range_trans.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/rbac_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/relabel_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/roles_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/terules_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/top.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/types_relation_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/types_relation_module.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/types_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/apol/users_tab.tcl#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/awish/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/awish/awish.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/INSTALL.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/KNOWN-BUGS.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/README.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/apol_help_text.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/dta_help.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/file_relabel_help.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/flow_assertion_help.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/iflow_help.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/obj_perms_help.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/seaudit_help_text.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/sechecker_help_text.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/sediff_help_text.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/docs-src/types_relation_help.in#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/analysis.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/analysis.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apol-perm-mapping#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apol_tcl.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apol_tcl.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apol_tcl_render.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apol_tcl_render.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apolicy_parse.y#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/apolicy_scan.l#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/avl-util.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/avl-util.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/binpol.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/binpol.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/borrowed.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/bpmaps.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/bpmaps.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/ebitmap.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/ebitmap.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/fbuf.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/binpol/fbuf.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/clone.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/clone.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/cond.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/cond.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/dta.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/dta.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/flowassert.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/flowassert.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/flowassert_parse.y#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/flowassert_scan.l#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/infoflow.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/infoflow.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/perm-map.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/perm-map.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/poldiff.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/poldiff.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy-avl.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy-avl.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy-io.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy-io.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy-query.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy-query.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/policy.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/queue.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/queue.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/relabel_analysis.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/relabel_analysis.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/render.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/render.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/semantic/avhash.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/semantic/avhash.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/semantic/avsemantics.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/semantic/avsemantics.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/symtable.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/symtable.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/util.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libapol/util.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/auditlog.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/auditlog.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/auditlog_view.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/auditlog_view.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/filter_criteria.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/filter_criteria.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/filters.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/filters.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/multifilter.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/multifilter.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/parse.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/parse.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/sort.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libseaudit/sort.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/file_contexts.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/file_contexts.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/fsdata.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/fsdata.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/fshash.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/fshash.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/attach.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/auth.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/btree.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/btree.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/build.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/config.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/date.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/delete.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/expr.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/func.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/hash.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/hash.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/insert.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/legacy.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/main.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/opcodes.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/opcodes.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_common.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_mac.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_mac.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_unix.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_unix.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_win.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/os_win.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/pager.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/pager.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/parse.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/parse.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/pragma.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/printf.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/random.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/select.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/shell.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/sqlite3.def#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/sqlite3.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/sqliteInt.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/table.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/tclsqlite.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/tokenize.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/trigger.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/update.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/utf.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/util.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vacuum.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vdbe.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vdbe.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vdbeInt.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vdbeapi.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vdbeaux.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/vdbemem.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/libsefs/sqlite/where.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/apol.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/findcon.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/indexcon.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/replcon.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/searchcon.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/seaudit-report.8#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/seaudit.8#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/sechecker.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/sediff.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/sediffx.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/seinfo.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/man/sesearch.1#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/packages/BWidget-1.7.0.tar.gz#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/packages/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/SEAUDIT_GUI_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/SEAUDIT_REPORT_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/auditlogmodel.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/auditlogmodel.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/customize_filter_window.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/dot_seaudit#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/filter_window.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/filter_window.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/filter_window.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/filtered_view.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/filtered_view.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/multifilter_window.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/multifilter_window.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/multifilter_window.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/prefer_window.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/preferences.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/preferences.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/query_window.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/query_window.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/query_window.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/report.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/report.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/report_window.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/report_window.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/report_window.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit-report-group.conf#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit-report-service#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit-report-service.conf#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit-report.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit-report.conf#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit-report.css#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit_callback.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit_callback.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit_window.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/seaudit_window.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/utilgui.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/seaudit/utilgui.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/attribs_wo_rules.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/attribs_wo_rules.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/attribs_wo_types.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/attribs_wo_types.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/domain_and_file.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/domain_and_file.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/domains_wo_roles.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/domains_wo_roles.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/find_domains.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/find_domains.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/find_file_types.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/find_file_types.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/inc_dom_trans.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/inc_dom_trans.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/inc_mount.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/inc_mount.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/roles_wo_allow.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/roles_wo_allow.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/roles_wo_types.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/roles_wo_types.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/roles_wo_users.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/roles_wo_users.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/rules_exp_nothing.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/rules_exp_nothing.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/spurious_audit.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/spurious_audit.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/template/profiles.readme#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/template/template.howto#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/template/xx.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/template/xx.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/types_wo_allow.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/types_wo_allow.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/users_wo_roles.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/modules/users_wo_roles.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/profiles/all-checks.sechecker#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/profiles/analysis-checks.sechecker#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/profiles/devel-checks.sechecker#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/register_list.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/register_list.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/sechecker.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/sechecker.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/sechecker_cli.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/sechecker_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/sechk_parse.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sechecker/sechk_parse.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/FINDCON_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/INDEXCON_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/REPLCON_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/SEARCHCON_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/SEINFO_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/SESEARCH_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/flowtool.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/indexcon.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/replcon.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/searchcon.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/seinfo.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/secmds/sesearch.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/Makefile#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/SEDIFF_GUI_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/SEDIFF_VERSION#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff.glade#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_find_window.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_find_window.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_gui.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_gui.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_help.txt#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_rename_types.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_rename_types.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_treemodel.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/sediff_treemodel.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/support.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/support.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/utilgui.c#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/sediff/utilgui.h#1 add .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/setools/tcl_vars#1 add Differences ... ==== //depot/projects/soc2006/dongmei_sebsd/Makefile#3 (text+ko) ==== @@ -311,7 +311,7 @@ .if exists(${.CURDIR}/contrib/sebsd) @echo "Installing SEBSD policy" -.if !exists(${DESTDIR}/etc/security/sebsd/targeted/policy) +.if !exists(${DESTDIR}/etc/security/sebsd/targeted/src/policy) (cd ${.CURDIR}/contrib/sebsd/refpolicy; gmake install-src) .else @echo "Existing SEBSD targeted policy sources found." From owner-p4-projects@FreeBSD.ORG Wed Jun 21 10:11:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 387DB16A484; Wed, 21 Jun 2006 10:11:57 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EF61C16A47E for ; Wed, 21 Jun 2006 10:11:56 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7FF6443D97 for ; Wed, 21 Jun 2006 10:11:49 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LABnDc063153 for ; Wed, 21 Jun 2006 10:11:49 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LABjEZ063150 for perforce@freebsd.org; Wed, 21 Jun 2006 10:11:45 GMT (envelope-from scottl@freebsd.org) Date: Wed, 21 Jun 2006 10:11:45 GMT Message-Id: <200606211011.k5LABjEZ063150@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 99742 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 10:11:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=99742 Change 99742 by scottl@scottl-wv1u on 2006/06/21 10:11:33 IFC Affected files ... .. //depot/projects/scottl-camlock/src/sys/amd64/amd64/fpu.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/amd64/initcpu.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/amd64/machdep.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/amd64/pmap.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/amd64/trap.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/conf/GENERIC#10 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/include/md_var.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_proto.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_syscall.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_sysent.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/syscalls.master#6 integrate .. //depot/projects/scottl-camlock/src/sys/arm/arm/elf_trampoline.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/arm/arm/pmap.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/if_ate.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/arm/conf/IQ31244#5 integrate .. //depot/projects/scottl-camlock/src/sys/arm/conf/KB920X#4 integrate .. //depot/projects/scottl-camlock/src/sys/arm/conf/SIMICS#5 integrate .. //depot/projects/scottl-camlock/src/sys/arm/conf/SKYEYE#4 integrate .. //depot/projects/scottl-camlock/src/sys/boot/Makefile#6 integrate .. //depot/projects/scottl-camlock/src/sys/compat/ndis/subr_ndis.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/conf/Makefile.arm#8 integrate .. //depot/projects/scottl-camlock/src/sys/conf/NOTES#12 integrate .. //depot/projects/scottl-camlock/src/sys/conf/kern.post.mk#8 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/pf/net/if_pfsync.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/ddb/db_sym.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/aac/aac_pci.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ata/ata-chipset.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/bge/if_bge.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/dev/bge/if_bgereg.h#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/digi/digi.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mfi/mfi_disk.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mxge/eth_z8e.dat.gz.uu#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mxge/if_mxge_var.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mxge/mxge_mcp.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/scottl-camlock/src/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/scottl-camlock/src/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/scottl-camlock/src/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/scottl-camlock/src/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/scottl-camlock/src/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/scottl-camlock/src/sys/dev/sound/driver.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/midi/midi.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/midi/sequencer.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/cmi.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/es137x.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/ich.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/maestro.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/via8233.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pcm/feeder_rate.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pcm/sound.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pcm/vchan.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/uhid.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/umodem.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/uplcom.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/usbdevs#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/uscanner.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/uvisor.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/wl/if_wl.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/geom/geom_dev.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/i386/acpica/acpi_wakeup.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/i386/conf/GENERIC#10 integrate .. //depot/projects/scottl-camlock/src/sys/i386/conf/XBOX#3 integrate .. //depot/projects/scottl-camlock/src/sys/i386/i386/db_trace.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/i386/i386/identcpu.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/i386/i386/pmap.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/i386/i386/trap.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/i386/include/specialreg.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_dummy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_proto.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_syscall.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_sysent.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/syscalls.master#9 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/conf/GENERIC#8 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/conf/SKI#6 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/ia64/pmap.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_linker.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_module.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_synch.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_sysctl.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_tc.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/kern/link_elf.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/kern/link_elf_obj.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sched_core.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sched_ule.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/kern/subr_kdb.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/kern/uipc_socket.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/uipc_socket2.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/uipc_syscalls.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/kern/uipc_usrreq.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/vfs_cache.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/modules/Makefile#11 integrate .. //depot/projects/scottl-camlock/src/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/scottl-camlock/src/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/scottl-camlock/src/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/scottl-camlock/src/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/scottl-camlock/src/sys/modules/ppc/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/sound/driver/Makefile#4 integrate .. //depot/projects/scottl-camlock/src/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/net/bpf.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/net/if.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/net/if.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_bridge.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_clone.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_var.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_vlan.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/ip_fw2.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_input.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_seq.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_syncache.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_var.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/pc98/conf/GENERIC#8 integrate .. //depot/projects/scottl-camlock/src/sys/posix4/ksched.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/powerpc/conf/GENERIC#8 integrate .. //depot/projects/scottl-camlock/src/sys/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/scottl-camlock/src/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/powerpc/powerpc/pmap_dispatch.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/security/audit/audit_bsm_token.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/sparc64/conf/GENERIC#9 integrate .. //depot/projects/scottl-camlock/src/sys/sparc64/sparc64/pmap.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/sys/linker.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/sys/protosw.h#8 integrate .. //depot/projects/scottl-camlock/src/sys/sys/sched.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/sys/socketvar.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/sys/sockio.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/scottl-camlock/src/sys/vm/pmap.h#8 integrate .. //depot/projects/scottl-camlock/src/sys/vm/vm_fault.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/vm/vm_map.c#9 integrate Differences ... ==== //depot/projects/scottl-camlock/src/sys/amd64/amd64/fpu.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/scottl-camlock/src/sys/amd64/amd64/initcpu.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/scottl-camlock/src/sys/amd64/amd64/machdep.c#9 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/scottl-camlock/src/sys/amd64/amd64/pmap.c#11 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.556 2006/06/12 20:05:27 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -1664,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2335,6 +2336,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2356,15 +2358,13 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { PMAP_LOCK(pmap); - mpte = pmap_enter_quick_locked(pmap, va, m, prot, mpte); + (void) pmap_enter_quick_locked(pmap, va, m, prot, NULL); PMAP_UNLOCK(pmap); - return (mpte); } static vm_page_t @@ -2378,7 +2378,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2396,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2414,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2448,12 +2436,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters ==== //depot/projects/scottl-camlock/src/sys/amd64/amd64/trap.c#8 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/scottl-camlock/src/sys/amd64/conf/GENERIC#10 (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.459 2006/06/13 13:12:56 davidxu Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ cpu HAMMER ident GENERIC @@ -46,7 +46,6 @@ options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_GPT # GUID Partition Tables. -options COMPAT_43 # Needed by COMPAT_LINUX32 options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!] options COMPAT_IA32 # Compatible with i386 binaries options COMPAT_FREEBSD4 # Compatible with FreeBSD4 ==== //depot/projects/scottl-camlock/src/sys/amd64/include/md_var.h#5 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_dummy.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_proto.h#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_syscall.h#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #define LINUX_SYS_exit 1 @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 #define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_sysent.c#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #include @@ -273,62 +273,62 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64, AUE_NULL }, /* 250 = linux_fadvise64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 251 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 252 = exit_group */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 253 = linux_lookup_dcookie */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 254 = linux_epoll_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = linux_epoll_ctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = linux_epoll_wait */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = linux_set_tid_address */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = linux_timer_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = linux_timer_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = linux_timer_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = linux_timer_getoverrun */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = linux_timer_delete */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = linux_clock_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = linux_clock_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = linux_clock_getres */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = linux_statfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = linux_fstatfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = linux_tgkill */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = linux_utimes */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 272 = linux_fadvise64_64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 274 = linux_mbind */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 275 = linux_get_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 276 = linux_set_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 277 = linux_mq_open */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 278 = linux_mq_unlink */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 279 = linux_mq_timedsend */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 280 = linux_mq_timedreceive */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = linux_mq_notify */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = linux_mq_getsetattr */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = linux_kexec_load */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = linux_waitid */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = linux_add_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = linux_request_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = linux_keyctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = linux_ioprio_set */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = linux_ioprio_get */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = linux_inotify_init */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = linux_inotify_add_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = linux_migrate_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = linux_openat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = linux_mkdirat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 297 = linux_mknodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 298 = linux_fchownat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 299 = linux_futimesat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 300 = linux_fstatat64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 301 = linux_unlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 302 = linux_renameat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 303 = linux_linkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 304 = linux_symlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 305 = linux_readlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 306 = linux_fchmodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 307 = linux_faccessat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 308 = linux_pselect6 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 309 = linux_ppoll */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 310 = linux_unshare */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL }, /* 253 = linux_lookup_dcookie */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_create, AUE_NULL }, /* 254 = linux_epoll_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL }, /* 262 = linux_timer_getoverrun */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_delete, AUE_NULL }, /* 263 = linux_timer_delete */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME }, /* 264 = linux_clock_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_gettime, AUE_NULL }, /* 265 = linux_clock_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_getres, AUE_NULL }, /* 266 = linux_clock_getres */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_nanosleep, AUE_NULL }, /* 267 = linux_clock_nanosleep */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_statfs64, AUE_NULL }, /* 268 = linux_statfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatfs64, AUE_NULL }, /* 269 = linux_fstatfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_tgkill, AUE_NULL }, /* 270 = linux_tgkill */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_utimes, AUE_NULL }, /* 271 = linux_utimes */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64_64, AUE_NULL }, /* 272 = linux_fadvise64_64 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mbind, AUE_NULL }, /* 274 = linux_mbind */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_get_mempolicy, AUE_NULL }, /* 275 = linux_get_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_mempolicy, AUE_NULL }, /* 276 = linux_set_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_open, AUE_NULL }, /* 277 = linux_mq_open */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_unlink, AUE_NULL }, /* 278 = linux_mq_unlink */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedsend, AUE_NULL }, /* 279 = linux_mq_timedsend */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedreceive, AUE_NULL }, /* 280 = linux_mq_timedreceive */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_notify, AUE_NULL }, /* 281 = linux_mq_notify */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_getsetattr, AUE_NULL }, /* 282 = linux_mq_getsetattr */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_kexec_load, AUE_NULL }, /* 283 = linux_kexec_load */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_waitid, AUE_NULL }, /* 284 = linux_waitid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_add_key, AUE_NULL }, /* 286 = linux_add_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_request_key, AUE_NULL }, /* 287 = linux_request_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_keyctl, AUE_NULL }, /* 288 = linux_keyctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_set, AUE_NULL }, /* 289 = linux_ioprio_set */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_get, AUE_NULL }, /* 290 = linux_ioprio_get */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_init, AUE_NULL }, /* 291 = linux_inotify_init */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_add_watch, AUE_NULL }, /* 292 = linux_inotify_add_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_rm_watch, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_migrate_pages, AUE_NULL }, /* 294 = linux_migrate_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_openat, AUE_NULL }, /* 295 = linux_openat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mkdirat, AUE_NULL }, /* 296 = linux_mkdirat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mknodat, AUE_NULL }, /* 297 = linux_mknodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchownat, AUE_NULL }, /* 298 = linux_fchownat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_futimesat, AUE_NULL }, /* 299 = linux_futimesat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatat64, AUE_NULL }, /* 300 = linux_fstatat64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unlinkat, AUE_NULL }, /* 301 = linux_unlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_renameat, AUE_NULL }, /* 302 = linux_renameat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_linkat, AUE_NULL }, /* 303 = linux_linkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_symlinkat, AUE_NULL }, /* 304 = linux_symlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_readlinkat, AUE_NULL }, /* 305 = linux_readlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchmodat, AUE_NULL }, /* 306 = linux_fchmodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_faccessat, AUE_NULL }, /* 307 = linux_faccessat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_pselect6, AUE_NULL }, /* 308 = linux_pselect6 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ppoll, AUE_NULL }, /* 309 = linux_ppoll */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unshare, AUE_NULL }, /* 310 = linux_unshare */ }; ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/syscalls.master#6 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -418,61 +418,61 @@ 251 AUE_NULL UNIMPL 252 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit_group \ sys_exit_args void -253 AUE_NULL UNIMPL linux_lookup_dcookie -254 AUE_NULL UNIMPL linux_epoll_create -255 AUE_NULL UNIMPL linux_epoll_ctl -256 AUE_NULL UNIMPL linux_epoll_wait -257 AUE_NULL UNIMPL linux_remap_file_pages -258 AUE_NULL UNIMPL linux_set_tid_address -259 AUE_NULL UNIMPL linux_timer_create -260 AUE_NULL UNIMPL linux_timer_settime -261 AUE_NULL UNIMPL linux_timer_gettime -262 AUE_NULL UNIMPL linux_timer_getoverrun -263 AUE_NULL UNIMPL linux_timer_delete -264 AUE_CLOCK_SETTIME UNIMPL linux_clock_settime -265 AUE_NULL UNIMPL linux_clock_gettime -266 AUE_NULL UNIMPL linux_clock_getres -267 AUE_NULL UNIMPL linux_clock_nanosleep -268 AUE_NULL UNIMPL linux_statfs64 -269 AUE_NULL UNIMPL linux_fstatfs64 -270 AUE_NULL UNIMPL linux_tgkill /* 270 */ -271 AUE_NULL UNIMPL linux_utimes -272 AUE_NULL UNIMPL linux_fadvise64_64 -273 AUE_NULL UNIMPL linux_ni_syscall /* linux_vserver */ -274 AUE_NULL UNIMPL linux_mbind -275 AUE_NULL UNIMPL linux_get_mempolicy -276 AUE_NULL UNIMPL linux_set_mempolicy -277 AUE_NULL UNIMPL linux_mq_open -278 AUE_NULL UNIMPL linux_mq_unlink -279 AUE_NULL UNIMPL linux_mq_timedsend >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jun 21 11:20:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4B5A816A47E; Wed, 21 Jun 2006 11:20:19 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 26ADB16A479 for ; Wed, 21 Jun 2006 11:20:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC3B443D46 for ; Wed, 21 Jun 2006 11:20:18 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LBKIEo067426 for ; Wed, 21 Jun 2006 11:20:18 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LBKHrq067422 for perforce@freebsd.org; Wed, 21 Jun 2006 11:20:17 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 21 Jun 2006 11:20:17 GMT Message-Id: <200606211120.k5LBKHrq067422@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 99746 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 11:20:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=99746 Change 99746 by hselasky@hselasky_mini_itx on 2006/06/21 11:20:13 Finished converthing the USB audio system. The old "uaudio" driver was in a horrible state. I hope that things are now better. High speed devices should be supported. I had to cut down on the sample rate selection. It is now all fixed. The locking should be right. Loading of mixer registers are now all asynchronous. Cleaned up function naming. Everything that has got to do with PCM is named "uaudio_chan". Everything that has got to do with the mixer is named "uaudio_mixer". A lot of possible buffer overflows were caught. And one possible division by zero. Please test! Affected files ... .. //depot/projects/usb/src/sys/dev/sound/pcm/mixer.c#2 edit .. //depot/projects/usb/src/sys/dev/sound/pcm/mixer.h#2 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#2 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.h#2 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio_pcm.c#2 edit .. //depot/projects/usb/src/sys/dev/sound/usb/uaudioreg.h#2 edit Differences ... ==== //depot/projects/usb/src/sys/dev/sound/pcm/mixer.c#2 (text+ko) ==== @@ -234,6 +234,8 @@ if (MIXER_INIT(m)) goto bad; + snd_mtxlock(m->lock); + for (i = 0; i < SOUND_MIXER_NRDEVICES; i++) { v = snd_mixerdefaults[i]; @@ -249,6 +251,8 @@ mixer_setrecsrc(m, SOUND_MASK_MIC); + snd_mtxunlock(m->lock); + unit = device_get_unit(dev); pdev = make_dev(&mixer_cdevsw, PCMMKMINOR(unit, SND_DEV_CTL, 0), UID_ROOT, GID_WHEEL, 0666, "mixer%d", unit); @@ -293,8 +297,14 @@ mixer_setrecsrc(m, SOUND_MASK_MIC); + snd_mtxunlock(m->lock); + + /* + * MIXER_UNINIT() can sleep! + */ MIXER_UNINIT(m); + snd_mtxlock(m->lock); snd_mtxfree(m->lock); kobj_delete((kobj_t)m, M_MIXER); @@ -429,6 +439,17 @@ snd_mtxunlock(m->lock); } +/* + * allow the sound driver to use + * the mixer lock to protect its + * mixer data: + */ +struct mtx * +mixer_get_lock(struct snd_mixer *m) +{ + return m->lock; +} + /* ----------------------------------------------------------------------- */ static int ==== //depot/projects/usb/src/sys/dev/sound/pcm/mixer.h#2 (text+ko) ==== @@ -40,6 +40,7 @@ u_int32_t mix_getdevs(struct snd_mixer *m); u_int32_t mix_getrecdevs(struct snd_mixer *m); void *mix_getdevinfo(struct snd_mixer *m); +struct mtx * mixer_get_lock(struct snd_mixer *m); /* * this is a kludge to allow hiding of the struct snd_mixer definition ==== //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#2 (text+ko) ==== @@ -44,11 +44,6 @@ * http://www.usb.org/developers/devclass_docs/termt10.pdf */ -#include -#if defined(__NetBSD__) || defined(__OpenBSD__) -__KERNEL_RCSID(0, "$NetBSD: uaudio.c,v 1.91 2004/11/05 17:46:14 kent Exp $"); -#endif - /* * Also merged: * $NetBSD: uaudio.c,v 1.94 2005/01/15 15:19:53 kent Exp $ @@ -57,222 +52,193 @@ * $NetBSD: uaudio.c,v 1.97 2005/02/24 08:19:38 martin Exp $ */ +#include #include #include #include #include -#if defined(__NetBSD__) || defined(__OpenBSD__) -#include -#include -#endif -#include -#include -#include /* for bootverbose */ -#include -#include -#if defined(__NetBSD__) || defined(__OpenBSD__) -#include -#elif defined(__FreeBSD__) -#include -#include -#include -#endif -#include -#if defined(__FreeBSD__) -#include -#include -#endif +#include /* for bootverbose */ + +#include +#include +#include +#include -#if defined(__NetBSD__) || defined(__OpenBSD__) -#include -#include -#include -#include -#include -#elif defined(__FreeBSD__) -#include /* XXXXX */ +#include #include #include "feeder_if.h" -#endif -#include -#include -#include -#include - -#if defined(__NetBSD__) || defined(__OpenBSD__) -#include -#elif defined(__FreeBSD__) #include #include -#endif -#if defined(__NetBSD__) || defined(__OpenBSD__) -/* #define UAUDIO_DEBUG */ -#else -/* #define USB_DEBUG */ -#endif -/* #define UAUDIO_MULTIPLE_ENDPOINTS */ #ifdef USB_DEBUG -#define DPRINTF(x) do { if (uaudiodebug) logprintf x; } while (0) -#define DPRINTFN(n,x) do { if (uaudiodebug>(n)) logprintf x; } while (0) -int uaudiodebug = 0; -#if defined(__FreeBSD__) +#define DPRINTF(n,fmt,...) \ + do { if (uaudio_debug > (n)) { \ + printf("%s: " fmt, __FUNCTION__,## __VA_ARGS__); } } while (0) + +static int uaudio_debug = 0; SYSCTL_NODE(_hw_usb, OID_AUTO, uaudio, CTLFLAG_RW, 0, "USB uaudio"); SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, debug, CTLFLAG_RW, - &uaudiodebug, 0, "uaudio debug level"); -#endif + &uaudio_debug, 0, "uaudio debug level"); #else -#define DPRINTF(x) -#define DPRINTFN(n,x) +#define DPRINTF(...) #endif -#define UAUDIO_NCHANBUFS 6 /* number of outstanding request */ -#if defined(__NetBSD__) || defined(__OpenBSD__) -#define UAUDIO_NFRAMES 10 /* ms of sound in each request */ -#elif defined(__FreeBSD__) -#define UAUDIO_NFRAMES 20 /* ms of sound in each request */ -#endif +static u_int32_t uaudio_default_rate = 96000; +static u_int8_t uaudio_default_bits = 32; +static u_int8_t uaudio_default_channels = 2; + +#define UAUDIO_NCHANBUFS 2 /* number of outstanding request */ +#define UAUDIO_NFRAMES 25 /* ms of sound in each request */ +#define UAUDIO_RECURSE_LIMIT 24 /* rounds */ +#define UAUDIO_DEFAULT_BUFSZ (16*1024) /* bytes */ + + +#define MAKE_WORD(h,l) (((h) << 8) | (l)) +#define BIT_TEST(bm,bno) (((bm)[(bno) / 8] >> (7 - ((bno) % 8))) & 1) +struct uaudio_mixer_node { + int32_t minval; + int32_t maxval; #define MIX_MAX_CHAN 8 -struct mixerctl { - uint16_t wValue[MIX_MAX_CHAN]; /* using nchan */ - uint16_t wIndex; - uint8_t nchan; - uint8_t type; + int32_t wValue[MIX_MAX_CHAN]; /* using nchan */ + u_int32_t delta; + u_int32_t mul; + u_int32_t ctl; + + u_int16_t wData[MIX_MAX_CHAN]; /* using nchan */ + u_int16_t wIndex; + + u_int8_t update[(MIX_MAX_CHAN+7)/8]; + u_int8_t nchan; + u_int8_t type; #define MIX_ON_OFF 1 #define MIX_SIGNED_16 2 #define MIX_UNSIGNED_16 3 #define MIX_SIGNED_8 4 #define MIX_SELECTOR 5 -#define MIX_SIZE(n) ((n) == MIX_SIGNED_16 || (n) == MIX_UNSIGNED_16 ? 2 : 1) +#define MIX_UNKNOWN 6 +#define MIX_SIZE(n) ((((n) == MIX_SIGNED_16) || \ + ((n) == MIX_UNSIGNED_16)) ? 2 : 1) #define MIX_UNSIGNED(n) ((n) == MIX_UNSIGNED_16) - int minval, maxval; - u_int delta; - u_int mul; -#if defined(__FreeBSD__) /* XXXXX */ - unsigned ctl; + #define MAX_SELECTOR_INPUT_PIN 256 - uint8_t slctrtype[MAX_SELECTOR_INPUT_PIN]; -#endif - uint8_t class; -#if !defined(__FreeBSD__) - char ctlname[MAX_AUDIO_DEV_LEN]; - char *ctlunit; -#endif -}; -#define MAKE(h,l) (((h) << 8) | (l)) + u_int8_t slctrtype[MAX_SELECTOR_INPUT_PIN]; + u_int8_t class; -struct as_info { - uint8_t alt; - uint8_t encoding; - uint8_t attributes; /* Copy of bmAttributes of - * usb_audio_streaming_endpoint_descriptor - */ - usbd_interface_handle ifaceh; - const usb_interface_descriptor_t *idesc; - const usb_endpoint_descriptor_audio_t *edesc; - const usb_endpoint_descriptor_audio_t *edesc1; - const struct usb_audio_streaming_type1_descriptor *asf1desc; - int sc_busy; /* currently used */ + struct uaudio_mixer_node *next; }; -struct chan { -#if defined(__NetBSD__) || defined(__OpenBSD__) - void (*intr)(void *); /* DMA completion intr handler */ - void *arg; /* arg for intr() */ -#else - struct pcm_channel *pcm_ch; -#endif - usbd_pipe_handle pipe; - usbd_pipe_handle sync_pipe; +struct uaudio_chan { + struct pcmchan_caps pcm_cap; /* capabilities */ + struct usbd_memory_wait mem_wait; - u_int sample_size; - u_int sample_rate; - u_int bytes_per_frame; - u_int fraction; /* fraction/1000 is the extra samples/frame */ - u_int residue; /* accumulates the fractional samples */ + struct snd_dbuf *pcm_buf; + const struct usbd_config *usb_cfg; + struct mtx * pcm_mtx; /* lock protecting this structure */ + struct uaudio_softc * priv_sc; + struct pcm_channel * pcm_ch; + struct usbd_xfer * xfer[UAUDIO_NCHANBUFS]; + const struct usb_audio_streaming_interface_descriptor *p_asid; + const struct usb_audio_streaming_type1_descriptor *p_asf1d; + const struct usb_audio_streaming_endpoint_descriptor *p_sed; + const usb_endpoint_descriptor_audio_t *p_ed1; + const usb_endpoint_descriptor_audio_t *p_ed2; + const struct uaudio_format *p_fmt; - u_char *start; /* upper layer buffer start */ - u_char *end; /* upper layer buffer end */ - u_char *cur; /* current position in upper layer buffer */ - int blksize; /* chunk size to report up */ - int transferred; /* transferred bytes not reported up */ + u_int8_t * buf; /* pointer to buffer */ + u_int8_t * start; /* upper layer buffer start */ + u_int8_t * end; /* upper layer buffer end */ + u_int8_t * cur; /* current position in upper layer buffer */ - int altidx; /* currently used altidx */ + u_int32_t block_size; + u_int32_t sample_rate; + u_int32_t format; + u_int32_t pcm_format[2]; - int curchanbuf; - struct chanbuf { - struct chan *chan; - usbd_xfer_handle xfer; - u_char *buffer; - u_int16_t sizes[UAUDIO_NFRAMES]; - u_int16_t offsets[UAUDIO_NFRAMES]; - u_int16_t size; - } chanbufs[UAUDIO_NCHANBUFS]; + u_int16_t bytes_per_frame; - struct uaudio_softc *sc; /* our softc */ -#if defined(__FreeBSD__) - u_int32_t format; - int precision; - int channels; -#endif + u_int8_t valid; + u_int8_t iface_index; + u_int8_t iface_alt_index; }; struct uaudio_softc { - USBBASEDEVICE sc_dev; /* base device */ - usbd_device_handle sc_udev; /* USB device */ - int sc_ac_iface; /* Audio Control interface */ - usbd_interface_handle sc_ac_ifaceh; - struct chan sc_playchan; /* play channel */ - struct chan sc_recchan; /* record channel */ - int sc_nullalt; - int sc_audio_rev; - struct as_info *sc_alts; /* alternate settings */ - int sc_nalts; /* # of alternate settings */ - int sc_altflags; -#define HAS_8 0x01 -#define HAS_16 0x02 -#define HAS_8U 0x04 -#define HAS_ALAW 0x08 -#define HAS_MULAW 0x10 -#define UA_NOFRAC 0x20 /* don't do sample rate adjustment */ -#define HAS_24 0x40 -#define HAS_32 0x80 - int sc_mode; /* play/record capability */ - struct mixerctl *sc_ctls; /* mixer controls */ - int sc_nctls; /* # of mixer controls */ - device_ptr_t sc_audiodev; - char sc_dying; -#if defined(__FreeBSD__) - struct sbuf uaudio_sndstat; - int uaudio_sndstat_flag; -#endif + struct sbuf sc_sndstat; + struct sndcard_func sc_sndcard_func; + struct uaudio_chan sc_rec_chan; + struct uaudio_chan sc_play_chan; + struct usbd_memory_wait sc_mixer_mem; + + struct usbd_device * sc_udev; + struct usbd_xfer * sc_mixer_xfer[1]; + struct mtx * sc_mixer_lock; + struct uaudio_mixer_node * sc_mixer_root; + struct uaudio_mixer_node * sc_mixer_curr; + + u_int32_t sc_buffer_size; + u_int32_t sc_mix_info; + u_int32_t sc_recsrc_info; + + u_int16_t sc_audio_rev; + u_int16_t sc_mixer_count; + + u_int8_t sc_sndstat_valid; + u_int8_t sc_mixer_iface_index; + u_int8_t sc_mixer_iface_no; + u_int8_t sc_mixer_chan; + u_int8_t sc_pcm_registered : 1; + u_int8_t sc_mixer_init : 1; + u_int8_t sc_unused : 6; }; -struct terminal_list { - int size; - uint16_t terminals[1]; +struct uaudio_search_result { + u_int8_t bit_input[(256+7)/8]; + u_int8_t bit_output[(256+7)/8]; + u_int8_t bit_visited[(256+7)/8]; + u_int8_t recurse_level; + u_int8_t id_max; }; -#define TERMINAL_LIST_SIZE(N) (offsetof(struct terminal_list, terminals) \ - + sizeof(uint16_t) * (N)) -struct io_terminal { +struct uaudio_terminal_node { union { - const usb_descriptor_t *desc; - const struct usb_audio_input_terminal *it; - const struct usb_audio_output_terminal *ot; - const struct usb_audio_mixer_unit *mu; - const struct usb_audio_selector_unit *su; - const struct usb_audio_feature_unit *fu; - const struct usb_audio_processing_unit *pu; - const struct usb_audio_extension_unit *eu; - } d; - int inputs_size; - struct terminal_list **inputs; /* list of source input terminals */ - struct terminal_list *output; /* list of destination output terminals */ - int direct; /* directly connected to an output terminal */ + const usb_descriptor_t *desc; + const struct usb_audio_input_terminal *it; + const struct usb_audio_output_terminal *ot; + const struct usb_audio_mixer_unit_0 *mu; + const struct usb_audio_selector_unit *su; + const struct usb_audio_feature_unit *fu; + const struct usb_audio_processing_unit_0 *pu; + const struct usb_audio_extension_unit_0 *eu; + } u; + struct uaudio_search_result usr; + struct uaudio_terminal_node *root; +}; + +struct uaudio_format { + u_int16_t wFormat; + u_int8_t bPrecision; + u_int32_t freebsd_fmt; + const char * description; +}; + +static const struct uaudio_format uaudio_formats[] = { + + {UA_FMT_PCM8, 8, AFMT_U8, "8-bit U-LE PCM" }, + {UA_FMT_PCM8, 16, AFMT_U16_LE, "16-bit U-LE PCM" }, + {UA_FMT_PCM8, 24, AFMT_U24_LE, "24-bit U-LE PCM" }, + {UA_FMT_PCM8, 32, AFMT_U32_LE, "32-bit U-LE PCM" }, + + {UA_FMT_PCM, 8, AFMT_S8, "8-bit S-LE PCM" }, + {UA_FMT_PCM, 16, AFMT_S16_LE, "16-bit S-LE PCM" }, + {UA_FMT_PCM, 24, AFMT_S24_LE, "24-bit S-LE PCM" }, + {UA_FMT_PCM, 32, AFMT_S32_LE, "32-bit S-LE PCM" }, + + {UA_FMT_ALAW, 8, AFMT_A_LAW, "8-bit A-Law" }, + {UA_FMT_MULAW, 8, AFMT_MU_LAW, "8-bit mu-Law" }, + + {0,0,0,NULL} }; #define UAC_OUTPUT 0 @@ -280,4268 +246,2832 @@ #define UAC_EQUAL 2 #define UAC_RECORD 3 #define UAC_NCLASSES 4 + #ifdef USB_DEBUG -#if defined(__FreeBSD__) -#define AudioCinputs "inputs" -#define AudioCoutputs "outputs" -#define AudioCrecord "record" -#define AudioCequalization "equalization" +static const char *uac_names[] = { + "outputs", "inputs", "equalization", "record" +}; #endif -Static const char *uac_names[] = { - AudioCoutputs, AudioCinputs, AudioCequalization, AudioCrecord, -}; + +/* prototypes */ + +static device_probe_t uaudio_probe; +static device_attach_t uaudio_attach; +static device_detach_t uaudio_detach; + +#ifdef USB_DEBUG +static void +uaudio_chan_dump_ep_desc(const usb_endpoint_descriptor_audio_t *ed); #endif -Static usbd_status uaudio_identify_ac - (struct uaudio_softc *, const usb_config_descriptor_t *); -Static usbd_status uaudio_identify_as - (struct uaudio_softc *, const usb_config_descriptor_t *); -Static usbd_status uaudio_process_as - (struct uaudio_softc *, const char *, int *, int, - const usb_interface_descriptor_t *); +static void +uaudio_chan_fill_info_sub(struct uaudio_softc *sc, struct usbd_device *udev, + u_int32_t rate, u_int16_t fps, u_int8_t channels, + u_int8_t bit_resolution); + +static void +uaudio_chan_fill_info(struct uaudio_softc *sc, struct usbd_device *udev); -Static void uaudio_add_alt(struct uaudio_softc *, const struct as_info *); +static void +uaudio_chan_play_callback(struct usbd_xfer *xfer); -Static const usb_interface_descriptor_t *uaudio_find_iface - (const char *, int, int *, int); +static void +uaudio_chan_record_callback(struct usbd_xfer *xfer); -Static void uaudio_mixer_add_ctl(struct uaudio_softc *, struct mixerctl *); +static void +uaudio_mixer_add_ctl_sub(struct uaudio_softc *sc, + struct uaudio_mixer_node *mc); +static void +uaudio_mixer_add_ctl(struct uaudio_softc *sc, struct uaudio_mixer_node *mc); -#if defined(__NetBSD__) || defined(__OpenBSD__) -Static char *uaudio_id_name - (struct uaudio_softc *, const struct io_terminal *, int); -#endif +static void +uaudio_mixer_add_input(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static void +uaudio_mixer_add_output(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static void +uaudio_mixer_add_mixer(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static void +uaudio_mixer_add_selector(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static u_int32_t +uaudio_mixer_feature_get_bmaControls(const struct usb_audio_feature_unit *d, + u_int8_t index); +static void +uaudio_mixer_add_feature(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static void +uaudio_mixer_add_processing_updown(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, + int id); +static void +uaudio_mixer_add_processing(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static void +uaudio_mixer_add_extension(struct uaudio_softc *sc, + const struct uaudio_terminal_node *iot, int id); +static const void * +uaudio_mixer_verify_desc(const void *arg, u_int32_t len); #ifdef USB_DEBUG -Static void uaudio_dump_cluster(const struct usb_audio_cluster *); +static void +uaudio_mixer_dump_cluster(u_int8_t id, const struct uaudio_terminal_node *iot); #endif -Static struct usb_audio_cluster uaudio_get_cluster - (int, const struct io_terminal *); -Static void uaudio_add_input - (struct uaudio_softc *, const struct io_terminal *, int); -Static void uaudio_add_output - (struct uaudio_softc *, const struct io_terminal *, int); -Static void uaudio_add_mixer - (struct uaudio_softc *, const struct io_terminal *, int); -Static void uaudio_add_selector - (struct uaudio_softc *, const struct io_terminal *, int); + +static struct usb_audio_cluster +uaudio_mixer_get_cluster(u_int8_t id, const struct uaudio_terminal_node *iot); + #ifdef USB_DEBUG -Static const char *uaudio_get_terminal_name(int); -#endif -Static int uaudio_determine_class - (const struct io_terminal *, struct mixerctl *); -#if defined(__FreeBSD__) -Static const int uaudio_feature_name(const struct io_terminal *, - struct mixerctl *); -#else -Static const char *uaudio_feature_name - (const struct io_terminal *, struct mixerctl *); +static const char * +uaudio_mixer_get_terminal_name(u_int16_t terminal_type); #endif -Static void uaudio_add_feature - (struct uaudio_softc *, const struct io_terminal *, int); -Static void uaudio_add_processing_updown - (struct uaudio_softc *, const struct io_terminal *, int); -Static void uaudio_add_processing - (struct uaudio_softc *, const struct io_terminal *, int); -Static void uaudio_add_extension - (struct uaudio_softc *, const struct io_terminal *, int); -Static struct terminal_list *uaudio_merge_terminal_list - (const struct io_terminal *); -Static struct terminal_list *uaudio_io_terminaltype - (int, struct io_terminal *, int); -Static usbd_status uaudio_identify - (struct uaudio_softc *, const usb_config_descriptor_t *); -Static int uaudio_signext(int, int); -#if defined(__NetBSD__) || defined(__OpenBSD__) -Static int uaudio_value2bsd(struct mixerctl *, int); -#endif -Static int uaudio_bsd2value(struct mixerctl *, int); -Static int uaudio_get(struct uaudio_softc *, int, int, int, int, int); -#if defined(__NetBSD__) || defined(__OpenBSD__) -Static int uaudio_ctl_get - (struct uaudio_softc *, int, struct mixerctl *, int); -#endif -Static void uaudio_set - (struct uaudio_softc *, int, int, int, int, int, int); -Static void uaudio_ctl_set - (struct uaudio_softc *, int, struct mixerctl *, int, int); +static u_int16_t +uaudio_mixer_determine_class(const struct uaudio_terminal_node *iot, + struct uaudio_mixer_node *mix); +static const u_int16_t +uaudio_mixer_feature_name(const struct uaudio_terminal_node *iot, + struct uaudio_mixer_node *mix); -Static usbd_status uaudio_set_speed(struct uaudio_softc *, int, u_int); +static const struct uaudio_terminal_node * +uaudio_mixer_get_input(const struct uaudio_terminal_node *iot, u_int8_t index); -Static usbd_status uaudio_chan_open(struct uaudio_softc *, struct chan *); -Static void uaudio_chan_close(struct uaudio_softc *, struct chan *); -Static usbd_status uaudio_chan_alloc_buffers - (struct uaudio_softc *, struct chan *); -Static void uaudio_chan_free_buffers(struct uaudio_softc *, struct chan *); +static const struct uaudio_terminal_node * +uaudio_mixer_get_output(const struct uaudio_terminal_node *iot, + u_int8_t index); +static void +uaudio_mixer_find_inputs_sub(struct uaudio_terminal_node *root, + const u_int8_t *p_id, u_int8_t n_id, + struct uaudio_search_result *info); +static void +uaudio_mixer_find_outputs_sub(struct uaudio_terminal_node *root, u_int8_t id, + u_int8_t n_id, + struct uaudio_search_result *info); +static void +uaudio_mixer_fill_info(struct uaudio_softc *sc, struct usbd_device *udev, + void *desc); +static u_int16_t +uaudio_mixer_get(struct usbd_device *udev, u_int8_t what, + struct uaudio_mixer_node *mc); +static void +uaudio_mixer_write_cfg_callback(struct usbd_xfer *xfer); -#if defined(__NetBSD__) || defined(__OpenBSD__) -Static void uaudio_chan_init - (struct chan *, int, const struct audio_params *, int); -Static void uaudio_chan_set_param(struct chan *, u_char *, u_char *, int); -#endif +static usbd_status +uaudio_set_speed(struct usbd_device *udev, u_int8_t endpt, u_int32_t speed); -Static void uaudio_chan_ptransfer(struct chan *); -Static void uaudio_chan_pintr - (usbd_xfer_handle, usbd_private_handle, usbd_status); +static int +uaudio_mixer_signext(u_int8_t type, int val); -Static void uaudio_chan_rtransfer(struct chan *); -Static void uaudio_chan_rintr - (usbd_xfer_handle, usbd_private_handle, usbd_status); +static int +uaudio_mixer_bsd2value(struct uaudio_mixer_node *mc, int32_t val); -#if defined(__NetBSD__) || defined(__OpenBSD__) -Static int uaudio_open(void *, int); -Static void uaudio_close(void *); -Static int uaudio_drain(void *); -Static int uaudio_query_encoding(void *, struct audio_encoding *); -Static void uaudio_get_minmax_rates - (int, const struct as_info *, const struct audio_params *, - int, u_long *, u_long *); -Static int uaudio_match_alt_sub - (int, const struct as_info *, const struct audio_params *, int, u_long); -Static int uaudio_match_alt_chan - (int, const struct as_info *, struct audio_params *, int); -Static int uaudio_match_alt - (int, const struct as_info *, struct audio_params *, int); -Static int uaudio_set_params - (void *, int, int, struct audio_params *, struct audio_params *); -Static int uaudio_round_blocksize(void *, int); -Static int uaudio_trigger_output - (void *, void *, void *, int, void (*)(void *), void *, - struct audio_params *); -Static int uaudio_trigger_input - (void *, void *, void *, int, void (*)(void *), void *, - struct audio_params *); -Static int uaudio_halt_in_dma(void *); -Static int uaudio_halt_out_dma(void *); -Static int uaudio_getdev(void *, struct audio_device *); -Static int uaudio_mixer_set_port(void *, mixer_ctrl_t *); -Static int uaudio_mixer_get_port(void *, mixer_ctrl_t *); -Static int uaudio_query_devinfo(void *, mixer_devinfo_t *); -Static int uaudio_get_props(void *); +static void +uaudio_mixer_ctl_set(struct uaudio_softc *sc, struct uaudio_mixer_node *mc, + u_int8_t chan, int32_t val); +static void +uaudio_mixer_init(struct uaudio_softc *sc); -Static const struct audio_hw_if uaudio_hw_if = { - uaudio_open, - uaudio_close, - uaudio_drain, - uaudio_query_encoding, - uaudio_set_params, - uaudio_round_blocksize, - NULL, - NULL, - NULL, - NULL, - NULL, - uaudio_halt_out_dma, - uaudio_halt_in_dma, - NULL, - uaudio_getdev, - NULL, - uaudio_mixer_set_port, - uaudio_mixer_get_port, - uaudio_query_devinfo, - NULL, - NULL, - NULL, - NULL, - uaudio_get_props, - uaudio_trigger_output, - uaudio_trigger_input, - NULL, -}; +static const struct usbd_config uaudio_cfg_record_full_speed[UAUDIO_NCHANBUFS] = { + [0] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UAUDIO_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_record_callback, + }, -Static struct audio_device uaudio_device = { - "USB audio", - "", - "uaudio" + [1] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UAUDIO_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_record_callback, + }, }; -#elif defined(__FreeBSD__) -Static int audio_attach_mi(device_t); -Static int uaudio_init_params(struct uaudio_softc * sc, struct chan *ch, int mode); -static int uaudio_sndstat_prepare_pcm(struct sbuf *s, device_t dev, int verbose); +static const struct usbd_config uaudio_cfg_record_high_speed[UAUDIO_NCHANBUFS] = { + [0] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = (UAUDIO_NFRAMES * 8), + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_record_callback, + }, -/* for NetBSD compatibirity */ -#define AUMODE_PLAY 0x01 -#define AUMODE_RECORD 0x02 + [1] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = (UAUDIO_NFRAMES * 8), + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_record_callback, + }, +}; -#define AUDIO_PROP_FULLDUPLEX 0x01 +static const struct usbd_config uaudio_cfg_play_full_speed[UAUDIO_NCHANBUFS] = { + [0] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UAUDIO_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_play_callback, + }, -#define AUDIO_ENCODING_ULAW 1 -#define AUDIO_ENCODING_ALAW 2 -#define AUDIO_ENCODING_SLINEAR_LE 6 -#define AUDIO_ENCODING_SLINEAR_BE 7 -#define AUDIO_ENCODING_ULINEAR_LE 8 -#define AUDIO_ENCODING_ULINEAR_BE 9 + [1] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UAUDIO_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_play_callback, + }, +}; -#endif /* FreeBSD */ +static const struct usbd_config uaudio_cfg_play_high_speed[UAUDIO_NCHANBUFS] = { + [0] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = (UAUDIO_NFRAMES * 8), + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_play_callback, + }, + [1] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = (UAUDIO_NFRAMES * 8), + .flags = USBD_SHORT_XFER_OK, + .callback = &uaudio_chan_play_callback, + }, +}; -#if defined(__NetBSD__) || defined(__OpenBSD__) +static const struct usbd_config uaudio_mixer_config[1] = { + [0] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = (sizeof(usb_device_request_t) + 4), + .callback = &uaudio_mixer_write_cfg_callback, + .timeout = 1000, /* 1 second */ + }, +}; -USB_DECLARE_DRIVER(uaudio); -#elif defined(__FreeBSD__) +static devclass_t uaudio_devclass; -USB_DECLARE_DRIVER_INIT(uaudio, - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), - DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(bus_print_child, bus_generic_print_child) - ); -#endif +static device_method_t uaudio_methods[] = { + DEVMETHOD(device_probe, uaudio_probe), + DEVMETHOD(device_attach, uaudio_attach), + DEVMETHOD(device_detach, uaudio_detach), + DEVMETHOD(device_suspend, bus_generic_suspend), + DEVMETHOD(device_resume, bus_generic_resume), + DEVMETHOD(device_shutdown, bus_generic_shutdown), + DEVMETHOD(bus_print_child, bus_generic_print_child), + { 0, 0 } +}; +static driver_t uaudio_driver = { + .name = "uaudio", + .methods = uaudio_methods, + .size = sizeof(struct uaudio_softc), +}; -USB_MATCH(uaudio) +static int +uaudio_probe(device_t dev) { - USB_MATCH_START(uaudio, uaa); + struct usb_attach_arg *uaa = device_get_ivars(dev); usb_interface_descriptor_t *id; - if (uaa->iface == NULL) - return UMATCH_NONE; + if (uaa->iface == NULL) { + return UMATCH_NONE; + } id = usbd_get_interface_descriptor(uaa->iface); - /* Trigger on the control interface. */ - if (id == NULL || - id->bInterfaceClass != UICLASS_AUDIO || - id->bInterfaceSubClass != UISUBCLASS_AUDIOCONTROL || - (usbd_get_quirks(uaa->device)->uq_flags & UQ_BAD_AUDIO)) - return UMATCH_NONE; + + /* trigger on the control interface */ + + if ((id == NULL) || + (id->bInterfaceClass != UICLASS_AUDIO) || + (id->bInterfaceSubClass != UISUBCLASS_AUDIOCONTROL) || + (usbd_get_quirks(uaa->device)->uq_flags & UQ_BAD_AUDIO)) { + return UMATCH_NONE; + } return UMATCH_IFACECLASS_IFACESUBCLASS; } -USB_ATTACH(uaudio) +static int +uaudio_attach(device_t dev) { - USB_ATTACH_START(uaudio, sc, uaa); + struct usb_attach_arg *uaa = device_get_ivars(dev); + struct uaudio_softc *sc = device_get_softc(dev); usb_interface_descriptor_t *id; - usb_config_descriptor_t *cdesc; - char devinfo[1024]; - usbd_status err; - int i, j, found; + device_t child; + + sc->sc_play_chan.priv_sc = sc; + sc->sc_rec_chan.priv_sc = sc; + sc->sc_udev = uaa->device; + + usbd_set_desc(dev, uaa->device); + + id = usbd_get_interface_descriptor(uaa->iface); + + uaudio_chan_fill_info(sc, uaa->device); -#if defined(__FreeBSD__) - usbd_devinfo(uaa->device, 0, devinfo); - USB_ATTACH_SETUP; -#else - usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo)); - printf(": %s\n", devinfo); -#endif + uaudio_mixer_fill_info(sc, uaa->device, id); - sc->sc_udev = uaa->device; + sc->sc_mixer_iface_index = uaa->iface_index; + sc->sc_mixer_iface_no = id->bInterfaceNumber; - cdesc = usbd_get_config_descriptor(sc->sc_udev); - if (cdesc == NULL) { - printf("%s: failed to get configuration descriptor\n", - USBDEVNAME(sc->sc_dev)); - USB_ATTACH_ERROR_RETURN; - } + DPRINTF(0, "audio rev %d.%02x\n", + sc->sc_audio_rev >> 8, + sc->sc_audio_rev & 0xff); - err = uaudio_identify(sc, cdesc); - if (err) { - printf("%s: audio descriptors make no sense, error=%d\n", - USBDEVNAME(sc->sc_dev), err); - USB_ATTACH_ERROR_RETURN; - } + DPRINTF(0, "%d mixer controls\n", + sc->sc_mixer_count); - sc->sc_ac_ifaceh = uaa->iface; - /* Pick up the AS interface. */ - for (i = 0; i < uaa->nifaces; i++) { - if (uaa->ifaces[i] == NULL) - continue; - id = usbd_get_interface_descriptor(uaa->ifaces[i]); - if (id == NULL) - continue; - found = 0; - for (j = 0; j < sc->sc_nalts; j++) { - if (id->bInterfaceNumber == - sc->sc_alts[j].idesc->bInterfaceNumber) { - sc->sc_alts[j].ifaceh = uaa->ifaces[i]; - found = 1; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jun 21 11:30:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1885316A47B; Wed, 21 Jun 2006 11:30:07 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E7B9A16A474 for ; Wed, 21 Jun 2006 11:30:06 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF67B43D7F for ; Wed, 21 Jun 2006 11:29:32 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LBTV75067854 for ; Wed, 21 Jun 2006 11:29:31 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LBTVZr067851 for perforce@freebsd.org; Wed, 21 Jun 2006 11:29:31 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 21 Jun 2006 11:29:31 GMT Message-Id: <200606211129.k5LBTVZr067851@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 99747 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 11:30:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=99747 Change 99747 by rdivacky@rdivacky_witten on 2006/06/21 11:29:20 Back-out revisions 99144 and 99406. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysvec.c#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linprocfs/linprocfs.c#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_mib.c#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.c#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.h#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#4 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysvec.c#4 (text+ko) ==== @@ -1018,7 +1018,7 @@ ELFOSABI_LINUX, EM_386, "Linux", - "/compat/linux/", + "/compat/linux", "/lib/ld-linux.so.1", &elf_linux_sysvec, NULL, @@ -1029,7 +1029,7 @@ ELFOSABI_LINUX, EM_386, "Linux", - "/compat/linux/", + "/compat/linux", "/lib/ld-linux.so.2", &elf_linux_sysvec, NULL, ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linprocfs/linprocfs.c#3 (text+ko) ==== @@ -281,9 +281,7 @@ char *dlep, *flep, *mntto, *mntfrom, *fstype; size_t lep_len; int error; - char linux_emul_path[LINUX_NAME_MAX]; - linux_get_emul_path(td, linux_emul_path); /* resolve symlinks etc. in the emulation tree prefix */ NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, linux_emul_path, td); flep = NULL; ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_mib.c#4 (text+ko) ==== @@ -38,10 +38,7 @@ #include #include #include -#include -#include -extern Elf32_Brandinfo *linux_brandlist[]; #include "opt_compat.h" #ifdef COMPAT_LINUX32 @@ -55,7 +52,6 @@ char pr_osname[LINUX_MAX_UTSNAME]; char pr_osrelease[LINUX_MAX_UTSNAME]; int pr_oss_version; - char pr_emul_path[LINUX_NAME_MAX]; }; SYSCTL_NODE(_compat, OID_AUTO, linux, CTLFLAG_RW, 0, @@ -85,61 +81,6 @@ 0, 0, linux_sysctl_osname, "A", "Linux kernel OS name"); -char linux_emul_path[LINUX_NAME_MAX] = "/compat/linux/"; - -static int -linux_sysctl_linux_emul_path(SYSCTL_HANDLER_ARGS) -{ - static char emul_path[LINUX_NAME_MAX]; - int error; - Elf32_Brandinfo **brandinfo; - - linux_get_emul_path(req->td, emul_path); - error = sysctl_handle_string(oidp, emul_path, LINUX_NAME_MAX, req); - if (error || req->newptr == NULL) - return (error); - error = linux_set_emul_path(req->td, emul_path); - { - static Elf32_Brandinfo linux_brand = { - ELFOSABI_LINUX, - EM_386, - "Linux", - emul_path, - "/lib/ld-linux.so.1", - &elf_linux_sysvec, - NULL, - BI_CAN_EXEC_DYN, - }; - static Elf32_Brandinfo linux_glibc2brand = { - ELFOSABI_LINUX, - EM_386, - "Linux", - emul_path, - "/lib/ld-linux.so.2", - &elf_linux_sysvec, - NULL, - BI_CAN_EXEC_DYN, - }; - - Elf32_Brandinfo *local_linux_brandlist[] = { - &linux_brand, - &linux_glibc2brand, - NULL - }; - - for (brandinfo = &local_linux_brandlist[0]; *brandinfo != NULL; - ++brandinfo) - if (elf32_insert_brand_entry(*brandinfo) < 0) - error = EINVAL; - } - return (error); -} - -SYSCTL_PROC(_compat_linux, OID_AUTO, emulpath, - CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_PRISON, - 0, 0, linux_sysctl_linux_emul_path, "A", - "Linux kernel OS emulation path"); - static char linux_osrelease[LINUX_MAX_UTSNAME] = "2.4.2"; static int @@ -305,51 +246,6 @@ return (0); } -void -linux_get_emul_path(struct thread *td, char *dst) -{ - register struct prison *pr; - register struct linux_prison *lpr; - - pr = td->td_ucred->cr_prison; - if (pr != NULL) { - mtx_lock(&pr->pr_mtx); - if (pr->pr_linux != NULL) { - lpr = (struct linux_prison *)pr->pr_linux; - if (lpr->pr_emul_path[0]) { - bcopy(lpr->pr_emul_path, dst, LINUX_NAME_MAX); - mtx_unlock(&pr->pr_mtx); - return; - } - } - mtx_unlock(&pr->pr_mtx); - } - - mtx_lock(&osname_lock); - bcopy(linux_emul_path, dst, LINUX_NAME_MAX); - mtx_unlock(&osname_lock); -} - -int -linux_set_emul_path(struct thread *td, char *emul_path) -{ - struct prison *pr; - struct linux_prison *lpr; - - pr = linux_get_prison(td); - if (pr != NULL) { - lpr = (struct linux_prison *)pr->pr_linux; - strcpy(lpr->pr_emul_path, emul_path); - mtx_unlock(&pr->pr_mtx); - } else { - mtx_lock(&osname_lock); - strcpy(linux_emul_path, emul_path); - mtx_unlock(&osname_lock); - } - - return (0); -} - int linux_get_oss_version(struct thread *td) { ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.c#4 (text+ko) ==== @@ -47,12 +47,6 @@ #include #include -#ifdef COMPAT_LINUX32 -#include -#else -#include -#endif -#include /* * Search an alternate path before passing pathname arguments on @@ -70,9 +64,6 @@ char **pbuf; int cflag; { - char linux_emul_path[LINUX_NAME_MAX]; - - linux_get_emul_path(td, linux_emul_path); return (kern_alternate_path(td, linux_emul_path, path, pathseg, pbuf, cflag)); @@ -92,6 +83,8 @@ printf("\n"); } +MALLOC_DECLARE(M_LINUX); + struct device_element { TAILQ_ENTRY(device_element) list; ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.h#3 (text+ko) ==== @@ -75,6 +75,8 @@ return p; } +extern const char linux_emul_path[]; + int linux_emul_convpath(struct thread *, char *, enum uio_seg, char **, int); #define LCONVPATH(td, upath, pathp, i) \ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#4 (text+ko) ==== @@ -858,7 +858,7 @@ ELFOSABI_LINUX, EM_386, "Linux", - "/compat/linux/", + "/compat/linux", "/lib/ld-linux.so.1", &elf_linux_sysvec, NULL, @@ -869,7 +869,7 @@ ELFOSABI_LINUX, EM_386, "Linux", - "/compat/linux/", + "/compat/linux", "/lib/ld-linux.so.2", &elf_linux_sysvec, NULL, From owner-p4-projects@FreeBSD.ORG Wed Jun 21 11:33:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 813A416A492; Wed, 21 Jun 2006 11:33:02 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5C61716A481 for ; Wed, 21 Jun 2006 11:33:02 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6DF6B43D60 for ; Wed, 21 Jun 2006 11:32:36 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LBWaSA068001 for ; Wed, 21 Jun 2006 11:32:36 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LBWafg067998 for perforce@freebsd.org; Wed, 21 Jun 2006 11:32:36 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 21 Jun 2006 11:32:36 GMT Message-Id: <200606211132.k5LBWafg067998@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 99748 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 11:33:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=99748 Change 99748 by rdivacky@rdivacky_witten on 2006/06/21 11:31:48 Remove duplicit MALLOC_DECLARE(M_LINUX). Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.c#5 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.c#5 (text+ko) ==== @@ -47,6 +47,12 @@ #include #include +#ifdef COMPAT_LINUX32 +#include +#else +#include +#endif + /* * Search an alternate path before passing pathname arguments on @@ -83,8 +89,6 @@ printf("\n"); } -MALLOC_DECLARE(M_LINUX); - struct device_element { TAILQ_ENTRY(device_element) list; From owner-p4-projects@FreeBSD.ORG Wed Jun 21 11:53:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2328C16A47D; Wed, 21 Jun 2006 11:53:03 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CE74E16A47C for ; Wed, 21 Jun 2006 11:53:02 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9954A43D45 for ; Wed, 21 Jun 2006 11:53:02 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LBr2TX069064 for ; Wed, 21 Jun 2006 11:53:02 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LBr2r4069061 for perforce@freebsd.org; Wed, 21 Jun 2006 11:53:02 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 21 Jun 2006 11:53:02 GMT Message-Id: <200606211153.k5LBr2r4069061@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 99749 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 11:53:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=99749 Change 99749 by rdivacky@rdivacky_witten on 2006/06/21 11:52:07 Change the protype of linux_set_thread_area() syscall and add necessary structure definition. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#5 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#2 (text+ko) ==== @@ -706,4 +706,17 @@ l_short revents; }; +struct l_user_desc { + l_uint entry_number; + l_uint base_addr; + l_uint limit; + l_uint seg_32bit:1; + l_uint contents:2; + l_uint read_exec_only:1; + l_uint limit_in_pages:1; + l_uint seg_not_present:1; + l_uint useable:1; +}; + + #endif /* !_I386_LINUX_LINUX_H_ */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#5 (text+ko) ==== @@ -408,7 +408,7 @@ 240 AUE_NULL UNIMPL linux_futex 241 AUE_NULL UNIMPL linux_sched_setaffinity 242 AUE_NULL UNIMPL linux_sched_getaffinity -243 AUE_NULL MSTD { int linux_set_thread_area(void *entry); } +243 AUE_NULL MSTD { int linux_set_thread_area(struct l_user_desc *desc); } 244 AUE_NULL UNIMPL linux_get_thread_area 245 AUE_NULL UNIMPL linux_io_setup 246 AUE_NULL UNIMPL linux_io_destroy From owner-p4-projects@FreeBSD.ORG Wed Jun 21 11:53:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C17516A54D; Wed, 21 Jun 2006 11:53:03 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 35B4B16A4D4 for ; Wed, 21 Jun 2006 11:53:03 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F30B943D45 for ; Wed, 21 Jun 2006 11:53:02 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LBr2Fn069071 for ; Wed, 21 Jun 2006 11:53:02 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LBr2Ps069067 for perforce@freebsd.org; Wed, 21 Jun 2006 11:53:02 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 21 Jun 2006 11:53:02 GMT Message-Id: <200606211153.k5LBr2Ps069067@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 99750 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 11:53:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=99750 Change 99750 by rdivacky@rdivacky_witten on 2006/06/21 11:52:32 Regen after syscalls.master update. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#5 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#5 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#5 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#5 (text+ko) ==== @@ -703,7 +703,7 @@ char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)]; }; struct linux_set_thread_area_args { - char entry_l_[PADL_(void *)]; void * entry; char entry_r_[PADR_(void *)]; + char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; }; struct linux_fadvise64_args { register_t dummy; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#5 (text+ko) ==== ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#5 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Wed Jun 21 12:38:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C755616A47F; Wed, 21 Jun 2006 12:38:00 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8B14216A47C for ; Wed, 21 Jun 2006 12:38:00 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 332F543D5D for ; Wed, 21 Jun 2006 12:37:59 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LCbxtf072378 for ; Wed, 21 Jun 2006 12:37:59 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LCbw3e072375 for perforce@freebsd.org; Wed, 21 Jun 2006 12:37:58 GMT (envelope-from gabor@FreeBSD.org) Date: Wed, 21 Jun 2006 12:37:58 GMT Message-Id: <200606211237.k5LCbw3e072375@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99752 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 12:38:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=99752 Change 99752 by gabor@spitfire on 2006/06/21 12:37:26 Follow recent changes Affected files ... .. //depot/projects/soc2006/gabor_ports/CHANGES#2 integrate .. //depot/projects/soc2006/gabor_ports/MOVED#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.apache.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Tools/scripts/tindex#2 integrate .. //depot/projects/soc2006/gabor_ports/UPDATING#2 integrate Differences ... ==== //depot/projects/soc2006/gabor_ports/CHANGES#2 (text+ko) ==== @@ -10,9 +10,47 @@ All ports committers are allowed to commit to this file. +20060616: +AUTHOR: portmgr@FreeBSD.org +The following functional changes were made to bsd.port.mk: + + * Update default MySQL version from 4.1 to 5.0 [1] + + * Update default PHP version from 4 to 5 [2] + + * Update default LDAP version from 2.2 to 2.3 [3] + + * Add support for LDAP version 2.4 [4] + + * Update default linux_base from '8' (Redhat 8) to 'fc4' (Fedora Core 4) [5] + + * Switch default Linux X implementation from XFree86 to xorg to track the + above [5] + + * Deprecate INSTALLS_SHLIB and replace it by USE_LDCONFIG. If set to "yes", + the old behavior is preserved. Otherwise, it can be set to a list of + directories to be added to ${PREFIX}/libdata/ldconfig/${UNIQUENAME}. + Note that this directory is used by ldconfig startup script, it is meant + to replace ldconfig scripts installed by some ports as (sometimes + 000.${UNQUENAME}.sh) [6] + + * Adds USE_LDCONFIG32 which is like USE_LDCONFIG but the target file is + ${PREFIX}/libdata/ldconfig32/${UNIQUENAME} instead. (Note: this should + only be used on 64-bit architectures) [6] + + * Set the default LANG for tr to be C to avoid some build problems [7] + + * Include bsd.java.mk in both pre and post sections [8] + + * Get rid of remnants of FORCE_PKG_REGISTER [9] + + * Always print options with make showconfig [10] + + PR: 92805 [1], 92806 [2], 96793 [3], 97515 [4], 96849 [5], + 91933 [6], 91381 [7], 97020 [8], 95841 [9], 97133 [10] + 20060523: AUTHOR: portmgr@FreeBSD.org - The following functional changes were made to bsd.port.mk: * include bsd.emacs.mk only when USE_EMACS is set [5] @@ -1043,4 +1081,4 @@ Contact Erwin Lansing if you have any questions about your use of this document. -$FreeBSD: ports/CHANGES,v 1.52 2006/05/23 22:27:21 kris Exp $ +$FreeBSD: ports/CHANGES,v 1.53 2006/06/19 00:10:03 linimon Exp $ ==== //depot/projects/soc2006/gabor_ports/MOVED#2 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1069 2006/06/14 10:45:34 vd Exp $ +# $FreeBSD: ports/MOVED,v 1.1075 2006/06/20 22:35:59 glewis Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -2379,3 +2379,8 @@ x11-toolkits/fox-devel|x11-toolkits/fox14|2006-06-10|Renamed databases/arcexplorer||2006-06-14|Has expired: Download unavailable anymore www/linux-flashplugin6||2006-06-14|Has expired: "This port has known security flaws that are not likely to be fixed" +lang/glibstdc++28||2006-06-18|Has expired: Use any variant of lang/gcc that is less than six years old instead +graphics/magickwand|graphics/php-magickwand|2006-06-18|Already in the tree with the name graphics/php-magickwand +devel/p5-Filesys-Statvfs_Df|sysutils/p5-Filesys-Statvfs|2006-06-19|Vendor split port into 2 separate modules: sysutils/p5-Filesys-Statvfs and sysutils/p5-Filesys-Df +www/opera-devel|www/opera|2006-06-20|Merged into the stable port +archivers/bsdtar|archivers/libarchive|2006-06-20|Merged into the libarchive port ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.apache.mk#2 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.apache.mk,v 1.11 2006/05/11 15:21:22 clement Exp $ +# $FreeBSD: ports/Mk/bsd.apache.mk,v 1.12 2006/06/20 04:58:12 linimon Exp $ # # bsd.apache.mk - Apache related macros. # Author: Clement Laforet @@ -294,7 +294,7 @@ IGNORE= : Your apache does not support DSO modules . endif . if defined(AP_GENPLIST) && ${APXS_PREFIX} != ${PREFIX} -IGNORE?= PREFIX must be egal to APXS_PREFIX. +IGNORE?= PREFIX must be equal to APXS_PREFIX. . endif .endif ==== //depot/projects/soc2006/gabor_ports/Tools/scripts/tindex#2 (text+ko) ==== @@ -19,7 +19,9 @@ ERROR_ADDRESS=root@localhost # Where to scp the resulting indexes after build -SCP_DEST=root@localhost:/usr/local/www/ports +SCP_DEST_HOST=root@localhost +SCP_DEST_TMP=/tmp +SCP_DEST_DIR=/usr/local/www/ports # Location of ports tree and source trees export BASEDIR=/local0/tmp/kris/tindex @@ -109,6 +111,15 @@ fi } +createtmpdir() { + TMPDIR=`ssh ${SCP_DEST_HOST} "mktemp -qd /tmp/tindex.XXXXXX"` + if [ $? -ne 0 ]; then + echo "$0: Can't create temp file, exiting..." + exit 1 + fi +} + + # Sanitize the environment so that the indexes aren't customized by the # local machine settinge export __MAKE_CONF=/dev/null @@ -154,9 +165,10 @@ fi checkfixed ${BRANCH} +createtmpdir bzip2 -kf ${PORTSDIR}/INDEX -scp ${SSHKEY} ${PORTSDIR}/INDEX ${PORTSDIR}/INDEX.bz2 ${SCP_DEST} || mail -s "Cannot copy INDEX" ${ERROR_ADDRESS} < /dev/null - +scp -q ${SSHKEY} ${PORTSDIR}/INDEX ${PORTSDIR}/INDEX.bz2 ${SCP_DEST_HOST}:${TMPDIR} || mail -s "Cannot copy INDEX to temp dir" ${ERROR_ADDRESS} +ssh ${SCP_DEST_HOST} "/bin/mv ${TMPDIR}/INDEX ${SCP_DEST_DIR}; /bin/mv ${TMPDIR}/INDEX.bz2 ${SCP_DEST_DIR}; rmdir ${TMPDIR}" || mail -s "Cannot move INDEX to final dir" ${ERROR_ADDRESS} BRANCH=5.x export OSVERSION=${OSVERSION5} echo "Building INDEX for ${BRANCH} with OSVERSION=${OSVERSION}" @@ -167,8 +179,10 @@ fi checkfixed ${BRANCH} +createtmpdir bzip2 -kf ${PORTSDIR}/INDEX-5 -scp ${SSHKEY} ${PORTSDIR}/INDEX-5 ${PORTSDIR}/INDEX-5.bz2 ${SCP_DEST} || mail -s "Cannot copy INDEX-5" ${ERROR_ADDRESS} < /dev/null +scp -q ${SSHKEY} ${PORTSDIR}/INDEX-5 ${PORTSDIR}/INDEX-5.bz2 ${SCP_DEST_HOST}:${TMPDIR} || mail -s "Cannot copy INDEX-5 to temp dir" ${ERROR_ADDRESS} +ssh ${SCP_DEST_HOST} "/bin/mv ${TMPDIR}/INDEX-5 ${SCP_DEST_DIR}; /bin/mv ${TMPDIR}/INDEX-5.bz2 ${SCP_DEST_DIR}; rmdir ${TMPDIR}" || mail -s "Cannot move INDEX-5 to final dir" ${ERROR_ADDRESS} BRANCH=6.x export OSVERSION=${OSVERSION6} @@ -180,8 +194,10 @@ fi checkfixed ${BRANCH} +createtmpdir bzip2 -kf ${PORTSDIR}/INDEX-6 -scp ${SSHKEY} ${PORTSDIR}/INDEX-6 ${PORTSDIR}/INDEX-6.bz2 ${SCP_DEST} || mail -s "Cannot copy INDEX-6" ${ERROR_ADDRESS} < /dev/null +scp -q ${SSHKEY} ${PORTSDIR}/INDEX-6 ${PORTSDIR}/INDEX-6.bz2 ${SCP_DEST_HOST}:${TMPDIR} || mail -s "Cannot copy INDEX-6 to temp dir" ${ERROR_ADDRESS} +ssh ${SCP_DEST_HOST} "/bin/mv ${TMPDIR}/INDEX-6 ${SCP_DEST_DIR}; /bin/mv ${TMPDIR}/INDEX-6.bz2 ${SCP_DEST_DIR}; rmdir ${TMPDIR}" || mail -s "Cannot move INDEX-6 to final dir" ${ERROR_ADDRESS} BRANCH=7.x export OSVERSION=${OSVERSION7} @@ -193,8 +209,10 @@ fi checkfixed ${BRANCH} +createtmpdir bzip2 -kf ${PORTSDIR}/INDEX-7 -scp ${SSHKEY} ${PORTSDIR}/INDEX-7 ${PORTSDIR}/INDEX-7.bz2 ${SCP_DEST} || mail -s "Cannot copy INDEX-7" ${ERROR_ADDRESS} < /dev/null +scp -q ${SSHKEY} ${PORTSDIR}/INDEX-7 ${PORTSDIR}/INDEX-7.bz2 ${SCP_DEST_HOST}:${TMPDIR} || mail -s "Cannot copy INDEX-7 to temp dir" ${ERROR_ADDRESS} +ssh ${SCP_DEST_HOST} "/bin/mv ${TMPDIR}/INDEX-7 ${SCP_DEST_DIR}; /bin/mv ${TMPDIR}/INDEX-7.bz2 ${SCP_DEST_DIR}; rmdir ${TMPDIR}" || mail -s "Cannot move INDEX-7 to final dir" ${ERROR_ADDRESS} # All indexes built successfully, clear the hook rm -f ${PORTSDIR}/hook ==== //depot/projects/soc2006/gabor_ports/UPDATING#2 (text+ko) ==== @@ -6,6 +6,22 @@ time you update your ports collection, before attempting any port upgrades. +20060616 + AFFECTS users of all pfpro ports + AUTHOR: aaron@FreeBSD.org + + The default certificate location has been changed to respect hier(7). + The new default location is LOCALBASE/etc/pfpro/certs. + +20060616: + AFFECTS: users of net/openldap22{,-sasl}-client + AUTHOR: linimon@FreeBSD.org + + OpenLDAP version 2.3 is now the default. To upgrade all ports do + portupgrade -rfo net/openldap23-client openldap-client + (or a similar command for the SASL variant). If you do not want to + upgrade, add the line `WANT_OPENLDAP_VER?=22' to /etc/make.conf. + 20060616: AFFECTS users of emulation/linux_base-* AUTHOR: netchild@FreeBSD.org @@ -3659,4 +3675,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.343 2006/06/16 17:14:00 netchild Exp $ +$FreeBSD: ports/UPDATING,v 1.345 2006/06/20 19:24:32 linimon Exp $ From owner-p4-projects@FreeBSD.ORG Wed Jun 21 12:41:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 72D0416A514; Wed, 21 Jun 2006 12:41:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2D88616A509 for ; Wed, 21 Jun 2006 12:41:48 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B6BAC4458C for ; Wed, 21 Jun 2006 12:14:29 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LCETfN071171 for ; Wed, 21 Jun 2006 12:14:29 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LCETcv071167 for perforce@freebsd.org; Wed, 21 Jun 2006 12:14:29 GMT (envelope-from piso@freebsd.org) Date: Wed, 21 Jun 2006 12:14:29 GMT Message-Id: <200606211214.k5LCETcv071167@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99751 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 12:41:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=99751 Change 99751 by piso@piso_newluxor on 2006/06/21 12:14:00 Updated a bit to reflect work status Affected files ... .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#2 edit .. //depot/projects/soc2006/intr_filter/notes#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#2 (text+ko) ==== @@ -99,10 +99,9 @@ } void -arm_handler_execute(struct trapframe *frame, int irqnb) +arm_handler_execute(struct trapframe *frame, int irqnb __unused) { struct intr_event *event; - struct intr_handler *ih; struct thread *td = curthread; int i, thread; @@ -115,14 +114,7 @@ continue; /* Execute fast handlers. */ - thread = 0; - TAILQ_FOREACH(ih, &event->ie_handlers, ih_next) { - if (!(ih->ih_flags & IH_FAST)) - thread = 1; - else - ih->ih_handler(ih->ih_argument ? - ih->ih_argument : frame); - } + thread = intr_filter_loop(event, frame); /* Schedule thread if needed. */ if (thread) ==== //depot/projects/soc2006/intr_filter/notes#2 (text+ko) ==== @@ -1,166 +1,7 @@ -This file serves as a sort of todo list for this branch as well as documenting -what patches currently live in this branch. - -- Consolidate linux module version into MI location. - - Not sure if we don't want flexibility of MD versions -- Fixup asm constraints to use '+' rather than declaring a variable in both - the input and output sections with '0', etc. in both the at386 and pc98 - bus headers. Also removes bogus 'cc' clobbers. gcc already clobbers 'cc' - for inline asm stuff. For pc98 I tried to update the clobbers to be - more realistic since they call functions. However, these clobber updates - need to be verified against the actual pc98 code. - - Moved to the jhb_ktrace branch for now. Also, haven't removed the - "cc" clobbers yet. -- Fixup atomic ops so that they treat the memory pointed to as an output and - don't all clobber "memory", instead, just acquire variants clobber "memory". - - alpha - - amd64 - - why clobber memory in disable_intr()? - - eventually we should not clobber all memory for bus_space, but just - the memory we actually touch - - arm - - needs real acq variants to get "memory" clobber, then __swp() can stop - clobbering "memory" - - dev - - drm clobbers memory for write barriers - - drm and sym should use bus_space for barriers - - gnu - - contrib code - - ia64 - - i386 - - why clobber memory in disable_intr()? - - pc98 - - powerpc - - not sure powerpc_mb() should clobber memory - - sparc64 - - sys -- Fixup td_ucred of thread doing execve() to re-sync with process ucred - after single threading during an exec. - - Untested -- Use panic_thread pointer instead of panic_cpu to allow for migration - of the panic'ing thread - - Untested -- Remove some bogus atomic_load_acq()'s and add ia32_pause()'s to - stop_cpus() and restart_cpus(). - - Untested -- Cleanup the SMP rendezvous code to properly use membar's to ensure function - pointers are up to date before deferencing them. - - Untested -- Don't allow kthreads to get signalled and do bad things - - Untested -- Change amd64 to use [ls]fence instructions for memory barriers. - - Untested (and no hardware, maybe peter can test) -- Add a kproc API that does what kthread does right now -- Add a real kthread API that creates just another thread inside of a kproc - - Figure out what needs to be done to make a new kthread.. should each - kproc have one ksegroup and one kse per cpu? - - Do I just add the kse's when the first new thread is created? - - Consolidate most of the kernel procs into a 'system' kernel proc that - would be pid 0. - - Stick all the 'idle threads' in a single 'idle' kernel proc. -- kill taskqueue_swi in favor of taskqueue_thread since the only thing swi - buys is being able to swi_sched() from a fast handler, but that doesn't - make sense because you can't actually enqueue a task onto its queue from - a fast interrupt context -- Try to fix problems with stuck IPIs by raising TPR and enabling interrupts - in spin loops. Need to perhaps generalize this so that critical sections - do this. That really needs to only be done in spinlock_*() (and maybe some - frobbing in intr_execute_handlers()) and needs to happen after the - spinlock_*() changes happen. -- KTR change: include __func__ along with __FILE__ and __LINE__ and display - it after cpu number by default -- Cheapen global stats counters via PCPU_LAZY_INC - - cnt.v_intr - - sparc64 is in asm, marius@ doing it - - arm, powerpc? - - fork counts? -- Add a cache-line padded mtx_aligned union and use it for the mutex pools. -- Add a per-thread counter of the number of sleep mutexes held (including - recursion) and panic if we try to sleep with any held to provide a cheaper - version of the current WITNESS check that doesn't bog the system down quite - as bad. -- Fix kernel linker locking - + Convert mutex over to sx lock, needs to be held when calling the following - functions - - private: - + linker_file_sys[un]init? - + linker_file_[un]register_sysctls? - + linker_file_register_modules? - + linker_load_file? - + linker_load_module_internal - + linker_file_add_dependency (make private) - - public: - - linker_find_file_by_name? (make private?) - - linker_find_file_by_id? (XXX: ndis) - + linker_make_file - + linker_file_unload_internal - + linker_load_dependencies - - ndis XXX - - functions that grab the lock - - private: - - public: - + linker_reference_module - + linker_file_lookup_symbol - + linker_load_module - + linker_file_lookup_set - + linker_file_unload - - really remove Giant - -Active child branches: -- jhb_intr - fast ithreads and MSI? (perhaps do MSI in jhb_acpipci) -- jhb_ktrace - kernel debugging stuff, possibly per-thread ktrace -- jhb_lock - rwlocks -- jhb_needresched - scheduler fun -- jhb_preemption - preemption -- jhb_proc - proc locking, ABI stuff - -Space reserved for child branches: -- Kill eintrcnt crap and make intrcnt/intrnames MI with a MD length - constant. Export lengths instead. - - Move non-stray intrcnt managing into intr_event code? -- Use RCU to lock the per-source list of interrupt handlers. - -IRQ Shuffle: -- Break up the icu_lock used to protect all IO APIC pins; possible solutions: - - 1) use a hash table to assign each pin a spin lock - - 2) give each CPU its own spin lock and when an pin is assigned a CPU, - use that lock to protect that pin - - 2a) bind the ithreads to the CPU that the IDT vector is assigned to - and then you can just use critical sections to protect the APIC pins; - actually, has to be spinlock_enter/exit rather than critical sections as - we are protecting against bottom-half code rather than preemptions -- atpic code is now only used for UP, so it can use spinlock sections - explicitly rather than icu lock - -MSI Support: -- i386 - - MSI interrupt source class - - eoi just does lapic_eoi() - - enable/disable source do little - - need a function for allocating N vectors which creates the interrupt - sources, allocs apic vectors for them, and then adds them - - need a way to teardown as well, maybe nexus' bus_release_resource() - would do that via a new release_resource intsrc method? - - determine new-bus interface for MSI IRQs - - need a way to request MSIs - - pci bridge drivers (or bus) should have opportunity to blacklist - known-bad bridges - - need to support alloc'ing certain amounts (1, 4, 8, etc.) from the - driver - - i386 MSI class will add new interrupt sources after the I/O APIC IRQs - - nexus (or somebody) will then create IRQ resources at rid 1 .. N and - set them up for the child device - - alternative is to fix MSI at rid 1 and let that resource have multiple - IRQs. driver has to call bus_alloc_resourc() for each supported - count, and bus_setup_intr() will have to grow an index. this - interface requires the IRQs to be contiguously numbered though, and - I think that is a bad assumption to enforce - - child device can then do bus_alloc_resource() / bus_setup_intr() -- amd64, just copy over from i386 for now - Remaining Interrupt Event issues: + Port to powerpc - has a few XXX, doesn't handle multiple fast +[DONE] + Port to arm - I think the IRQ needs to be unmasked when a handler is added - Fix a race in intr_event_add_handler(). We should create the ithread if @@ -168,8 +9,8 @@ need a membar after the ie_thread write since we don't do any locking while executing handlers. -Interrupt filters (not sure if we want this?): -- Second Pass: filters exist, but you only get one or the other; also, each +Interrupt filters: +- First Pass: filters exist, but you only get one or the other; also, each threaded handler has its own ithread. Also, this will probably break the interrupt storm detection stuff. - Add a filter function pointer and prototype to intrhand @@ -188,7 +29,9 @@ - Port to powerpc - Port to arm - This may or may not be commitworthy as a milestone at this point. -- Third Pass: Change new-bus API to allow driver to have both filters and +[DONE] + +- Second Pass: Change new-bus API to allow driver to have both filters and threaded handlers. - Determine new-bus API - b/c both handlers need to be in the same intrhand, it is probably not @@ -196,7 +39,8 @@ that bus_setup_intr() will grow a new filter pointer argument - Fix bus_setup_intr() for all the archs - This should be a commitworthy milestone of some sort -- Fourth Pass: This requires some other support work to allow easy setup of + +- Third Pass: This requires some other support work to allow easy setup of kernel threads (not just kernel processes) as well as letting kernel processes have KSE's that do continuations that do a kind of upcall into a kernel scheduler rather than the UTS. From owner-p4-projects@FreeBSD.ORG Wed Jun 21 12:42:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D887616A484; Wed, 21 Jun 2006 12:42:07 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 99DD216A4D5 for ; Wed, 21 Jun 2006 12:42:07 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3832D43D46 for ; Wed, 21 Jun 2006 12:42:07 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LCg7i1072790 for ; Wed, 21 Jun 2006 12:42:07 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LCg4bE072782 for perforce@freebsd.org; Wed, 21 Jun 2006 12:42:04 GMT (envelope-from piso@freebsd.org) Date: Wed, 21 Jun 2006 12:42:04 GMT Message-Id: <200606211242.k5LCg4bE072782@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99753 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 12:42:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=99753 Change 99753 by piso@piso_newluxor on 2006/06/21 12:41:16 IFC Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/fpu.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/trap.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/include/md_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_dummy.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/elf_trampoline.c#3 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/if_ate.c#2 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/kb920x_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/arm/conf/KB920X#3 integrate .. //depot/projects/soc2006/intr_filter/arm/sa11x0/uart_cpu_sa1110.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/soc2006/intr_filter/conf/Makefile.arm#3 integrate .. //depot/projects/soc2006/intr_filter/conf/NOTES#3 integrate .. //depot/projects/soc2006/intr_filter/conf/kern.post.mk#3 integrate .. //depot/projects/soc2006/intr_filter/ddb/db_sym.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/aac/aac_pci.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/digi/digi.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mfi/mfi.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mfi/mfireg.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mfi/mfivar.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/driver.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/midi/midi.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/midi/sequencer.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/soc2006/intr_filter/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/soc2006/intr_filter/dev/sound/pci/cmi.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/envy24.c#1 branch .. //depot/projects/soc2006/intr_filter/dev/sound/pci/envy24.h#1 branch .. //depot/projects/soc2006/intr_filter/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/ich.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/via8233.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/uhid.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/umodem.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/uplcom.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/usbdevs#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/uscanner.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/uvisor.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/wl/if_wl.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/geom_dev.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/acpica/acpi_wakeup.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/db_trace.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/identcpu.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/pmap.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/trap.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/include/specialreg.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_dummy.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_proto.h#3 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_syscall.h#3 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_sysent.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/syscalls.master#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_linker.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_tc.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/link_elf.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/link_elf_obj.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_firmware.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_kdb.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_socket.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_socket2.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_syscalls.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_usrreq.c#3 integrate .. //depot/projects/soc2006/intr_filter/modules/Makefile#3 integrate .. //depot/projects/soc2006/intr_filter/modules/ppc/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/sound/driver/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/net/if.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if.h#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_bridge.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if_clone.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_vlan.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_input.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_seq.h#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_syncache.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/soc2006/intr_filter/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/soc2006/intr_filter/sys/linker.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/protosw.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/socketvar.h#3 integrate .. //depot/projects/soc2006/intr_filter/sys/sockio.h#2 integrate .. //depot/projects/soc2006/intr_filter/tools/fw_stub.awk#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_map.c#3 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/fpu.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/soc2006/intr_filter/amd64/amd64/initcpu.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/soc2006/intr_filter/amd64/amd64/machdep.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.557 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -1664,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2335,6 +2336,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2376,7 +2378,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2394,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2412,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2446,12 +2436,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters ==== //depot/projects/soc2006/intr_filter/amd64/amd64/trap.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/soc2006/intr_filter/amd64/include/md_var.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_dummy.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #define LINUX_SYS_exit 1 @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 #define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #include @@ -273,62 +273,62 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64, AUE_NULL }, /* 250 = linux_fadvise64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 251 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 252 = exit_group */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 253 = linux_lookup_dcookie */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 254 = linux_epoll_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = linux_epoll_ctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = linux_epoll_wait */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = linux_set_tid_address */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = linux_timer_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = linux_timer_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = linux_timer_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = linux_timer_getoverrun */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = linux_timer_delete */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = linux_clock_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = linux_clock_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = linux_clock_getres */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = linux_statfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = linux_fstatfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = linux_tgkill */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = linux_utimes */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 272 = linux_fadvise64_64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 274 = linux_mbind */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 275 = linux_get_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 276 = linux_set_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 277 = linux_mq_open */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 278 = linux_mq_unlink */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 279 = linux_mq_timedsend */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 280 = linux_mq_timedreceive */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = linux_mq_notify */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = linux_mq_getsetattr */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = linux_kexec_load */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = linux_waitid */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = linux_add_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = linux_request_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = linux_keyctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = linux_ioprio_set */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = linux_ioprio_get */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = linux_inotify_init */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = linux_inotify_add_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = linux_migrate_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = linux_openat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = linux_mkdirat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 297 = linux_mknodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 298 = linux_fchownat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 299 = linux_futimesat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 300 = linux_fstatat64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 301 = linux_unlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 302 = linux_renameat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 303 = linux_linkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 304 = linux_symlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 305 = linux_readlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 306 = linux_fchmodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 307 = linux_faccessat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 308 = linux_pselect6 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 309 = linux_ppoll */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 310 = linux_unshare */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL }, /* 253 = linux_lookup_dcookie */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_create, AUE_NULL }, /* 254 = linux_epoll_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL }, /* 262 = linux_timer_getoverrun */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_delete, AUE_NULL }, /* 263 = linux_timer_delete */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME }, /* 264 = linux_clock_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_gettime, AUE_NULL }, /* 265 = linux_clock_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_getres, AUE_NULL }, /* 266 = linux_clock_getres */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_nanosleep, AUE_NULL }, /* 267 = linux_clock_nanosleep */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_statfs64, AUE_NULL }, /* 268 = linux_statfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatfs64, AUE_NULL }, /* 269 = linux_fstatfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_tgkill, AUE_NULL }, /* 270 = linux_tgkill */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_utimes, AUE_NULL }, /* 271 = linux_utimes */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64_64, AUE_NULL }, /* 272 = linux_fadvise64_64 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mbind, AUE_NULL }, /* 274 = linux_mbind */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_get_mempolicy, AUE_NULL }, /* 275 = linux_get_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_mempolicy, AUE_NULL }, /* 276 = linux_set_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_open, AUE_NULL }, /* 277 = linux_mq_open */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_unlink, AUE_NULL }, /* 278 = linux_mq_unlink */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedsend, AUE_NULL }, /* 279 = linux_mq_timedsend */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedreceive, AUE_NULL }, /* 280 = linux_mq_timedreceive */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_notify, AUE_NULL }, /* 281 = linux_mq_notify */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_getsetattr, AUE_NULL }, /* 282 = linux_mq_getsetattr */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_kexec_load, AUE_NULL }, /* 283 = linux_kexec_load */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_waitid, AUE_NULL }, /* 284 = linux_waitid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_add_key, AUE_NULL }, /* 286 = linux_add_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_request_key, AUE_NULL }, /* 287 = linux_request_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_keyctl, AUE_NULL }, /* 288 = linux_keyctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_set, AUE_NULL }, /* 289 = linux_ioprio_set */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_get, AUE_NULL }, /* 290 = linux_ioprio_get */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_init, AUE_NULL }, /* 291 = linux_inotify_init */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_add_watch, AUE_NULL }, /* 292 = linux_inotify_add_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_rm_watch, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_migrate_pages, AUE_NULL }, /* 294 = linux_migrate_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_openat, AUE_NULL }, /* 295 = linux_openat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mkdirat, AUE_NULL }, /* 296 = linux_mkdirat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mknodat, AUE_NULL }, /* 297 = linux_mknodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchownat, AUE_NULL }, /* 298 = linux_fchownat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_futimesat, AUE_NULL }, /* 299 = linux_futimesat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatat64, AUE_NULL }, /* 300 = linux_fstatat64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unlinkat, AUE_NULL }, /* 301 = linux_unlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_renameat, AUE_NULL }, /* 302 = linux_renameat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_linkat, AUE_NULL }, /* 303 = linux_linkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_symlinkat, AUE_NULL }, /* 304 = linux_symlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_readlinkat, AUE_NULL }, /* 305 = linux_readlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchmodat, AUE_NULL }, /* 306 = linux_fchmodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_faccessat, AUE_NULL }, /* 307 = linux_faccessat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_pselect6, AUE_NULL }, /* 308 = linux_pselect6 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ppoll, AUE_NULL }, /* 309 = linux_ppoll */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unshare, AUE_NULL }, /* 310 = linux_unshare */ }; ==== //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#3 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -418,61 +418,61 @@ 251 AUE_NULL UNIMPL 252 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit_group \ sys_exit_args void -253 AUE_NULL UNIMPL linux_lookup_dcookie -254 AUE_NULL UNIMPL linux_epoll_create -255 AUE_NULL UNIMPL linux_epoll_ctl -256 AUE_NULL UNIMPL linux_epoll_wait -257 AUE_NULL UNIMPL linux_remap_file_pages -258 AUE_NULL UNIMPL linux_set_tid_address -259 AUE_NULL UNIMPL linux_timer_create -260 AUE_NULL UNIMPL linux_timer_settime -261 AUE_NULL UNIMPL linux_timer_gettime -262 AUE_NULL UNIMPL linux_timer_getoverrun -263 AUE_NULL UNIMPL linux_timer_delete -264 AUE_CLOCK_SETTIME UNIMPL linux_clock_settime -265 AUE_NULL UNIMPL linux_clock_gettime -266 AUE_NULL UNIMPL linux_clock_getres -267 AUE_NULL UNIMPL linux_clock_nanosleep -268 AUE_NULL UNIMPL linux_statfs64 -269 AUE_NULL UNIMPL linux_fstatfs64 -270 AUE_NULL UNIMPL linux_tgkill /* 270 */ -271 AUE_NULL UNIMPL linux_utimes -272 AUE_NULL UNIMPL linux_fadvise64_64 -273 AUE_NULL UNIMPL linux_ni_syscall /* linux_vserver */ -274 AUE_NULL UNIMPL linux_mbind -275 AUE_NULL UNIMPL linux_get_mempolicy -276 AUE_NULL UNIMPL linux_set_mempolicy -277 AUE_NULL UNIMPL linux_mq_open -278 AUE_NULL UNIMPL linux_mq_unlink -279 AUE_NULL UNIMPL linux_mq_timedsend -280 AUE_NULL UNIMPL linux_mq_timedreceive /* 280 */ -281 AUE_NULL UNIMPL linux_mq_notify -282 AUE_NULL UNIMPL linux_mq_getsetattr -283 AUE_NULL UNIMPL linux_kexec_load -284 AUE_NULL UNIMPL linux_waitid -285 AUE_NULL UNIMPL linux_ni_syscall /* 285 */ /* available */ -286 AUE_NULL UNIMPL linux_add_key -287 AUE_NULL UNIMPL linux_request_key -288 AUE_NULL UNIMPL linux_keyctl -289 AUE_NULL UNIMPL linux_ioprio_set -290 AUE_NULL UNIMPL linux_ioprio_get /* 290 */ -291 AUE_NULL UNIMPL linux_inotify_init -292 AUE_NULL UNIMPL linux_inotify_add_watch -293 AUE_NULL UNIMPL linux_inotify_rm_watch -294 AUE_NULL UNIMPL linux_migrate_pages -295 AUE_NULL UNIMPL linux_openat /* 295 */ -296 AUE_NULL UNIMPL linux_mkdirat -297 AUE_NULL UNIMPL linux_mknodat -298 AUE_NULL UNIMPL linux_fchownat -299 AUE_NULL UNIMPL linux_futimesat -300 AUE_NULL UNIMPL linux_fstatat64 /* 300 */ -301 AUE_NULL UNIMPL linux_unlinkat -302 AUE_NULL UNIMPL linux_renameat -303 AUE_NULL UNIMPL linux_linkat -304 AUE_NULL UNIMPL linux_symlinkat -305 AUE_NULL UNIMPL linux_readlinkat /* 305 */ -306 AUE_NULL UNIMPL linux_fchmodat -307 AUE_NULL UNIMPL linux_faccessat -308 AUE_NULL UNIMPL linux_pselect6 -309 AUE_NULL UNIMPL linux_ppoll -310 AUE_NULL UNIMPL linux_unshare /* 310 */ +253 AUE_NULL MSTD { int linux_lookup_dcookie(void); } +254 AUE_NULL MSTD { int linux_epoll_create(void); } +255 AUE_NULL MSTD { int linux_epoll_ctl(void); } +256 AUE_NULL MSTD { int linux_epoll_wait(void); } +257 AUE_NULL MSTD { int linux_remap_file_pages(void); } +258 AUE_NULL MSTD { int linux_set_tid_address(void); } +259 AUE_NULL MSTD { int linux_timer_create(void); } +260 AUE_NULL MSTD { int linux_timer_settime(void); } +261 AUE_NULL MSTD { int linux_timer_gettime(void); } +262 AUE_NULL MSTD { int linux_timer_getoverrun(void); } +263 AUE_NULL MSTD { int linux_timer_delete(void); } +264 AUE_CLOCK_SETTIME MSTD { int linux_clock_settime(void); } +265 AUE_NULL MSTD { int linux_clock_gettime(void); } +266 AUE_NULL MSTD { int linux_clock_getres(void); } +267 AUE_NULL MSTD { int linux_clock_nanosleep(void); } +268 AUE_NULL MSTD { int linux_statfs64(void); } +269 AUE_NULL MSTD { int linux_fstatfs64(void); } +270 AUE_NULL MSTD { int linux_tgkill(void); } +271 AUE_NULL MSTD { int linux_utimes(void); } +272 AUE_NULL MSTD { int linux_fadvise64_64(void); } +273 AUE_NULL UNIMPL +274 AUE_NULL MSTD { int linux_mbind(void); } +275 AUE_NULL MSTD { int linux_get_mempolicy(void); } +276 AUE_NULL MSTD { int linux_set_mempolicy(void); } +277 AUE_NULL MSTD { int linux_mq_open(void); } +278 AUE_NULL MSTD { int linux_mq_unlink(void); } +279 AUE_NULL MSTD { int linux_mq_timedsend(void); } +280 AUE_NULL MSTD { int linux_mq_timedreceive(void); } +281 AUE_NULL MSTD { int linux_mq_notify(void); } +282 AUE_NULL MSTD { int linux_mq_getsetattr(void); } +283 AUE_NULL MSTD { int linux_kexec_load(void); } +284 AUE_NULL MSTD { int linux_waitid(void); } +285 AUE_NULL UNIMPL +286 AUE_NULL MSTD { int linux_add_key(void); } +287 AUE_NULL MSTD { int linux_request_key(void); } +288 AUE_NULL MSTD { int linux_keyctl(void); } +289 AUE_NULL MSTD { int linux_ioprio_set(void); } +290 AUE_NULL MSTD { int linux_ioprio_get(void); } +291 AUE_NULL MSTD { int linux_inotify_init(void); } +292 AUE_NULL MSTD { int linux_inotify_add_watch(void); } +293 AUE_NULL MSTD { int linux_inotify_rm_watch(void); } +294 AUE_NULL MSTD { int linux_migrate_pages(void); } +295 AUE_NULL MSTD { int linux_openat(void); } +296 AUE_NULL MSTD { int linux_mkdirat(void); } +297 AUE_NULL MSTD { int linux_mknodat(void); } +298 AUE_NULL MSTD { int linux_fchownat(void); } +299 AUE_NULL MSTD { int linux_futimesat(void); } +300 AUE_NULL MSTD { int linux_fstatat64(void); } +301 AUE_NULL MSTD { int linux_unlinkat(void); } +302 AUE_NULL MSTD { int linux_renameat(void); } +303 AUE_NULL MSTD { int linux_linkat(void); } +304 AUE_NULL MSTD { int linux_symlinkat(void); } +305 AUE_NULL MSTD { int linux_readlinkat(void); } +306 AUE_NULL MSTD { int linux_fchmodat(void); } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jun 21 12:57:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 21DA416A4A0; Wed, 21 Jun 2006 12:57:27 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EEAC916A49A for ; Wed, 21 Jun 2006 12:57:26 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7687E43D49 for ; Wed, 21 Jun 2006 12:57:26 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LCvQtc082049 for ; Wed, 21 Jun 2006 12:57:26 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LCvQMi082045 for perforce@freebsd.org; Wed, 21 Jun 2006 12:57:26 GMT (envelope-from gabor@FreeBSD.org) Date: Wed, 21 Jun 2006 12:57:26 GMT Message-Id: <200606211257.k5LCvQMi082045@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99754 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 12:57:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=99754 Change 99754 by gabor@spitfire on 2006/06/21 12:56:53 Add basic DESTDIR support. It already works for the simplest ports without USE_* that don't use [pre|do|post]-install targets don't have dependencies, and don't have things like PREFIX?= ${LINUXBASE}. Those must be PREFIX?= ${LINUXBASE_REL} in the future. Similarly we have X11BASE_REL. Several things have to be fixed: - OSVERSION handling in DESTDIR and in jail while here - ldconfig handling in DESTDIR - conflict checking in DESTDIR [1] - pkg_info usage in DESTDIR [1] - deinstall from DESTDIR [1] - plist summary with DESTDIR - more testing with manpages, as I'm not sure they install fine [1] These are going to be very complicated because the current infrastructure uses pkg_* tools for these and pkg_* tools don't have DESTDIR or chroot support except pkg_add but that is irrelevant in this case. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.apache.mk#3 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.emacs.mk#2 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.gnome.mk#2 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.mail.mk#2 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.openssl.mk#2 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#3 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.subdir.mk#2 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.python.mk#2 edit .. //depot/projects/soc2006/gabor_ports/Mk/bsd.ruby.mk#2 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.apache.mk#3 (text+ko) ==== @@ -175,7 +175,7 @@ --${SUEXEC_CONFARGS}-safepath="${SUEXEC_SAFEPATH}" \ --${SUEXEC_CONFARGS}-logfile="${SUEXEC_LOGFILE}" .if ${USE_APACHE:Mcommon2*} != "" -CONFIGURE_ARGS+= --${SUEXEC_CONFARGS}-bin="${PREFIX}/sbin/suexec" +CONFIGURE_ARGS+= --${SUEXEC_CONFARGS}-bin="${DESTDIR}${PREFIX}/sbin/suexec" .endif . if defined(WITH_SUEXEC_UMASK) ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.emacs.mk#2 (text+ko) ==== @@ -236,8 +236,8 @@ # find where emacsen is installed # look for it in PREEFIX first and fall back to LOCALBASE then -.if exists(${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}) -EMACS_BASE?= ${PREFIX} +.if exists(${DESTDIR}${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}) +EMACS_BASE?= ${DESTDIR}${PREFIX} .else EMACS_BASE?= ${LOCALBASE} .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.gnome.mk#2 (text+ko) ==== @@ -106,13 +106,13 @@ GNOME_HTML_DIR?= ${PREFIX}/share/doc GCONF_CONFIG_OPTIONS?= merged GCONF_CONFIG_DIRECTORY?=etc/gconf/gconf.xml.defaults -GCONF_CONFIG_SOURCE?=xml:${GCONF_CONFIG_OPTIONS}:${PREFIX}/${GCONF_CONFIG_DIRECTORY} +GCONF_CONFIG_SOURCE?=xml:${GCONF_CONFIG_OPTIONS}:${DESTDIR}${PREFIX}/${GCONF_CONFIG_DIRECTORY} GNOME_LOCALSTATEDIR?= ${PREFIX}/share/gnome gnomeprefix_CONFIGURE_ENV=GTKDOC="false" -gnomeprefix_CONFIGURE_ARGS=--localstatedir=${GNOME_LOCALSTATEDIR} \ - --datadir=${PREFIX}/share/gnome \ - --with-html-dir=${GNOME_HTML_DIR} \ - --with-help-dir=${PREFIX}/share/gnome/help \ +gnomeprefix_CONFIGURE_ARGS=--localstatedir=${DESTDIR}${GNOME_LOCALSTATEDIR} \ + --datadir=${DESTDIR}${PREFIX}/share/gnome \ + --with-html-dir=${DESTDIR}${GNOME_HTML_DIR} \ + --with-help-dir=${DESTDIR}${PREFIX}/share/gnome/help \ --disable-gtk-doc \ --with-gconf-source=${GCONF_CONFIG_SOURCE} gnomeprefix_USE_GNOME_IMPL=gnomehier @@ -725,10 +725,10 @@ gnome-pre-su-install: .if defined(_USE_GNOME) && ${_USE_GNOME:Mgnomeprefix}!="" && !defined(NO_MTREE) - @${MTREE_CMD} ${MTREE_ARGS:S/${MTREE_FILE}/${GNOME_MTREE_FILE}/} ${PREFIX}/ >/dev/null + @${MTREE_CMD} ${MTREE_ARGS:S/${MTREE_FILE}/${GNOME_MTREE_FILE}/} ${DESTDIR}${PREFIX}/ >/dev/null .endif .if defined(GCONF_SCHEMAS) - @${MKDIR} ${PREFIX}/etc/gconf/gconf.xml.defaults/ + @${MKDIR} ${DESTDIR}${PREFIX}/etc/gconf/gconf.xml.defaults/ .else @${DO_NADA} .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.mail.mk#2 (text+ko) ==== @@ -51,9 +51,9 @@ .endif .if defined(QMAIL_SLAVEPORT) -QMAIL_DEPENDS= ${QMAIL_PREFIX}/bin/qmail-send:${PORTSDIR}/mail/qmail-${QMAIL_SLAVEPORT:L} +QMAIL_DEPENDS= ${DESTDIR}${QMAIL_PREFIX}/bin/qmail-send:${PORTSDIR}/mail/qmail-${QMAIL_SLAVEPORT:L} .else -QMAIL_DEPENDS= ${QMAIL_PREFIX}/bin/qmail-send:${PORTSDIR}/mail/qmail +QMAIL_DEPENDS= ${DESTDIR}${QMAIL_PREFIX}/bin/qmail-send:${PORTSDIR}/mail/qmail .endif .if defined(USE_QMAIL) || defined(USE_QMAIL_RUN) ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.openssl.mk#2 (text+ko) ==== @@ -59,10 +59,10 @@ .endif .if defined(WITH_OPENSSL_BASE) -OPENSSLBASE= /usr -OPENSSLDIR= /etc/ssl +OPENSSLBASE= ${DESTDIR}/usr +OPENSSLDIR= ${DESTDIR}/etc/ssl -.if !exists(/usr/lib/libcrypto.so) +.if !exists(${DESTDIR}/usr/lib/libcrypto.so) check-depends:: @${ECHO_CMD} "Dependency error: this port requires the OpenSSL library, which is part of" @${ECHO_CMD} "the FreeBSD crypto distribution but not installed on your" @@ -98,7 +98,7 @@ .endif MAKE_ARGS+= OPENSSL_CFLAGS="${OPENSSL_CFLAGS}" .endif -OPENSSLRPATH= /usr/lib:${LOCALBASE}/lib +OPENSSLRPATH= ${DESTDIR}$/usr/lib:${LOCALBASE}/lib .else ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#3 (text+ko) ==== @@ -491,6 +491,16 @@ # Various directory definitions and variables to control them. # You rarely need to redefine any of these except WRKSRC and NO_WRKSUBDIR. # +# DESTDIR - The path to the environment we are installing to. Define +# this if you want to install packages into a jail +# or into an another FreeBSD environment mounted +# elsewhere than /. ${PREFIX}, ${LOCALBASE}, +# ${LINUXBASE} and ${X11BASE} are all relative to +# ${DESTDIR}. E.g. setting DESTDIR=/bla LOCALBASE=/opt +# results packages installed under /bla/opt and registered +# under /bla/var/db/pkg. +# Default: / (not set) +# # X11BASE - Where X11 ports install things. # Default: /usr/X11R6 # LOCALBASE - Where non-X11 ports install things. @@ -1127,6 +1137,8 @@ OSREL!= ${UNAME} -r | ${SED} -e 's/[-(].*//' .endif +### FIXME: OSVERSION in DESTDIR and in jail + # Get __FreeBSD_version .if !defined(OSVERSION) OSVERSION!= ${SYSCTL} -n kern.osreldate @@ -1261,9 +1273,15 @@ # tree we are and thus can't go relative. They can, of course, be overridden # by individual Makefiles or local system make configuration. PORTSDIR?= /usr/ports -LOCALBASE?= ${DESTDIR}/usr/local -X11BASE?= ${DESTDIR}/usr/X11R6 -LINUXBASE?= ${DESTDIR}/compat/linux +LOCALBASE?= /usr/local +X11BASE?= /usr/X11R6 +LINUXBASE?= /compat/linux +LOCALBASE_REL:= ${LOCALBASE} +X11BASE_REL:= ${X11BASE} +LINUXBASE_REL:= ${LINUXBASE} +LOCALBASE:= ${DESTDIR}${LOCALBASE_REL} +X11BASE:= ${DESTDIR}${X11BASE_REL} +LINUXBASE:= ${DESTDIR}${LINUXBASE_REL} DISTDIR?= ${PORTSDIR}/distfiles _DISTDIR?= ${DISTDIR}/${DIST_SUBDIR} INDEXDIR?= ${PORTSDIR} @@ -1308,14 +1326,16 @@ USE_XLIB= yes .endif .if defined(USE_X_PREFIX) -PREFIX?= ${X11BASE} +PREFIX?= ${X11BASE_REL} .elif defined(USE_LINUX_PREFIX) -PREFIX?= ${LINUXBASE} +PREFIX?= ${LINUXBASE_REL} NO_MTREE= yes .else -PREFIX?= ${LOCALBASE} +PREFIX?= ${LOCALBASE_REL} .endif +### FIXME: ldconfig in DESTDIR + .if defined(USE_LINUX_PREFIX) LDCONFIG_CMD?= ${LINUXBASE}/sbin/ldconfig -r ${LINUXBASE} LDCONFIG_PLIST_EXEC_CMD?= ${LDCONFIG_CMD} @@ -1378,8 +1398,8 @@ SITE_PERL?= ${LOCALBASE}/${SITE_PERL_REL} .if ${PERL_LEVEL} < 500600 -PERL5= /usr/bin/perl${PERL_VERSION} -PERL= /usr/bin/perl +PERL5= ${DESTDIR}/usr/bin/perl${PERL_VERSION} +PERL= ${DESTDIR}/usr/bin/perl .else PERL5= ${LOCALBASE}/bin/perl${PERL_VERSION} PERL= ${LOCALBASE}/bin/perl @@ -1489,8 +1509,8 @@ BUILD_WRKSRC?= ${WRKSRC} INSTALL_WRKSRC?=${WRKSRC} -PLIST_SUB+= OSREL=${OSREL} PREFIX=%D LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} -SUB_LIST+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} \ +PLIST_SUB+= OSREL=${OSREL} PREFIX=%D LOCALBASE=${LOCALBASE_REL} X11BASE=${X11BASE_REL} +SUB_LIST+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE_REL} X11BASE=${X11BASE_REL} \ DATADIR=${DATADIR} DOCSDIR=${DOCSDIR} EXAMPLESDIR=${EXAMPLESDIR} PLIST_REINPLACE+= dirrmtry @@ -1830,10 +1850,10 @@ PL_BUILD?= Build CONFIGURE_ARGS+= \ create_packlist=0 \ - install_path=lib="${PREFIX}/${SITE_PERL_REL}" \ - install_path=arch="${PREFIX}/${SITE_PERL_REL}/${PERL_ARCH}" \ - install_path=script="${PREFIX}/bin" \ - install_path=bin="${PREFIX}/bin" \ + install_path=lib="${DESTDIR}${PREFIX}/${SITE_PERL_REL}" \ + install_path=arch="${DESTDIR}${PREFIX}/${SITE_PERL_REL}/${PERL_ARCH}" \ + install_path=script="${DESTDIR}${PREFIX}/bin" \ + install_path=bin="${DESTDIR}${PREFIX}/bin" \ install_path=libdoc="${MAN3PREFIX}/man/man3" \ install_path=bindoc="${MAN1PREFIX}/man/man1" .elif defined(PERL_CONFIGURE) @@ -1978,8 +1998,8 @@ .endif .if exists(/sbin/sha256) SHA256?= /sbin/sha256 -.elif exists(${LOCALBASE}/sbin/sha256) -SHA256?= ${LOCALBASE}/sbin/sha256 +.elif exists(${LOCALBASE_REL}/sbin/sha256) +SHA256?= ${LOCALBASE_REL}/sbin/sha256 .else SHA256?= NO .endif @@ -1990,7 +2010,7 @@ MAKE_FLAGS?= -f MAKEFILE?= Makefile -MAKE_ENV+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} MOTIFLIB="${MOTIFLIB}" LIBDIR="${LIBDIR}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" MANPREFIX="${MANPREFIX}" +MAKE_ENV+= DESTDIR=${DESTDIR} PREFIX=${PREFIX} LOCALBASE=${LOCALBASE_REL} X11BASE=${X11BASE_REL} MOTIFLIB="${MOTIFLIB}" LIBDIR="${LIBDIR}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" MANPREFIX="${MANPREFIX}" .if ${OSVERSION} < 500016 PTHREAD_CFLAGS?= -D_THREAD_SAFE @@ -2084,7 +2104,7 @@ # Figure out where the local mtree file is .if !defined(MTREE_FILE) && !defined(NO_MTREE) -.if ${PREFIX} == ${X11BASE} || defined(USE_X_PREFIX) +.if ${PREFIX} == ${X11BASE_REL} || defined(USE_X_PREFIX) # User may have specified non-standard PREFIX for installing a port that # uses X .if ${X_WINDOW_SYSTEM:L} == xfree86-3 @@ -2203,7 +2223,7 @@ .endif .endif # where pkg_add records its dirty deeds. -PKG_DBDIR?= /var/db/pkg +PKG_DBDIR?= ${DESTDIR}/var/db/pkg MOTIFLIB?= -L${X11BASE}/lib -lXm -lXp @@ -2697,10 +2717,10 @@ PKGLATESTFILE= ${PKGLATESTREPOSITORY}/${LATEST_LINK}${PKG_SUFX} .if defined(PERL_CONFIGURE) -CONFIGURE_ARGS+= CC="${CC}" CCFLAGS="${CFLAGS}" PREFIX="${PREFIX}" \ - INSTALLPRIVLIB="${PREFIX}/lib" INSTALLARCHLIB="${PREFIX}/lib" +CONFIGURE_ARGS+= CC="${CC}" CCFLAGS="${CFLAGS}" PREFIX="${DESTDIR}${PREFIX}" \ + INSTALLPRIVLIB="${DESTDIR}${PREFIX}/lib" INSTALLARCHLIB="${DESTDIR}${PREFIX}/lib" CONFIGURE_SCRIPT?= Makefile.PL -MAN3PREFIX?= ${PREFIX}/lib/perl5/${PERL_VERSION} +MAN3PREFIX?= ${DESTDIR}${PREFIX}/lib/perl5/${PERL_VERSION} .undef HAS_CONFIGURE .endif @@ -2716,7 +2736,7 @@ .if !defined(CONFIGURE_MAX_CMD_LEN) CONFIGURE_MAX_CMD_LEN!= ${SYSCTL} -n kern.argmax .endif -CONFIGURE_ARGS+= --prefix=${PREFIX} ${CONFIGURE_TARGET} +CONFIGURE_ARGS+= --prefix=${DESTDIR}${PREFIX} ${CONFIGURE_TARGET} CONFIGURE_ENV+= lt_cv_sys_max_cmd_len=${CONFIGURE_MAX_CMD_LEN} HAS_CONFIGURE= yes .endif @@ -2726,16 +2746,17 @@ WRKDIR=${WRKDIR} WRKSRC=${WRKSRC} PATCHDIR=${PATCHDIR} \ SCRIPTDIR=${SCRIPTDIR} FILESDIR=${FILESDIR} \ PORTSDIR=${PORTSDIR} DEPENDS="${DEPENDS}" \ - PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} + PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} \ + DESTDIR=${DESTDIR} .if defined(BATCH) SCRIPTS_ENV+= BATCH=yes .endif .if ${PREFIX} == /usr -MANPREFIX?= /usr/share +MANPREFIX?= ${DESTDIR}/usr/share .else -MANPREFIX?= ${PREFIX} +MANPREFIX?= ${DESTDIR}${PREFIX} .endif .for sect in 1 2 3 4 5 6 7 8 9 @@ -2813,9 +2834,9 @@ .if defined(_MANPAGES) .if defined(NOMANCOMPRESS) -__MANPAGES:= ${_MANPAGES:S%^${PREFIX}/%%} +__MANPAGES:= ${_MANPAGES:S%^${DESTDIR}${PREFIX}/%%} .else -__MANPAGES:= ${_MANPAGES:S%^${PREFIX}/%%:S%$%.gz%} +__MANPAGES:= ${_MANPAGES:S%^${DESTDIR}${PREFIX}/%%:S%$%.gz%} .endif .if ${MANCOMPRESSED} == "yes" @@ -2830,16 +2851,16 @@ INFO_PATH?= info .endif -DOCSDIR?= ${PREFIX}/share/doc/${PORTNAME} -EXAMPLESDIR?= ${PREFIX}/share/examples/${PORTNAME} -DATADIR?= ${PREFIX}/share/${PORTNAME} +DOCSDIR?= ${DESTDIR}${PREFIX}/share/doc/${PORTNAME} +EXAMPLESDIR?= ${DESTDIR}${PREFIX}/share/examples/${PORTNAME} +DATADIR?= ${DESTDIR}${PREFIX}/share/${PORTNAME} -PLIST_SUB+= DOCSDIR="${DOCSDIR:S,^${PREFIX}/,,}" \ - EXAMPLESDIR="${EXAMPLESDIR:S,^${PREFIX}/,,}" \ - DATADIR="${DATADIR:S,^${PREFIX}/,,}" +PLIST_SUB+= DOCSDIR="${DOCSDIR:S,^${DESTDIR}${PREFIX}/,,}" \ + EXAMPLESDIR="${EXAMPLESDIR:S,^${DESTDIR}${PREFIX}/,,}" \ + DATADIR="${DATADIR:S,^${DESTDIR}${PREFIX}/,,}" -DESKTOPDIR?= ${PREFIX}/share/applications -_DESKTOPDIR_REL= ${DESKTOPDIR:S,^${PREFIX}/,,}/ +DESKTOPDIR?= ${DESTDIR}${PREFIX}/share/applications +_DESKTOPDIR_REL= ${DESKTOPDIR:S,^${DESTDIR}${PREFIX}/,,}/ .if ${_DESKTOPDIR_REL} == ${DESKTOPDIR}/ # DESKTOPDIR is not beneath PREFIX @@ -2848,6 +2869,8 @@ # Put this as far down as possible so it will catch all PLIST_SUB definitions. +### FIXME: ldconfig in DESTDIR + .if defined(INSTALLS_SHLIB) LDCONFIG_DIRS?= %%PREFIX%%/lib LDCONFIG_PLIST!= ${ECHO_CMD} ${LDCONFIG_DIRS} | ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} @@ -2999,7 +3022,7 @@ @cd ${.CURDIR} && ${SETENV} CURDIR=${.CURDIR} DISTNAME=${DISTNAME} \ DISTDIR=${DISTDIR} WRKDIR=${WRKDIR} WRKSRC=${WRKSRC} \ PATCHDIR=${PATCHDIR} SCRIPTDIR=${SCRIPTDIR} \ - FILESDIR=${FILESDIR} PORTSDIR=${PORTSDIR} PREFIX=${PREFIX} \ + FILESDIR=${FILESDIR} PORTSDIR=${PORTSDIR} DESTDIR=${DESTDIR} PREFIX=${PREFIX} \ DEPENDS="${DEPENDS}" BUILD_DEPENDS="${BUILD_DEPENDS}" \ RUN_DEPENDS="${RUN_DEPENDS}" X11BASE=${X11BASE} \ CONFLICTS="${CONFLICTS}" \ @@ -3461,9 +3484,11 @@ # Check conflicts +### FIXME: conflict checking in DESTDIR is temporarly ignored for testing + .if !target(check-conflicts) check-conflicts: -.if defined(CONFLICTS) && !defined(DISABLE_CONFLICTS) +.if defined(CONFLICTS) && !defined(DISABLE_CONFLICTS) && !defined(DESTDIR) @found=`${PKG_INFO} -I ${CONFLICTS:C/.+/'&'/} 2>/dev/null | ${AWK} '{print $$1}'`; \ conflicts_with=; \ for entry in $${found}; do \ @@ -3602,6 +3627,8 @@ # Utility targets follow +### FIXME: pkg_info in DESTDIR + .if !target(check-already-installed) check-already-installed: .if !defined(NO_PKG_REGISTER) && !defined(FORCE_PKG_REGISTER) @@ -3649,12 +3676,12 @@ .if !target(install-mtree) install-mtree: - @${MKDIR} ${PREFIX} + @${MKDIR} ${DESTDIR}${PREFIX} @if [ `${ID} -u` != 0 ]; then \ - if [ -w ${PREFIX}/ ]; then \ + if [ -w ${DESTDIR}${PREFIX}/ ]; then \ ${ECHO_MSG} "Warning: not superuser, you may get some errors during installation."; \ else \ - ${ECHO_MSG} "Error: ${PREFIX}/ not writable."; \ + ${ECHO_MSG} "Error: ${DESTDIR}${PREFIX}/ not writable."; \ ${FALSE}; \ fi; \ fi @@ -3665,9 +3692,9 @@ ${ECHO_CMD} "Copy it from a suitable location (e.g., /usr/src/etc/mtree) and try again."; \ exit 1; \ else \ - ${MTREE_CMD} ${MTREE_ARGS} ${PREFIX}/ >/dev/null; \ + ${MTREE_CMD} ${MTREE_ARGS} ${DESTDIR}${PREFIX}/ >/dev/null; \ if [ ${MTREE_FILE} = "/etc/mtree/BSD.local.dist" ]; then \ - cd ${PREFIX}/share/nls; \ + cd ${DESTDIR}${PREFIX}/share/nls; \ ${LN} -shf C POSIX; \ ${LN} -shf C en_US.US-ASCII; \ fi; \ @@ -3728,6 +3755,8 @@ .if !target(security-check) .if !defined(OLD_SECURITY_CHECK) +### FIXME: in the displayed checksum DESTDIR should be displayed if set + security-check: # Scan PLIST for: # 1. setugid files @@ -4057,6 +4086,8 @@ # # Special target to remove installation +### FIXME: deinstall from DESTDIR + .if !target(deinstall) deinstall: .if ${UID} != 0 && !defined(INSTALL_AS_USER) @@ -5169,10 +5200,10 @@ # Process GNU INFO files at package install/deinstall time .if defined(INFO) .for i in ${INFO} - install-info --quiet ${PREFIX}/${INFO_PATH}/$i.info ${PREFIX}/${INFO_PATH}/dir + install-info --quiet ${DESTDIR}${PREFIX}/${INFO_PATH}/$i.info ${DESTDIR}${PREFIX}/${INFO_PATH}/dir @${ECHO_CMD} "@unexec install-info --quiet --delete %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \ >> ${TMPPLIST} - @${LS} ${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${PREFIX}/::g >> ${TMPPLIST} + @${LS} ${DESTDIR}${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${DESTDIR}${PREFIX}/::g >> ${TMPPLIST} @${ECHO_CMD} "@exec install-info --quiet %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \ >> ${TMPPLIST} @if [ "`${DIRNAME} $i`" != "." ]; then \ @@ -5181,7 +5212,7 @@ .endfor .if (${PREFIX} != "/usr") @${ECHO_CMD} "@unexec if [ -f %D/${INFO_PATH}/dir ]; then if sed -e '1,/Menu:/d' %D/${INFO_PATH}/dir | grep -q '^[*] '; then true; else rm %D/${INFO_PATH}/dir; fi; fi" >> ${TMPPLIST} -.if (${PREFIX} != ${LOCALBASE} && ${PREFIX} != ${X11BASE} && ${PREFIX} != ${LINUXBASE}) +.if (${PREFIX} != ${LOCALBASE_REL} && ${PREFIX} != ${X11BASE_REL} && ${PREFIX} != ${LINUXBASE_REL}) @${ECHO_CMD} "@unexec rmdir %D/info 2> /dev/null || true" >> ${TMPPLIST} .endif .endif @@ -5192,7 +5223,7 @@ # deinstall-time .if !target(add-plist-post) add-plist-post: -.if (${PREFIX} != ${LOCALBASE} && ${PREFIX} != ${X11BASE} && ${PREFIX} != ${LINUXBASE} && ${PREFIX} != "/usr") +.if (${PREFIX} != ${LOCALBASE_REL} && ${PREFIX} != ${X11BASE_REL} && ${PREFIX} != ${LINUXBASE_REL} && ${PREFIX} != "/usr") @${ECHO_CMD} "@unexec rmdir %D 2> /dev/null || true" >> ${TMPPLIST} .else @${DO_NADA} @@ -5216,12 +5247,12 @@ @${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST} .if (${OSVERSION} >= 700007 || ( ${OSVERSION} < 700000 && ${OSVERSION} >= 600101 )) @for i in ${USE_RC_SUBR}; do \ - ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${PREFIX}/etc/rc.d/$${i%.sh}; \ + ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${DESTDIR}${PREFIX}/etc/rc.d/$${i%.sh}; \ ${ECHO_CMD} "etc/rc.d/$${i%.sh}" >> ${TMPPLIST}; \ done .else @for i in ${USE_RC_SUBR}; do \ - ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${PREFIX}/etc/rc.d/$${i%.sh}.sh; \ + ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${DESTDIR}${PREFIX}/etc/rc.d/$${i%.sh}.sh; \ ${ECHO_CMD} "etc/rc.d/$${i%.sh}.sh" >> ${TMPPLIST}; \ done .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.subdir.mk#2 (text+ko) ==== @@ -48,10 +48,10 @@ .if !defined(NOPRECIOUSMAKEVARS) .if !defined(ARCH) -ARCH!= /usr/bin/uname -p +ARCH!= ${DESTDIR}/usr/bin/uname -p .endif .if !defined(OSREL) -OSREL!= /usr/bin/uname -r | sed -e 's/[-(].*//' +OSREL!= ${DESTDIR}/usr/bin/uname -r | sed -e 's/[-(].*//' .endif .if !defined(OSVERSION) .if exists(/sbin/sysctl) @@ -61,23 +61,23 @@ .endif .endif .if !defined(PORTOBJFORMAT) -PORTOBJFORMAT!= test -x /usr/bin/objformat && /usr/bin/objformat || echo aout +PORTOBJFORMAT!= test -x ${DESTDIR}/usr/bin/objformat && ${DESTDIR}/usr/bin/objformat || echo aout .endif .endif -ID?= /usr/bin/id +ID?= ${DESTDIR}/usr/bin/id UID!= ${ID} -u -LOCALBASE?= ${DESTDIR}/usr/local +LOCALBASE?= ${DESTDIR}${LOCALBASE_REL} .if exists(${LOCALBASE}/sbin/pkg_info) PKG_INFO?= ${LOCALBASE}/sbin/pkg_info .else -PKG_INFO?= /usr/sbin/pkg_info +PKG_INFO?= ${DESTDIR}/usr/sbin/pkg_info .endif -SED?= /usr/bin/sed +SED?= ${DESTDIR}/usr/bin/sed PKGINSTALLVER!= ${PKG_INFO} -P 2>/dev/null | ${SED} -e 's/.*: //' .if !defined(OPSYS) -OPSYS!= /usr/bin/uname -s +OPSYS!= ${DESTDIR}/usr/bin/uname -s .endif ECHO_MSG?= echo ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.python.mk#2 (text+ko) ==== @@ -403,7 +403,7 @@ @${ECHO} "Legal values are: 2.7 (default), 2.8, 2.9, 3.2" @${FALSE} .endif -ZOPEBASEDIR?= ${PREFIX}/${SZOPEBASEDIR} +ZOPEBASEDIR?= ${DESTDIR}${PREFIX}/${SZOPEBASEDIR} ZOPEPRODUCTDIR?= Products .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.ruby.mk#2 (text+ko) ==== @@ -113,7 +113,7 @@ RUBY_VER?= ${RUBY_DEFAULT_VER} .if defined(RUBY) -.if !exists(${RUBY}) +.if !exists(${DESTDIR}${RUBY}) BROKEN= You set the variable RUBY to "${RUBY}", but it does not seem to exist. Please specify an already installed ruby executable. .endif @@ -122,7 +122,7 @@ BROKEN= You set the variable RUBY to "${RUBY}", but it failed to include rbconfig. Please specify a properly installed ruby executable. .endif -_RUBY_CONFIG= ${RUBY} -r rbconfig -e 'C = Config::CONFIG' -e +_RUBY_CONFIG= ${DESTDIR}${RUBY} -r rbconfig -e 'C = Config::CONFIG' -e RUBY_VERSION!= ${_RUBY_CONFIG} 'puts VERSION' RUBY_SUFFIX?= # empty From owner-p4-projects@FreeBSD.ORG Wed Jun 21 13:13:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4A4CE16A479; Wed, 21 Jun 2006 13:13:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0E7CC16A47C; Wed, 21 Jun 2006 13:13:36 +0000 (UTC) (envelope-from flag@newluxor.wired.org) Received: from mail.oltrelinux.com (krisma.oltrelinux.com [194.242.226.43]) by mx1.FreeBSD.org (Postfix) with ESMTP id 89D4743D45; Wed, 21 Jun 2006 13:13:35 +0000 (GMT) (envelope-from flag@newluxor.wired.org) Received: from newluxor.wired.org (ip-79-107.sn1.eutelia.it [62.94.79.107]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.oltrelinux.com (Postfix) with ESMTP id C877311AEB8; Wed, 21 Jun 2006 15:13:34 +0200 (CEST) Received: from newluxor.wired.org (localhost [127.0.0.1]) by newluxor.wired.org (8.13.6/8.13.6) with ESMTP id k5LDD1MK002442; Wed, 21 Jun 2006 15:13:01 +0200 (CEST) (envelope-from flag@newluxor.wired.org) Received: (from flag@localhost) by newluxor.wired.org (8.13.6/8.13.6/Submit) id k5LDD1hn002441; Wed, 21 Jun 2006 15:13:01 +0200 (CEST) (envelope-from flag) Date: Wed, 21 Jun 2006 15:13:01 +0200 From: Paolo Pisati To: Paolo Pisati Message-ID: <20060621131301.GA2419@tin.it> References: <200606211214.k5LCETcv071167@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200606211214.k5LCETcv071167@repoman.freebsd.org> User-Agent: Mutt/1.4.2.1i X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at krisma.oltrelinux.com Cc: Perforce Change Reviews Subject: Re: PERFORCE change 99751 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 13:13:36 -0000 On Wed, Jun 21, 2006 at 12:14:29PM +0000, Paolo Pisati wrote: > http://perforce.freebsd.org/chv.cgi?CH=99751 > > Change 99751 by piso@piso_newluxor on 2006/06/21 12:14:00 > > Updated a bit to reflect work status > > Affected files ... > > .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#2 edit > .. //depot/projects/soc2006/intr_filter/notes#2 edit > > Differences ... > > ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#2 (text+ko) ==== > > @@ -99,10 +99,9 @@ > } > > void > -arm_handler_execute(struct trapframe *frame, int irqnb) > +arm_handler_execute(struct trapframe *frame, int irqnb __unused) > { > struct intr_event *event; > - struct intr_handler *ih; > struct thread *td = curthread; > int i, thread; > > @@ -115,14 +114,7 @@ > continue; > > /* Execute fast handlers. */ > - thread = 0; > - TAILQ_FOREACH(ih, &event->ie_handlers, ih_next) { > - if (!(ih->ih_flags & IH_FAST)) > - thread = 1; > - else > - ih->ih_handler(ih->ih_argument ? > - ih->ih_argument : frame); > - } > + thread = intr_filter_loop(event, frame); > > /* Schedule thread if needed. */ > if (thread) > For some reason, the server had this change pending, and when i submitted an update to the todo list, this stale modification crept in... the odd thing is that i was sure i commited it some days ago... -- Paolo Piso's first law: nothing works as expected! From owner-p4-projects@FreeBSD.ORG Wed Jun 21 13:34:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 991FE16A47C; Wed, 21 Jun 2006 13:34:00 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 72FF116A474 for ; Wed, 21 Jun 2006 13:34:00 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C14E743D6D for ; Wed, 21 Jun 2006 13:33:53 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LDXrmC087130 for ; Wed, 21 Jun 2006 13:33:53 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LDXAK2087053 for perforce@freebsd.org; Wed, 21 Jun 2006 13:33:10 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 21 Jun 2006 13:33:10 GMT Message-Id: <200606211333.k5LDXAK2087053@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 99756 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 13:34:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=99756 Change 99756 by rdivacky@rdivacky_witten on 2006/06/21 13:32:19 IFC Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/fpu.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/pmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/trap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/conf/NOTES#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/include/md_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#5 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#5 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#5 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#5 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/inckern.S#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/pmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/if_ate.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/conf/IQ31244#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/conf/KB920X#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/conf/SIMICS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/conf/SKYEYE#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/include/cpuconf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/include/cpufunc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/include/pmap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/sa11x0/sa11x0_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/sa11x0/uart_cpu_sa1110.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/sa11x0/uart_dev_sa1110.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/boot/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/bsm/audit.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/bsm/audit_record.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/cam/cam_ccb.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/cam/cam_xpt.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linprocfs/linprocfs.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/ndis/winx32_wrap.S#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/Makefile.arm#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/NOTES#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/files#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/files.arm#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/files.powerpc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/kern.mk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/kern.post.mk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/kmod.mk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/options#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/options.arm#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/COPYRIGHT#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/README#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/ah_desc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/freebsd/ah_if.m#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/freebsd/ah_osdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/freebsd/ah_osdep.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/arm9-le-thumb-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/armv4-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/armv4-le-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/i386-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/i386-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips-le-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips1-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips1-le-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mipsisa32-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mipsisa32-le-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-be-eabi.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-le-eabi.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sh4-le-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/x86_64-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/x86_64-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/xscale-be-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/xscale-le-elf.inc#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/dev/ath/version.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/pf/net/if_pfsync.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/crypto/via/padlock.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ddb/db_sym.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/aac/aac_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/acpica/acpi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/acpica/acpivar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ahb/ahb.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ath/if_ath.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ath/if_ath_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ath/if_athvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/atkbdc/atkbdc_isa.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/awi/awi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bce/if_bce.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bfe/if_bfereg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bge/if_bge.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ciss/ciss.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/dc/dcphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/dc/if_dc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/digi/digi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ed/if_ed.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ed/if_ed_novell.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ed/if_edvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/em/if_em.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/gem/if_gem.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/le/if_le_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/lmc/if_lmc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mfi/mfi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mfi/mfireg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mfi/mfivar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_cam.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_raid.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mpt/mpt_reg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mxge/if_mxge.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/my/if_my.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/myri10ge/if_myri10ge.c#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/pccbb/pccbb.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/pccbb/pccbb_isa.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/pccbb/pccbbvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/pci/pcireg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/puc/pucdata.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ral/rt2560.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ral/rt2661.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/safe/safe.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sk/if_sk.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/driver.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/midi.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/midi.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/midiq.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/mpu401.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/mpu401.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/mpu_if.m#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/mpufoi_if.m#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/sequencer.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/sequencer.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/midi/synth_if.m#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/cmi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/envy24.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/envy24.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/ich.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/via8233.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ubsec/ubsec.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ehci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ehci_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/if_axe.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/if_axereg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/if_ural.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ohci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ohcireg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ohcivar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/sl811hs.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/ugen.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uhci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uhci_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uhcivar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uhid.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/umodem.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uplcom.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/usb_mem.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/usbdevs#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/usbdi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/usbdivar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uscanner.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uvisor.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/wi/if_wi.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/wl/if_wl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-cam#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-crypto#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-dev_pci#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-dev_sound#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-dev_usb#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-geom#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-i4b#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-kern#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-libkern#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-linux#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-net80211#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netgraph#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netinet#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netinet6#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netipsec#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-opencrypto#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-vm#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/notreviewed.dox#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/nullfs/null_vfsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/procfs/procfs.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/eli/g_eli.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/eli/g_eli.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/geom/eli/g_eli_key.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/geom/geom.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/geom_dev.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/geom_gpt.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/geom_io.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_iget.c#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_mountops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_trace.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_inode.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_iomap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_vfsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfs_vnodeops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/NOTES#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/XBOX#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/busdma_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/db_trace.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/identcpu.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/initcpu.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/pmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/ptrace_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/trap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/include/md_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/include/npx.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/include/specialreg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/isa/npx.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#6 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#6 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#6 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#6 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/conf/NOTES#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/conf/SKI#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/ia64/busdma_machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/ia64/pmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/ia64/ssc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/isa/isa_common.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_acct.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_clock.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_event.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exec.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_linker.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_mbuf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_module.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_mutex.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_switch.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_synch.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_sysctl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_tc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/link_elf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/link_elf_obj.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sched_4bsd.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sched_core.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sched_ule.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_disk.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_firmware.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_kdb.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_rman.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_stack.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sys_pipe.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sysv_msg.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sysv_sem.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sysv_shm.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_mbuf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_socket.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_socket2.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_syscalls.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_usrreq.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_aio.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_cache.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_init.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_mount.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_subr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_syscalls.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vnode_if.src#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/Makefile#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/acpi/acpi/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/acpi/acpi_asus/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/acpi/acpi_panasonic/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/acpi/acpi_toshiba/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/acpi/acpi_video/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ath_hal/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/cpufreq/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/fdc/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/geom/geom_eli/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/if_bridge/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/mfi/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/mxge/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/myri10ge/Makefile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ppc/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/sound/driver/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/sound/driver/cmi/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/sound/driver/emu10k1/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/sound/sound/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/xfs/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/bpf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/bpf.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/bpf_filter.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/bpfdesc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_bridge.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_clone.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_disc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_faith.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_fwsubr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_gif.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_gre.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_loop.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_media.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_sl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_stf.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_tap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_tun.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_vlan.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/raw_cb.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/raw_usrreq.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/route.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net80211/ieee80211_freebsd.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net80211/ieee80211_input.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net80211/ieee80211_node.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netatalk/COPYRIGHT#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/atm/uni/ng_uni_cust.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/netgraph.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/ng_base.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/ng_iface.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/ng_socket.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/if_ether.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/in_pcb.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_carp.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_dummynet.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_fw2.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_gre.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_input.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_seq.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_syncache.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_timer.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/udp_usrreq.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/in6.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/nd6.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netipsec/ipsec.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netipsec/ipsec_input.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsserver/nfs_serv.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsserver/nfs_srvsubs.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/opencrypto/criov.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/opencrypto/crypto.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/opencrypto/cryptodev.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/opencrypto/cryptosoft.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/opencrypto/xform.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pc98/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pc98/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pc98/conf/NOTES#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pc98/pc98/machdep.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pci/agp_amd64.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pci/agp_sis.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/posix4/ksched.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/powerpc/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/powerpc/powerpc/pmap_dispatch.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_arg.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_bsm.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_bsm_klib.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_ioctl.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_pipe.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_private.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_trigger.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_worker.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/conf/GENERIC#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/include/_bus.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/include/bus.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/include/pmap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/isa/isa.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/sparc64/pmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/elf_common.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/firmware.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/linker.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/mutex.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/protosw.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/rman.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/sched.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/socketvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/sockio.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/syscallsubr.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/sysctl.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/tools/fw_stub.awk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/tools/vnode_if.awk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/pmap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_extern.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_fault.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_glue.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_map.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_map.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_meter.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_mmap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_page.c#2 integrate Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.35 2006/03/17 18:54:34 ru Exp $ +# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ .include @@ -11,10 +11,10 @@ # Directories to include in cscope name file and TAGS. CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ - isofs kern libkern modules net netatalk netatm netgraph \ - netinet netinet6 netipx netkey netnatm netncp netsmb nfs \ - nfsclient nfs4client rpc pccard pci posix4 sys ufs vm \ - ${ARCHDIR} + isofs kern libkern modules net net80211 netatalk netatm \ + netgraph netinet netinet6 netipx netkey netnatm netncp \ + netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ + ufs vm ${ARCHDIR} ARCHDIR ?= ${MACHINE} ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/busdma_machdep.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.74 2006/05/03 04:14:17 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.77 2006/06/01 04:49:29 silby Exp $"); #include #include @@ -492,7 +492,16 @@ } } + /* + * XXX: + * (dmat->alignment < dmat->maxsize) is just a quick hack; the exact + * alignment guarantees of malloc need to be nailed down, and the + * code below should be rewritten to take that into account. + * + * In the meantime, we'll warn the user if malloc gets it wrong. + */ if ((dmat->maxsize <= PAGE_SIZE) && + (dmat->alignment < dmat->maxsize) && dmat->lowaddr >= ptoa((vm_paddr_t)Maxmem)) { *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); } else { @@ -510,6 +519,8 @@ CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", __func__, dmat, dmat->flags, ENOMEM); return (ENOMEM); + } else if ((uintptr_t)*vaddr & (dmat->alignment - 1)) { + printf("bus_dmamem_alloc failed to align memory properly."); } CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", __func__, dmat, dmat->flags, ENOMEM); @@ -529,8 +540,9 @@ */ if (map != NULL) panic("bus_dmamem_free: Invalid map freed\n"); - if ((dmat->maxsize <= PAGE_SIZE) - && dmat->lowaddr >= ptoa((vm_paddr_t)Maxmem)) + if ((dmat->maxsize <= PAGE_SIZE) && + (dmat->alignment < dmat->maxsize) && + dmat->lowaddr >= ptoa((vm_paddr_t)Maxmem)) free(vaddr, M_DEVBUF); else { contigfree(vaddr, dmat->maxsize, M_DEVBUF); ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/fpu.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/initcpu.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/machdep.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/pmap.c#2 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.554 2006/05/01 22:06:59 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -209,6 +209,8 @@ static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); static void pmap_clear_ptes(vm_page_t m, long bit); +static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, + vm_page_t m, vm_prot_t prot, vm_page_t mpte); static int pmap_remove_pte(pmap_t pmap, pt_entry_t *ptq, vm_offset_t sva, pd_entry_t ptepde); static void pmap_remove_page(pmap_t pmap, vm_offset_t va, pd_entry_t *pde); @@ -1004,17 +1006,22 @@ * Note: SMP coherent. Uses a ranged shootdown IPI. */ void -pmap_qenter(vm_offset_t sva, vm_page_t *m, int count) +pmap_qenter(vm_offset_t sva, vm_page_t *ma, int count) { - vm_offset_t va; + pt_entry_t *endpte, oldpte, *pte; - va = sva; - while (count-- > 0) { - pmap_kenter(va, VM_PAGE_TO_PHYS(*m)); - va += PAGE_SIZE; - m++; + oldpte = 0; + pte = vtopte(sva); + endpte = pte + count; + while (pte < endpte) { + oldpte |= *pte; + pte_store(pte, VM_PAGE_TO_PHYS(*ma) | PG_G | PG_RW | PG_V); + pte++; + ma++; } - pmap_invalidate_range(kernel_pmap, sva, va); + if ((oldpte & PG_V) != 0) + pmap_invalidate_range(kernel_pmap, sva, sva + count * + PAGE_SIZE); } /* @@ -1657,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1690,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2310,6 +2318,38 @@ } /* + * Maps a sequence of resident pages belonging to the same object. + * The sequence begins with the given page m_start. This page is + * mapped at the given virtual address start. Each subsequent page is + * mapped at a virtual address that is offset from start by the same + * amount as the page is offset from m_start within the object. The + * last page in the sequence is the page with the largest offset from + * m_start that can be mapped at a virtual address less than the given + * virtual address end. Not every virtual page between start and end + * is mapped; only those for which a resident page exists with the + * corresponding offset from m_start are mapped. + */ +void +pmap_enter_object(pmap_t pmap, vm_offset_t start, vm_offset_t end, + vm_page_t m_start, vm_prot_t prot) +{ + vm_page_t m, mpte; + vm_pindex_t diff, psize; + + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); + psize = atop(end - start); + mpte = NULL; + m = m_start; + PMAP_LOCK(pmap); + while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { + mpte = pmap_enter_quick_locked(pmap, start + ptoa(diff), m, + prot, mpte); + m = TAILQ_NEXT(m, listq); + } + PMAP_UNLOCK(pmap); +} + +/* * this code makes some *MAJOR* assumptions: * 1. Current pmap & pmap exists. * 2. Not wired. @@ -2318,19 +2358,27 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) +{ + + PMAP_LOCK(pmap); + (void) pmap_enter_quick_locked(pmap, va, m, prot, NULL); + PMAP_UNLOCK(pmap); +} + +static vm_page_t +pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, + vm_prot_t prot, vm_page_t mpte) { pt_entry_t *pte; vm_paddr_t pa; KASSERT(va < kmi.clean_sva || va >= kmi.clean_eva || (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, - ("pmap_enter_quick: managed mapping within the clean submap")); + ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); - PMAP_LOCK(pmap); + PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* * In the case that a page table page is not @@ -2347,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2365,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2395,16 +2432,20 @@ pmap_unwire_pte_hold(pmap, va, mpte); mpte = NULL; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jun 21 13:41:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CC96316A47D; Wed, 21 Jun 2006 13:41:08 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 876C916A47C for ; Wed, 21 Jun 2006 13:41:08 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6E6EF43D5F for ; Wed, 21 Jun 2006 13:41:03 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LDf3pa088026 for ; Wed, 21 Jun 2006 13:41:03 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LDf3bH088023 for perforce@freebsd.org; Wed, 21 Jun 2006 13:41:03 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 21 Jun 2006 13:41:03 GMT Message-Id: <200606211341.k5LDf3bH088023@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 99758 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 13:41:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=99758 Change 99758 by rdivacky@rdivacky_witten on 2006/06/21 13:40:30 In the IFC I managed to commit my local change.. backout it out. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#4 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#4 (text+ko) ==== @@ -848,8 +848,11 @@ int linux_set_thread_area(struct thread *td, struct linux_set_thread_area_args *args) { - - return (0); + /* + * Return an error code instead of raising a SIGSYS so that + * the caller will fall back to simpler LDT methods. + */ + return (ENOSYS); } int From owner-p4-projects@FreeBSD.ORG Wed Jun 21 13:55:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9A21D16A47D; Wed, 21 Jun 2006 13:55:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 76E4116A47A for ; Wed, 21 Jun 2006 13:55:23 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0243743D6A for ; Wed, 21 Jun 2006 13:55:22 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LDtL6p089604 for ; Wed, 21 Jun 2006 13:55:21 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LDtLdL089601 for perforce@freebsd.org; Wed, 21 Jun 2006 13:55:21 GMT (envelope-from piso@freebsd.org) Date: Wed, 21 Jun 2006 13:55:21 GMT Message-Id: <200606211355.k5LDtLdL089601@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99760 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 13:55:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=99760 Change 99760 by piso@piso_newluxor on 2006/06/21 13:54:33 Added a patch containing all the modifications done to the src tree: people willing to test my work can grab this patch, cp to /usr/src/sys, patch < phase_1.patch, echo "options INTR_FILTER" >> $KERNEL_CFG_FILE, make kernel, reboot and test. Affected files ... .. //depot/projects/soc2006/intr_filter/notes#3 edit .. //depot/projects/soc2006/intr_filter/phase_1.patch#1 add Differences ... ==== //depot/projects/soc2006/intr_filter/notes#3 (text+ko) ==== @@ -29,7 +29,8 @@ - Port to powerpc - Port to arm - This may or may not be commitworthy as a milestone at this point. -[DONE] +[DONE] (phase_1.patch contains all the modifications done to the + src tree so far) - Second Pass: Change new-bus API to allow driver to have both filters and threaded handlers. From owner-p4-projects@FreeBSD.ORG Wed Jun 21 16:31:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B978316A4CB; Wed, 21 Jun 2006 16:31:55 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7B21716A474 for ; Wed, 21 Jun 2006 16:31:55 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 27B5443D8D for ; Wed, 21 Jun 2006 16:31:35 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LGVYMa003072 for ; Wed, 21 Jun 2006 16:31:35 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LGVYhg003069 for perforce@freebsd.org; Wed, 21 Jun 2006 16:31:34 GMT (envelope-from bushman@freebsd.org) Date: Wed, 21 Jun 2006 16:31:34 GMT Message-Id: <200606211631.k5LGVYhg003069@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99762 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 16:31:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=99762 Change 99762 by bushman@bushman_nss_ldap_cached on 2006/06/21 16:30:35 libc.a is now properly linked with statically built nss-modules. libc.so uses dynamically linked nss-modules. Nss-modules sources are no longer used in libc. Still some cleanup in nss-modules' source has to be made - to remove now redundant namespace.h and un-namespace.h. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/gethostnamadr.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getnetnamadr.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getservent.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nsdispatch.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_backends.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#6 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/Makefile#5 (text+ko) ==== @@ -16,6 +16,7 @@ # libnetgraph must be built before libbsnmp/modules/snmp_netgraph. # libnssutil must be built before nss_files/nss_dns/nss_nis/nss_compat # libnss_files must be built before libnss_compat +# nssfiles/nss_dns/nss_nis/nss_compat/nss_icmp must be built before libc # libopie must be built before libpam. # libradius must be built before libpam. # librpcsvc must be built before libpam. ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#4 (text+ko) ==== @@ -113,24 +113,43 @@ # Include nss-modules's sources so that statically linked apps can work # normally -CFLAGS+= -I${.CURDIR}/../libnssutil -I${.CURDIR}/net +NSS_STATIC+= ${.OBJDIR}/../nss_files/libnss_files.a +NSS_STATIC+= ${.OBJDIR}/../nss_dns/libnss_dns.a +NSS_STATIC+= ${.OBJDIR}/../nss_compat/libnss_compat.a +.if ${MK_NIS} != "no" +NSS_STATIC+= ${.OBJDIR}/../nss_nis/libnss_nis.a +.endif +NSS_STATIC+= ${.OBJDIR}/../libnssutil/libnssutil.a + +nss_static_modules.o: + ${LD} -o ${.TARGET} -r --whole-archive ${NSS_STATIC} + +.if ${MK_PROFILE} != "no" +nss_static_modules.po: + ${LD} -o ${.TARGET} -r --whole-archive ${NSS_STATIC} +.endif + +DPSRC= nss_static_modules.c +STATICOBJS+= nss_static_modules.o +CLEANFILES+= nss_static_modules.o +#CFLAGS+= -I${.CURDIR}/../libnssutil -I${.CURDIR}/net -.PATH: ${.CURDIR}/../libnssutil -.include "${.CURDIR}/../libnssutil/Makefile.inc" +#.PATH: ${.CURDIR}/../libnssutil +#.include "${.CURDIR}/../libnssutil/Makefile.inc" -.PATH: ${.CURDIR}/../nss_files -.include "${.CURDIR}/../nss_files/Makefile.inc" +#.PATH: ${.CURDIR}/../nss_files +#.include "${.CURDIR}/../nss_files/Makefile.inc" -.PATH: ${.CURDIR}/../nss_dns -.include "${.CURDIR}/../nss_dns/Makefile.inc" +#.PATH: ${.CURDIR}/../nss_dns +#.include "${.CURDIR}/../nss_dns/Makefile.inc" -.if ${MK_NIS} != "no" -.PATH: ${.CURDIR}/../nss_nis -.include "${.CURDIR}/../nss_nis/Makefile.inc" -.endif +#.if ${MK_NIS} != "no" +#.PATH: ${.CURDIR}/../nss_nis +#.include "${.CURDIR}/../nss_nis/Makefile.inc" +#.endif -.PATH: ${.CURDIR}/../nss_compat -.include "${.CURDIR}/../nss_compat/Makefile.inc" +#.PATH: ${.CURDIR}/../nss_compat +#.include "${.CURDIR}/../nss_compat/Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/Makefile.inc#5 (text+ko) ==== @@ -19,7 +19,7 @@ SYM_MAPS+=${.CURDIR}/net/Symbol.map -CFLAGS+=-DINET6 -I${.OBJDIR} +CFLAGS+=-DINET6 -I${.OBJDIR} -I${.CURDIR}/net # name6.c refers res_private.h CFLAGS+=-I${.CURDIR}/resolv ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/gethostnamadr.c#5 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getnetnamadr.c#3 (text+ko) ==== @@ -276,52 +276,6 @@ } int -__copy_netent(struct netent *ne, struct netent *nptr, char *buf, size_t buflen) -{ - char *cp; - int i, n; - int numptr, len; - - /* Find out the amount of space required to store the answer. */ - numptr = 1; /* NULL ptr */ - len = (char *)ALIGN(buf) - buf; - for (i = 0; ne->n_aliases[i]; i++, numptr++) { - len += strlen(ne->n_aliases[i]) + 1; - } - len += strlen(ne->n_name) + 1; - len += numptr * sizeof(char*); - - if (len > (int)buflen) { - errno = ERANGE; - return (-1); - } - - /* copy net value and type */ - nptr->n_addrtype = ne->n_addrtype; - nptr->n_net = ne->n_net; - - cp = (char *)ALIGN(buf) + numptr * sizeof(char *); - - /* copy official name */ - n = strlen(ne->n_name) + 1; - strcpy(cp, ne->n_name); - nptr->n_name = cp; - cp += n; - - /* copy aliases */ - nptr->n_aliases = (char **)ALIGN(buf); - for (i = 0 ; ne->n_aliases[i]; i++) { - n = strlen(ne->n_aliases[i]) + 1; - strcpy(cp, ne->n_aliases[i]); - nptr->n_aliases[i] = cp; - cp += n; - } - nptr->n_aliases[i] = NULL; - - return (0); -} - -int getnetbyname_r(const char *name, struct netent *ne, char *buffer, size_t buflen, struct netent **result, int *h_errorp) { ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getservent.c#3 (text+ko) ==== @@ -183,7 +183,7 @@ return (res); } -int +static int serv_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, void *cache_mdata) { @@ -284,7 +284,7 @@ return (NS_SUCCESS); } -int +static int serv_unmarshal_func(char *buffer, size_t buffer_size, void *retval, va_list ap, void *cache_mdata) { ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nsdispatch.c#4 (text+ko) ==== @@ -430,13 +430,20 @@ *src = NULL; } +/* ARGSUSED */ +ns_mtab * +__dummy_reg(const char *name, unsigned int *mtab_size, + nss_module_unregister_fn *fn) +{ + return (NULL); +} - /* * NSS module management. */ /* The built-in NSS modules are all loaded at once. */ #define NSS_BACKEND(name, reg) \ +__weak_reference(__dummy_reg, reg);\ ns_mtab *reg(const char *, unsigned int *, nss_module_unregister_fn *); #include "nss_backends.h" #undef NSS_BACKEND ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_backends.h#3 (text+ko) ==== @@ -42,5 +42,5 @@ NSS_BACKEND( nis, _nis_nss_module_register ) #endif NSS_BACKEND( compat, _compat_nss_module_register ) -//NSS_BACKEND( icmp, _icmp_nss_module_register ) +NSS_BACKEND( icmp, _icmp_nss_module_register ) #endif ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#5 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#3 (text+ko) ==== @@ -2,6 +2,7 @@ .include +LIB= nss_compat SHLIB_MAJOR= 1 SHLIB_NAME= nss_compat.so.${SHLIB_MAJOR} SHLIBDIR?= /lib ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#6 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#5 (text+ko) ==== @@ -2,6 +2,7 @@ .include +LIB= nss_icmp SHLIB_MAJOR= 1 SHLIB_NAME= nss_icmp.so.${SHLIB_MAJOR} SHLIBDIR?= /lib ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#6 (text+ko) ==== @@ -2,6 +2,7 @@ .include +LIB= nss_nis SHLIB_MAJOR= 1 SHLIB_NAME= nss_nis.so.${SHLIB_MAJOR} SHLIBDIR?= /lib From owner-p4-projects@FreeBSD.ORG Wed Jun 21 16:32:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D8F5E16A47D; Wed, 21 Jun 2006 16:32:37 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9E07616A474 for ; Wed, 21 Jun 2006 16:32:37 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5191A43D46 for ; Wed, 21 Jun 2006 16:32:37 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LGWb52003128 for ; Wed, 21 Jun 2006 16:32:37 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LGWanG003125 for perforce@freebsd.org; Wed, 21 Jun 2006 16:32:36 GMT (envelope-from bushman@freebsd.org) Date: Wed, 21 Jun 2006 16:32:36 GMT Message-Id: <200606211632.k5LGWanG003125@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99763 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 16:32:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=99763 Change 99763 by bushman@bushman_nss_ldap_cached on 2006/06/21 16:32:08 Agents system of the caching daemon reworked in order to support new nsdispatch behavior (when all nss-modules are external). Hosts agent finally implemented. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/Makefile#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/Makefile.inc#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/rpc.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/rpc.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cached.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/debug.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/mp_rs_query.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/query.c#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/Makefile#2 (text) ==== @@ -8,7 +8,7 @@ SRCS= agent.c cached.c cachedcli.c cachelib.c cacheplcs.c debug.c log.c \ config.c query.c mp_ws_query.c mp_rs_query.c singletons.c protocol.c \ parser.c -CFLAGS+= -DCONFIG_PATH="\"${PREFIX}/etc/cached.conf\"" +CFLAGS+= -g -DCONFIG_PATH="\"${PREFIX}/etc/cached.conf\"" DPADD+=${LIBM} ${LIBPTHREAD} ${LIBUTIL} LDADD+=${LIBM} ${LIBPTHREAD} ${LIBUTIL} LDFLAGS+= -Xlinker --export-dynamic ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.c#2 (text) ==== @@ -34,6 +34,11 @@ #include "agent.h" #include "debug.h" +const ns_dtab emptydtab[] = { + { NULL, NULL, NULL } +}; + + static int agent_cmp_func(const void *a1, const void *a2) { @@ -54,6 +59,47 @@ return (res); } +int +agent_marshal_results(char **buffer, size_t *bufsize, + agent_marshal_func marshal_func, void *cache_mdata, void *retval, ...) +{ + va_list ap; + size_t size; + int rv; + + va_start(ap, retval); + if (*buffer == NULL) { + *buffer = malloc(AGENT_BUFFER_STORAGE_INITIAL); + if (*buffer == NULL) + return (NS_UNAVAIL); + *bufsize = AGENT_BUFFER_STORAGE_INITIAL; + } + + size = *bufsize; + rv = marshal_func(*buffer, &size, retval, ap, cache_mdata); + if (rv == NS_RETURN) { + *bufsize = size; + if (*bufsize <= AGENT_BUFFER_STORAGE_MAX) { + *buffer = (char *)realloc(*buffer, *bufsize); + if (*buffer == NULL) + return (NS_UNAVAIL); + + size = *bufsize; + rv = marshal_func(*buffer, &size, retval, ap, + cache_mdata); + } + } + + if (rv != NS_SUCCESS) { + free(*buffer); + *buffer = NULL; + *bufsize = 0; + } + + va_end(ap); + return (rv); +} + struct agent_table * init_agent_table() { ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.h#2 (text) ==== @@ -29,6 +29,92 @@ #ifndef __CACHED_AGENT_H__ #define __CACHED_AGENT_H__ +#include +#include + +extern int __isthreaded; + +/* TLS handling routine obtained from libc/include/nss_tls.h */ +#define AGENT_TLS_HANDLING(name) \ +static pthread_key_t name##_state_key; \ +static void name##_keyinit(void); \ +static int name##_getstate(struct name##_state **); \ +\ +static void \ +name##_keyinit(void) \ +{ \ + (void)pthread_key_create(&name##_state_key, name##_endstate); \ +} \ +\ +static int \ +name##_getstate(struct name##_state **p) \ +{ \ + static struct name##_state st; \ + static pthread_once_t keyinit = PTHREAD_ONCE_INIT; \ + int rv; \ + \ + if (!__isthreaded || pthread_main_np() != 0) { \ + *p = &st; \ + return (0); \ + } \ + rv = pthread_once(&keyinit, name##_keyinit); \ + if (rv != 0) \ + return (rv); \ + *p = (struct name##_state *)pthread_getspecific(name##_state_key);\ + if (*p != NULL) \ + return (0); \ + *p = calloc(1, sizeof(**p)); \ + if (*p == NULL) \ + return (ENOMEM); \ + rv = pthread_setspecific(name##_state_key, *p); \ + if (rv != 0) { \ + free(*p); \ + *p = NULL; \ + } \ + return (rv); \ +} \ +/* allow the macro invocation to end with a semicolon */ \ +struct _clashproof_bmVjdGFy + + +#define AGENT_DECLARE_BUFFER_TLS_HANDLING(name) \ +struct name##_state { \ + char *buffer; \ + size_t bufsize; \ +}; \ + \ +static void \ +name##_endstate(void *p) \ +{ \ + free(p); \ +} \ + \ +AGENT_TLS_HANDLING(name); + +enum agent_buffer_constants +{ + AGENT_BUFFER_STORAGE_INITIAL = 1 << 10, /* 1 KByte */ + AGENT_BUFFER_STORAGE_MAX = 1 << 20, /* 1 MByte */ +}; + +#define AGENT_BUFFER_TLS_HANDLING_INIT(st) \ + { \ + if (st->buffer == NULL) { \ + st->buffer = malloc(AGENT_BUFFER_STORAGE_INITIAL);\ + st->bufsize = AGENT_BUFFER_STORAGE_INITIAL; \ + } \ + } + +#define AGENT_BUFFER_TLS_HANDLING_CHECK(st) (st->buffer == NULL) + +#define AGENT_BUFFER_TLS_HANDLING_RESIZE(st) \ + free(st->buffer); \ + st->bufsize <<= 1; \ + if (st->bufsize < AGENT_BUFFER_STORAGE_MAX) \ + st->buffer = malloc(st->bufsize); \ + else \ + st->buffer = NULL + /* * Agents are used to perform the actual lookups from the caching daemon. * There are two types of daemons: for common requests and for multipart @@ -41,21 +127,28 @@ MULTIPART_AGENT = 1 }; +typedef int (*agent_marshal_func)(char *, size_t *, void *, va_list, void *); +typedef int (*agent_lookup_func)(const char *, size_t, char **, size_t *); +typedef void *(*agent_mp_init_func)(); +typedef int (*agent_mp_lookup_func)(char **, size_t *, void *); +typedef void (*agent_mp_destroy_func)(void *); + struct agent { - char *name; + char *name; enum agent_type type; }; struct common_agent { struct agent parent; - int (*lookup_func)(const char *, size_t, char **, size_t *); + agent_lookup_func lookup_func; }; struct multipart_agent { struct agent parent; - void *(*mp_init_func)(); - int (*mp_lookup_func)(char **, size_t *, void *); - void (*mp_destroy_func)(void *); + + agent_mp_init_func mp_init_func; + agent_mp_lookup_func mp_lookup_func; + agent_mp_destroy_func mp_destroy_func; }; struct agent_table { @@ -63,6 +156,10 @@ size_t agents_num; }; +extern const ns_dtab emptydtab[]; + +extern int agent_marshal_results(char **, size_t *, agent_marshal_func, + void *, void *, ...); extern struct agent_table *init_agent_table(); extern void register_agent(struct agent_table *, struct agent *); extern struct agent *find_agent(struct agent_table *, const char *, ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/Makefile.inc#2 (text) ==== @@ -1,3 +1,3 @@ # $FreeBSD: src/usr.sbin/cached/agents/Makefile.inc,v 1.1 2006/04/28 12:03:38 ume Exp $ -SRCS += passwd.c group.c services.c +SRCS += passwd.c group.c services.c hosts.c ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.c#2 (text) ==== @@ -31,28 +31,73 @@ #include #include #include +#include +#include #include +#include +#include #include #include #include +#include #include "../debug.h" -#include "passwd.h" +#include "group.h" + +static const ns_src defaultsrc[] = { + { NSSRC_COMPAT, NS_SUCCESS }, + { NULL, 0 } +}; + -static int group_marshal_func(struct group *, char *, size_t *); +static int group_marshal_func(char *, size_t *, void *, va_list, void *); static int group_lookup_func(const char *, size_t, char **, size_t *); static void *group_mp_init_func(); -static int group_mp_lookup_func(char **, size_t *, void *); -static void group_mp_destroy_func(void *); +static int group_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); +static void group_mp_destroy_func(void *mdata); + +AGENT_DECLARE_BUFFER_TLS_HANDLING(group); + +#ifndef _ALIGNBYTES +#define _ALIGNBYTES ALIGNBYTES +#endif + +#ifndef _ALIGN +#define _ALIGN(x) ALIGN(x) +#endif static int -group_marshal_func(struct group *grp, char *buffer, size_t *buffer_size) +group_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, + void *cache_mdata) { + char *name; + gid_t gid; + struct group *grp; + char *orig_buf; + size_t orig_buf_size; + struct group new_grp; size_t desired_size, size, mem_size; char *p, **mem; - TRACE_IN(group_marshal_func); - desired_size = ALIGNBYTES + sizeof(struct group) + sizeof(char *); + switch ((enum nss_lookup_type)cache_mdata) { + case nss_lt_name: + name = va_arg(ap, char *); + break; + case nss_lt_id: + gid = va_arg(ap, gid_t); + break; + case nss_lt_all: + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + + grp = va_arg(ap, struct group *); + orig_buf = va_arg(ap, char *); + orig_buf_size = va_arg(ap, size_t); + + desired_size = _ALIGNBYTES + sizeof(struct group) + sizeof(char *); if (grp->gr_name != NULL) desired_size += strlen(grp->gr_name) + 1; @@ -66,12 +111,12 @@ ++mem_size; } - desired_size += ALIGNBYTES + (mem_size + 1) * sizeof(char *); + desired_size += _ALIGNBYTES + (mem_size + 1) * sizeof(char *); } - if ((desired_size > *buffer_size) || (buffer == NULL)) { + if (desired_size > *buffer_size) { + /* this assignment is here for future use */ *buffer_size = desired_size; - TRACE_OUT(group_marshal_func); return (NS_RETURN); } @@ -81,7 +126,7 @@ *buffer_size = desired_size; p = buffer + sizeof(struct group) + sizeof(char *); memcpy(buffer + sizeof(struct group), &p, sizeof(char *)); - p = (char *)ALIGN(p); + p = (char *)_ALIGN(p); if (new_grp.gr_name != NULL) { size = strlen(new_grp.gr_name); @@ -98,7 +143,7 @@ } if (new_grp.gr_mem != NULL) { - p = (char *)ALIGN(p); + p = (char *)_ALIGN(p); memcpy(p, new_grp.gr_mem, sizeof(char *) * mem_size); new_grp.gr_mem = (char **)p; p += sizeof(char *) * (mem_size + 1); @@ -112,24 +157,24 @@ } memcpy(buffer, &new_grp, sizeof(struct group)); - TRACE_OUT(group_marshal_func); return (NS_SUCCESS); } static int -group_lookup_func(const char *key, size_t key_size, char **buffer, - size_t *buffer_size) +group_lookup_func(const char *key, size_t key_size, char **out_buffer, + size_t *out_size) { + struct group_state *st; + struct group grp, *retval; enum nss_lookup_type lookup_type; - char *name; + char *name; + gid_t gid; + int error, result; size_t size; - gid_t gid; - - struct group *result; TRACE_IN(group_lookup_func); - assert(buffer != NULL); - assert(buffer_size != NULL); + assert(out_buffer != NULL); + assert(out_size != NULL); if (key_size < sizeof(enum nss_lookup_type)) { TRACE_OUT(group_lookup_func); @@ -137,18 +182,19 @@ } memcpy(&lookup_type, key, sizeof(enum nss_lookup_type)); + name = NULL; switch (lookup_type) { case nss_lt_name: - size = key_size - sizeof(enum nss_lookup_type) + 1; + size = key_size - sizeof(enum nss_lookup_type) + 1; name = (char *)malloc(size); assert(name != NULL); memset(name, 0, size); memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); - break; + break; case nss_lt_id: if (key_size < sizeof(enum nss_lookup_type) + sizeof(gid_t)) { - TRACE_OUT(passwd_lookup_func); + TRACE_OUT(group_lookup_func); return (NS_UNAVAIL); } @@ -159,29 +205,67 @@ return (NS_UNAVAIL); } + result = group_getstate(&st); + AGENT_BUFFER_TLS_HANDLING_INIT(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + free(name); + TRACE_OUT(group_lookup_func); + return (NS_UNAVAIL); + } + switch (lookup_type) { case nss_lt_name: - TRACE_STR(name); - result = getgrnam(name); - free(name); + do { + result = nsdispatch(&retval, emptydtab, NSDB_GROUP, + "getgrnam_r", defaultsrc, name, + &grp, st->buffer, st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + free(name); + TRACE_OUT(group_lookup_func); + return (NS_UNAVAIL); + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + group_marshal_func, (void *)nss_lt_name, + retval, name, &grp, + st->buffer, st->bufsize, &error); + break; case nss_lt_id: - result = getgrgid(gid); + do { + result = nsdispatch(&retval, emptydtab, NSDB_GROUP, + "getgrgid_r", defaultsrc, gid, + &grp, st->buffer, st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + TRACE_OUT(group_lookup_func); + return (NS_UNAVAIL); + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + group_marshal_func, + (void *)nss_lt_id, retval, gid, + &grp, st->buffer, st->bufsize, &error); break; default: /* SHOULD NOT BE REACHED */ break; - } + } - if (result != NULL) { - group_marshal_func(result, NULL, buffer_size); - *buffer = (char *)malloc(*buffer_size); - assert(*buffer != NULL); - group_marshal_func(result, *buffer, buffer_size); - } - + free(name); TRACE_OUT(group_lookup_func); - return (result == NULL ? NS_NOTFOUND : NS_SUCCESS); + return (result); } static void * @@ -195,21 +279,40 @@ } static int -group_mp_lookup_func(char **buffer, size_t *buffer_size, void *mdata) +group_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) { - struct group *result; + struct group_state *st; + struct group grp, *retval; + int result, error; TRACE_IN(group_mp_lookup_func); - result = getgrent(); - if (result != NULL) { - group_marshal_func(result, NULL, buffer_size); - *buffer = (char *)malloc(*buffer_size); - assert(*buffer != NULL); - group_marshal_func(result, *buffer, buffer_size); + + result = group_getstate(&st); + AGENT_BUFFER_TLS_HANDLING_INIT(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) + return (NS_UNAVAIL); + + do { + result = nsdispatch(&retval, emptydtab, NSDB_GROUP, + "getgrent_r", defaultsrc, &grp, st->buffer, + st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) + return (NS_UNAVAIL); + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) { + result = agent_marshal_results(out_buffer, + out_size, group_marshal_func, + (void *)nss_lt_all, retval, &grp, + st->buffer, st->bufsize, &error); } TRACE_OUT(group_mp_lookup_func); - return (result == NULL ? NS_NOTFOUND : NS_SUCCESS); + return (result); } static void ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.h#2 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.c#2 (text) ==== @@ -30,29 +30,65 @@ #include #include +#include +#include #include +#include +#include #include #include #include #include "../debug.h" #include "passwd.h" -static int passwd_marshal_func(struct passwd *, char *, size_t *); +static const ns_src defaultsrc[] = { + { NSSRC_COMPAT, NS_SUCCESS }, + { NULL, 0 } +}; + + +static int passwd_marshal_func(char *, size_t *, void *, va_list, void *); static int passwd_lookup_func(const char *, size_t, char **, size_t *); static void *passwd_mp_init_func(); -static int passwd_mp_lookup_func(char **, size_t *, void *); +static int passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); static void passwd_mp_destroy_func(void *mdata); +AGENT_DECLARE_BUFFER_TLS_HANDLING(passwd); + static int -passwd_marshal_func(struct passwd *pwd, char *buffer, size_t *buffer_size) +passwd_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, + void *cache_mdata) { - char *p; - struct passwd new_pwd; - size_t desired_size, size; + char *name; + uid_t uid; + struct passwd *pwd; + char *orig_buf; + size_t orig_buf_size; + + struct passwd new_pwd; + size_t desired_size, size; + char *p; + + switch ((enum nss_lookup_type)cache_mdata) { + case nss_lt_name: + name = va_arg(ap, char *); + break; + case nss_lt_id: + uid = va_arg(ap, uid_t); + break; + case nss_lt_all: + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + + pwd = va_arg(ap, struct passwd *); + orig_buf = va_arg(ap, char *); + orig_buf_size = va_arg(ap, size_t); - TRACE_IN(passwd_marshal_func); desired_size = sizeof(struct passwd) + sizeof(char *) + - strlen(pwd->pw_name) + 1; + strlen(pwd->pw_name) + 1; if (pwd->pw_passwd != NULL) desired_size += strlen(pwd->pw_passwd) + 1; if (pwd->pw_class != NULL) @@ -64,9 +100,9 @@ if (pwd->pw_shell != NULL) desired_size += strlen(pwd->pw_shell) + 1; - if ((*buffer_size < desired_size) || (buffer == NULL)) { + if (*buffer_size < desired_size) { + /* this assignment is here for future use */ *buffer_size = desired_size; - TRACE_OUT(passwd_marshal_func); return (NS_RETURN); } @@ -120,34 +156,35 @@ } memcpy(buffer, &new_pwd, sizeof(struct passwd)); - TRACE_OUT(passwd_marshal_func); return (NS_SUCCESS); } static int -passwd_lookup_func(const char *key, size_t key_size, char **buffer, - size_t *buffer_size) +passwd_lookup_func(const char *key, size_t key_size, char **out_buffer, + size_t *out_size) { + struct passwd_state *st; + struct passwd pwd, *retval; enum nss_lookup_type lookup_type; - char *login; + char *login; + uid_t uid; + int error, result; size_t size; - uid_t uid; - struct passwd *result; - TRACE_IN(passwd_lookup_func); - assert(buffer != NULL); - assert(buffer_size != NULL); + assert(out_buffer != NULL); + assert(out_size != NULL); - if (key_size < sizeof(enum nss_lookup_type)) { + if (key_size < sizeof(enum nss_lookup_type) + 1) { TRACE_OUT(passwd_lookup_func); return (NS_UNAVAIL); } memcpy(&lookup_type, key, sizeof(enum nss_lookup_type)); + login = NULL; switch (lookup_type) { case nss_lt_name: - size = key_size - sizeof(enum nss_lookup_type) + 1; + size = key_size - sizeof(enum nss_lookup_type) + 1; login = (char *)malloc(size); assert(login != NULL); memset(login, 0, size); @@ -167,28 +204,67 @@ return (NS_UNAVAIL); } + result = passwd_getstate(&st); + AGENT_BUFFER_TLS_HANDLING_INIT(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + free(login); + TRACE_OUT(passwd_lookup_func); + return (NS_UNAVAIL); + } + switch (lookup_type) { case nss_lt_name: - result = getpwnam(login); - free(login); + do { + result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, + "getpwnam_r", defaultsrc, login, + &pwd, st->buffer, st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + free(login); + TRACE_OUT(passwd_lookup_func); + return (NS_UNAVAIL); + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + passwd_marshal_func, (void *)nss_lt_name, + retval, login, &pwd, + st->buffer, st->bufsize, &error); + break; case nss_lt_id: - result = getpwuid(uid); + do { + result = nsdispatch(&retval, emptydtab, NSDB_SERVICES, + "getpwuid_r", defaultsrc, uid, + &pwd, st->buffer, st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + TRACE_OUT(passwd_lookup_func); + return (NS_UNAVAIL); + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + passwd_marshal_func, + (void *)nss_lt_id, retval, uid, + &pwd, st->buffer, st->bufsize, &error); break; default: /* SHOULD NOT BE REACHED */ break; - } + } - if (result != NULL) { - passwd_marshal_func(result, NULL, buffer_size); - *buffer = (char *)malloc(*buffer_size); - assert(*buffer != NULL); - passwd_marshal_func(result, *buffer, buffer_size); - } - + free(login); TRACE_OUT(passwd_lookup_func); - return (result == NULL ? NS_NOTFOUND : NS_SUCCESS); + return (result); } static void * @@ -202,21 +278,40 @@ } static int -passwd_mp_lookup_func(char **buffer, size_t *buffer_size, void *mdata) +passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) { - struct passwd *result; + struct passwd_state *st; + struct passwd pwd, *retval; + int result, error; TRACE_IN(passwd_mp_lookup_func); - result = getpwent(); - if (result != NULL) { - passwd_marshal_func(result, NULL, buffer_size); - *buffer = (char *)malloc(*buffer_size); - assert(*buffer != NULL); - passwd_marshal_func(result, *buffer, buffer_size); + + result = passwd_getstate(&st); + AGENT_BUFFER_TLS_HANDLING_INIT(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) + return (NS_UNAVAIL); + + do { + result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, + "getpwent_r", defaultsrc, &pwd, st->buffer, + st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) + return (NS_UNAVAIL); + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) { + result = agent_marshal_results(out_buffer, + out_size, passwd_marshal_func, + (void *)nss_lt_all, retval, &pwd, + st->buffer, st->bufsize, &error); } TRACE_OUT(passwd_mp_lookup_func); - return (result == NULL ? NS_NOTFOUND : NS_SUCCESS); + return (result); } static void ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.h#2 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.c#2 (text) ==== @@ -31,31 +31,70 @@ #include #include #include +#include #include #include +#include +#include #include #include +#include #include "../debug.h" #include "services.h" -static int services_marshal_func(struct servent *, char *, size_t *); +static const ns_src defaultsrc[] = { + { NSSRC_COMPAT, NS_SUCCESS }, + { NULL, 0 } +}; + + +static int services_marshal_func(char *, size_t *, void *, va_list, void *); static int services_lookup_func(const char *, size_t, char **, size_t *); static void *services_mp_init_func(); -static int services_mp_lookup_func(char **, size_t *, void *); -static void services_mp_destroy_func(void *); +static int services_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); +static void services_mp_destroy_func(void *mdata); + +AGENT_DECLARE_BUFFER_TLS_HANDLING(servent); static int -services_marshal_func(struct servent *serv, char *buffer, size_t *buffer_size) +services_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, + void *cache_mdata) { - struct servent new_serv; - size_t desired_size; - char **alias; - char *p; - size_t size; - size_t aliases_size; + char *name; + char *proto; + int port; + struct servent *serv; + char *orig_buf; + size_t orig_buf_size; + + struct servent new_serv; + size_t desired_size; + char **alias; + char *p; + size_t size; + size_t aliases_size; + + switch ((enum nss_lookup_type)cache_mdata) { + case nss_lt_name: + name = va_arg(ap, char *); + proto = va_arg(ap, char *); + break; + case nss_lt_id: + port = va_arg(ap, int); + proto = va_arg(ap, char *); + break; + case nss_lt_all: + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + + serv = va_arg(ap, struct servent *); + orig_buf = va_arg(ap, char *); + orig_buf_size = va_arg(ap, size_t); - TRACE_IN(services_marshal_func); - desired_size = ALIGNBYTES + sizeof(struct servent) + sizeof(char *); + desired_size = _ALIGNBYTES + sizeof(struct servent) + sizeof(char *); if (serv->s_name != NULL) desired_size += strlen(serv->s_name) + 1; if (serv->s_proto != NULL) @@ -68,13 +107,13 @@ ++aliases_size; } - desired_size += ALIGNBYTES + sizeof(char *) * - (aliases_size + 1); + desired_size += _ALIGNBYTES + + sizeof(char *) * (aliases_size + 1); } - if ((*buffer_size < desired_size) || (buffer == NULL)) { + if (*buffer_size < desired_size) { + /* this assignment is here for future use */ *buffer_size = desired_size; - TRACE_OUT(services_marshal_func); return (NS_RETURN); } @@ -84,7 +123,7 @@ *buffer_size = desired_size; p = buffer + sizeof(struct servent) + sizeof(char *); memcpy(buffer + sizeof(struct servent), &p, sizeof(char *)); - p = (char *)ALIGN(p); + p = (char *)_ALIGN(p); if (new_serv.s_name != NULL) { size = strlen(new_serv.s_name); @@ -101,7 +140,7 @@ } if (new_serv.s_aliases != NULL) { - p = (char *)ALIGN(p); + p = (char *)_ALIGN(p); memcpy(p, new_serv.s_aliases, sizeof(char *) * aliases_size); new_serv.s_aliases = (char **)p; p += sizeof(char *) * (aliases_size + 1); @@ -115,26 +154,24 @@ } memcpy(buffer, &new_serv, sizeof(struct servent)); - TRACE_OUT(services_marshal_func); return (NS_SUCCESS); } static int -services_lookup_func(const char *key, size_t key_size, char **buffer, - size_t *buffer_size) +services_lookup_func(const char *key, size_t key_size, char **out_buffer, + size_t *out_size) { + struct servent_state *st; + struct servent serv, *retval; + char *name; + char *proto; + size_t size, size2; enum nss_lookup_type lookup_type; - char *name = NULL; - char *proto = NULL; - size_t size, size2; - int port; + int port, error, result; - struct servent *result; - TRACE_IN(services_lookup_func); - - assert(buffer != NULL); - assert(buffer_size != NULL); + assert(out_buffer != NULL); + assert(out_size != NULL); if (key_size < sizeof(enum nss_lookup_type)) { TRACE_OUT(passwd_lookup_func); @@ -142,8 +179,9 @@ } memcpy(&lookup_type, key, sizeof(enum nss_lookup_type)); + name = NULL; + proto = NULL; switch (lookup_type) { - case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jun 21 16:33:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3AE3416A482; Wed, 21 Jun 2006 16:33:40 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 19BB416A47F for ; Wed, 21 Jun 2006 16:33:40 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 714F343D53 for ; Wed, 21 Jun 2006 16:33:39 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LGXdii003260 for ; Wed, 21 Jun 2006 16:33:39 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LGXduB003256 for perforce@freebsd.org; Wed, 21 Jun 2006 16:33:39 GMT (envelope-from bushman@freebsd.org) Date: Wed, 21 Jun 2006 16:33:39 GMT Message-Id: <200606211633.k5LGXduB003256@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99765 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 16:33:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=99765 Change 99765 by bushman@bushman_nss_ldap_cached on 2006/06/21 16:33:26 Ypserv used private libc symbol. Now it uses this symbol from the static libnss_dns library. Copy-paste was not used here because of the huge amount of code and extensive usage of internal libc/nss_dns functions. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/ypserv/Makefile#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/ypserv/Makefile#2 (text+ko) ==== @@ -11,7 +11,9 @@ CFLAGS+= -DDB_CACHE -DTCP_WRAPPER -I. DPADD= ${LIBWRAP} -LDADD= -lwrap +# dirty hack: nss_dns is needed in order to use __dns_getanswer +LDFLAGS+=-L${.OBJDIR}/../../lib/nss_dns +LDADD= -lwrap -lnss_dns CLEANFILES= yp_svc.c ypxfr_clnt.c yp.h From owner-p4-projects@FreeBSD.ORG Wed Jun 21 18:29:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B281E16A47E; Wed, 21 Jun 2006 18:29:07 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8E49316A474 for ; Wed, 21 Jun 2006 18:29:07 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 49A3D43D45 for ; Wed, 21 Jun 2006 18:29:07 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LIT7Dk020743 for ; Wed, 21 Jun 2006 18:29:07 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LIT6UF020740 for perforce@freebsd.org; Wed, 21 Jun 2006 18:29:06 GMT (envelope-from jhb@freebsd.org) Date: Wed, 21 Jun 2006 18:29:06 GMT Message-Id: <200606211829.k5LIT6UF020740@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99769 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 18:29:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=99769 Change 99769 by jhb@jhb_mutex on 2006/06/21 18:28:32 IFC @99768. Affected files ... .. //depot/projects/smpng/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#6 integrate .. //depot/projects/smpng/sys/arm/sa11x0/uart_cpu_sa1110.c#4 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi.c#8 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi_disk.c#4 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/smpng/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#74 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#60 integrate .. //depot/projects/smpng/sys/net/if.c#83 integrate .. //depot/projects/smpng/sys/net/if_vlan.c#48 integrate .. //depot/projects/smpng/sys/vm/vm_mmap.c#59 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/linux32/linux32_dummy.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#6 (text) ==== @@ -47,7 +47,7 @@ #include "opt_ddb.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.7 2006/06/20 20:13:40 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.8 2006/06/20 23:40:04 imp Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -182,10 +182,9 @@ extern vm_offset_t ksym_start, ksym_end; #endif -static int +static long board_init(void) { - uint32_t memsize; uint32_t *SDRAMC = (uint32_t *)(AT91RM92_BASE + AT91RM92_SDRAMC_BASE); uint32_t cr, mr; int banks, rows, cols, bw; /* log2 size */ @@ -196,8 +195,7 @@ banks = (cr & AT91RM92_SDRAMC_CR_NB_4) ? 2 : 1; rows = ((cr & AT91RM92_SDRAMC_CR_NR_MASK) >> 2) + 11; cols = (cr & AT91RM92_SDRAMC_CR_NC_MASK) + 8; - memsize = 1 << (cols + rows + banks + bw); - return (memsize); + return (1 << (cols + rows + banks + bw)); } void * @@ -360,6 +358,8 @@ cpu_domains(DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)); cninit(); memsize = board_init(); + physmem = memsize / PAGE_SIZE; + /* * Pages were allocated during the secondary bootstrap for the * stacks for different CPU modes. @@ -428,7 +428,7 @@ phys_avail[3] = 0; /* Do basic tuning, hz etc */ init_param1(); - init_param2(memsize / PAGE_SIZE); + init_param2(physmem); avail_end = KERNPHYSADDR + memsize - 1; kdb_init(); return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP - ==== //depot/projects/smpng/sys/arm/sa11x0/uart_cpu_sa1110.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/sa11x0/uart_cpu_sa1110.c,v 1.5 2006/06/07 11:28:17 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/sa11x0/uart_cpu_sa1110.c,v 1.6 2006/06/21 10:56:59 cognet Exp $"); #include #include @@ -44,6 +44,8 @@ extern struct uart_ops uart_sa1110_ops; +vm_offset_t sa1110_uart_vaddr; + int uart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2) { ==== //depot/projects/smpng/sys/dev/mfi/mfi.c#8 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.9 2006/06/20 21:06:05 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.12 2006/06/20 23:08:35 ps Exp $"); #include "opt_mfi.h" @@ -56,6 +56,7 @@ static void mfi_release_command(struct mfi_command *cm); static int mfi_comms_init(struct mfi_softc *); static int mfi_polled_command(struct mfi_softc *, struct mfi_command *); +static int mfi_wait_command(struct mfi_softc *, struct mfi_command *); static int mfi_get_controller_info(struct mfi_softc *); static int mfi_get_log_state(struct mfi_softc *, struct mfi_evt_log_state **); @@ -68,16 +69,12 @@ static void mfi_startup(void *arg); static void mfi_intr(void *arg); static void mfi_enable_intr(struct mfi_softc *sc); -static void mfi_ldprobe_inq(struct mfi_softc *sc); -static void mfi_ldprobe_inq_complete(struct mfi_command *); -static int mfi_ldprobe_capacity(struct mfi_softc *sc, int id); -static void mfi_ldprobe_capacity_complete(struct mfi_command *); -static int mfi_ldprobe_tur(struct mfi_softc *sc, int id); -static void mfi_ldprobe_tur_complete(struct mfi_command *); +static void mfi_ldprobe(struct mfi_softc *sc); static int mfi_aen_register(struct mfi_softc *sc, int seq, int locale); static void mfi_aen_complete(struct mfi_command *); static int mfi_aen_setup(struct mfi_softc *, uint32_t); -static int mfi_add_ld(struct mfi_softc *sc, int id, uint64_t, uint32_t); +static int mfi_add_ld(struct mfi_softc *sc, int); +static void mfi_add_ld_complete(struct mfi_command *); static struct mfi_command * mfi_bio_command(struct mfi_softc *); static void mfi_bio_complete(struct mfi_command *); static int mfi_mapcmd(struct mfi_softc *, struct mfi_command *); @@ -580,7 +577,7 @@ static int mfi_get_log_state(struct mfi_softc *sc, struct mfi_evt_log_state **log_state) { - struct mfi_command *cm; + struct mfi_command *cm = NULL; int error; mtx_lock(&sc->mfi_io_lock); @@ -588,7 +585,7 @@ (void **)log_state, sizeof(**log_state)); if (error) goto out; - cm->cm_len = sizeof(struct mfi_evt_log_state); + cm->cm_flags = MFI_CMD_DATAIN | MFI_CMD_POLLED; if ((error = mfi_mapcmd(sc, cm)) != 0) { device_printf(sc->mfi_dev, "Log state buffer map failed\n"); @@ -605,7 +602,8 @@ bus_dmamap_unload(sc->mfi_buffer_dmat, cm->cm_dmamap); out: - mfi_release_command(cm); + if (cm) + mfi_release_command(cm); mtx_unlock(&sc->mfi_io_lock); return (error); @@ -679,6 +677,18 @@ return (0); } +static int +mfi_wait_command(struct mfi_softc *sc, struct mfi_command *cm) +{ + + mtx_assert(&sc->mfi_io_lock, MA_OWNED); + cm->cm_complete = NULL; + + mfi_enqueue_ready(cm); + mfi_startio(sc); + return (msleep(cm, &sc->mfi_io_lock, PRIBIO, "mfiwait", 0)); +} + void mfi_free(struct mfi_softc *sc) { @@ -747,7 +757,7 @@ config_intrhook_disestablish(&sc->mfi_ich); mfi_enable_intr(sc); - mfi_ldprobe_inq(sc); + mfi_ldprobe(sc); } static void @@ -813,6 +823,7 @@ device_printf(sc->mfi_dev, "Failed to shutdown controller\n"); } + mfi_release_command(cm); return (error); } @@ -824,136 +835,41 @@ } static void -mfi_ldprobe_inq(struct mfi_softc *sc) +mfi_ldprobe(struct mfi_softc *sc) { - struct mfi_command *cm; - struct mfi_pass_frame *pass; - char *inq; - int i; + struct mfi_frame_header *hdr; + struct mfi_command *cm = NULL; + struct mfi_ld_list *list = NULL; + int error, i; - /* Probe all possible targets with a SCSI INQ command */ mtx_lock(&sc->mfi_io_lock); - sc->mfi_probe_count = 0; - for (i = 0; i < MFI_MAX_CHANNEL_DEVS; i++) { - inq = malloc(MFI_INQ_LENGTH, M_MFIBUF, M_NOWAIT|M_ZERO); - if (inq == NULL) - break; - cm = mfi_dequeue_free(sc); - if (cm == NULL) { - free(inq, M_MFIBUF); - msleep(mfi_startup, &sc->mfi_io_lock, 0, "mfistart", - 5 * hz); - i--; - continue; - } - pass = &cm->cm_frame->pass; - pass->header.cmd = MFI_CMD_LD_SCSI_IO; - pass->header.target_id = i; - pass->header.lun_id = 0; - pass->header.cdb_len = 6; - pass->header.timeout = 0; - pass->header.data_len = MFI_INQ_LENGTH; - bzero(pass->cdb, 16); - pass->cdb[0] = INQUIRY; - pass->cdb[4] = MFI_INQ_LENGTH; - pass->header.sense_len = MFI_SENSE_LEN; - pass->sense_addr_lo = cm->cm_sense_busaddr; - pass->sense_addr_hi = 0; - cm->cm_complete = mfi_ldprobe_inq_complete; - cm->cm_private = inq; - cm->cm_sg = &pass->sgl; - cm->cm_total_frame_size = MFI_PASS_FRAME_SIZE; - cm->cm_flags |= MFI_CMD_DATAIN; - cm->cm_data = inq; - cm->cm_len = MFI_INQ_LENGTH; - sc->mfi_probe_count++; - mfi_enqueue_ready(cm); - mfi_startio(sc); + error = mfi_dcmd_command(sc, &cm, MFI_DCMD_LD_GET_LIST, + (void **)&list, sizeof(*list)); + if (error) + goto out; + + cm->cm_flags = MFI_CMD_DATAIN; + if (mfi_wait_command(sc, cm) != 0) { + device_printf(sc->mfi_dev, "Failed to get device listing\n"); + goto out; } - /* Sleep while the arrays are attaching */ - msleep(mfi_startup, &sc->mfi_io_lock, 0, "mfistart", 60 * hz); - mtx_unlock(&sc->mfi_io_lock); - - return; -} - -static void -mfi_ldprobe_inq_complete(struct mfi_command *cm) -{ - struct mfi_frame_header *hdr; - struct mfi_softc *sc; - struct scsi_inquiry_data *inq; - - sc = cm->cm_sc; - inq = cm->cm_private; hdr = &cm->cm_frame->header; - - if ((hdr->cmd_status != MFI_STAT_OK) || (hdr->scsi_status != 0x00) || - (SID_TYPE(inq) != T_DIRECT)) { - free(inq, M_MFIBUF); - mfi_release_command(cm); - if (--sc->mfi_probe_count <= 0) - wakeup(mfi_startup); - return; + if (hdr->cmd_status != MFI_STAT_OK) { + device_printf(sc->mfi_dev, "MFI_DCMD_LD_GET_LIST failed %x\n", + hdr->cmd_status); + goto out; } - free(inq, M_MFIBUF); - mfi_release_command(cm); - mfi_ldprobe_tur(sc, hdr->target_id); -} - -static int -mfi_ldprobe_tur(struct mfi_softc *sc, int id) -{ - struct mfi_command *cm; - struct mfi_pass_frame *pass; - - cm = mfi_dequeue_free(sc); - if (cm == NULL) - return (EBUSY); - pass = &cm->cm_frame->pass; - pass->header.cmd = MFI_CMD_LD_SCSI_IO; - pass->header.target_id = id; - pass->header.lun_id = 0; - pass->header.cdb_len = 6; - pass->header.timeout = 0; - pass->header.data_len = 0; - bzero(pass->cdb, 16); - pass->cdb[0] = TEST_UNIT_READY; - pass->header.sense_len = MFI_SENSE_LEN; - pass->sense_addr_lo = cm->cm_sense_busaddr; - pass->sense_addr_hi = 0; - cm->cm_complete = mfi_ldprobe_tur_complete; - cm->cm_total_frame_size = MFI_PASS_FRAME_SIZE; - cm->cm_flags = 0; - mfi_enqueue_ready(cm); - mfi_startio(sc); - - return (0); -} - -static void -mfi_ldprobe_tur_complete(struct mfi_command *cm) -{ - struct mfi_frame_header *hdr; - struct mfi_softc *sc; - - sc = cm->cm_sc; - hdr = &cm->cm_frame->header; - - if ((hdr->cmd_status != MFI_STAT_OK) || (hdr->scsi_status != 0x00)) { - device_printf(sc->mfi_dev, "Logical disk %d is not ready, " - "cmd_status= %d scsi_status= %d\n", hdr->target_id, - hdr->cmd_status, hdr->scsi_status); - mfi_print_sense(sc, cm->cm_sense); + for (i = 0; i < list->ld_count; i++) + mfi_add_ld(sc, list->ld_list[i].ld.target_id); +out: + if (list) + free(list, M_MFIBUF); + if (cm) mfi_release_command(cm); - if (--sc->mfi_probe_count <= 0) - wakeup(mfi_startup); - return; - } - mfi_release_command(cm); - mfi_ldprobe_capacity(sc, hdr->target_id); + mtx_unlock(&sc->mfi_io_lock); + return; } #ifdef NOTYET @@ -1361,40 +1277,29 @@ #endif static int -mfi_ldprobe_capacity(struct mfi_softc *sc, int id) +mfi_add_ld(struct mfi_softc *sc, int id) { struct mfi_command *cm; - struct mfi_pass_frame *pass; - struct scsi_read_capacity_data_long *cap; + struct mfi_dcmd_frame *dcmd = NULL; + struct mfi_ld_info *ld_info = NULL; + int error; + + mtx_assert(&sc->mfi_io_lock, MA_OWNED); - cap = malloc(sizeof(*cap), M_MFIBUF, M_NOWAIT|M_ZERO); - if (cap == NULL) - return (ENOMEM); - cm = mfi_dequeue_free(sc); - if (cm == NULL) { - free(cap, M_MFIBUF); - return (EBUSY); + error = mfi_dcmd_command(sc, &cm, MFI_DCMD_LD_GET_INFO, + (void **)&ld_info, sizeof(*ld_info)); + if (error) { + device_printf(sc->mfi_dev, + "Failed to allocate for MFI_DCMD_LD_GET_INFO %d\n", error); + if (ld_info) + free(ld_info, M_MFIBUF); + return (error); } - pass = &cm->cm_frame->pass; - pass->header.cmd = MFI_CMD_LD_SCSI_IO; - pass->header.target_id = id; - pass->header.lun_id = 0; - pass->header.cdb_len = 6; - pass->header.timeout = 0; - pass->header.data_len = sizeof(*cap); - bzero(pass->cdb, 16); - pass->cdb[0] = 0x9e; /* READ CAPACITY 16 */ - pass->cdb[13] = sizeof(*cap); - pass->header.sense_len = MFI_SENSE_LEN; - pass->sense_addr_lo = cm->cm_sense_busaddr; - pass->sense_addr_hi = 0; - cm->cm_complete = mfi_ldprobe_capacity_complete; - cm->cm_private = cap; - cm->cm_sg = &pass->sgl; - cm->cm_total_frame_size = MFI_PASS_FRAME_SIZE; - cm->cm_flags |= MFI_CMD_DATAIN; - cm->cm_data = cap; - cm->cm_len = sizeof(*cap); + cm->cm_flags = MFI_CMD_DATAIN; + cm->cm_complete = mfi_add_ld_complete; + dcmd = &cm->cm_frame->dcmd; + dcmd->mbox[0] = id; + mfi_enqueue_ready(cm); mfi_startio(sc); @@ -1402,70 +1307,42 @@ } static void -mfi_ldprobe_capacity_complete(struct mfi_command *cm) +mfi_add_ld_complete(struct mfi_command *cm) { struct mfi_frame_header *hdr; + struct mfi_ld_info *ld_info; struct mfi_softc *sc; - struct scsi_read_capacity_data_long *cap; - uint64_t sectors; - uint32_t secsize; - int target; + struct mfi_ld *ld; + device_t child; sc = cm->cm_sc; - cap = cm->cm_private; hdr = &cm->cm_frame->header; + ld_info = cm->cm_private; - if ((hdr->cmd_status != MFI_STAT_OK) || (hdr->scsi_status != 0x00)) { - device_printf(sc->mfi_dev, "Failed to read capacity for " - "logical disk\n"); - device_printf(sc->mfi_dev, "cmd_status= %d scsi_status= %d\n", - hdr->cmd_status, hdr->scsi_status); - free(cap, M_MFIBUF); + if (hdr->cmd_status != MFI_STAT_OK) { + free(ld_info, M_MFIBUF); mfi_release_command(cm); - if (--sc->mfi_probe_count <= 0) - wakeup(mfi_startup); return; } - target = hdr->target_id; - sectors = scsi_8btou64(cap->addr); - secsize = scsi_4btoul(cap->length); - free(cap, M_MFIBUF); mfi_release_command(cm); - mfi_add_ld(sc, target, sectors, secsize); - if (--sc->mfi_probe_count <= 0) - wakeup(mfi_startup); - - return; -} - -static int -mfi_add_ld(struct mfi_softc *sc, int id, uint64_t sectors, uint32_t secsize) -{ - struct mfi_ld *ld; - device_t child; - - if ((secsize == 0) || (sectors == 0)) { - device_printf(sc->mfi_dev, "Invalid capacity parameters for " - "logical disk %d\n", id); - return (EINVAL); - } ld = malloc(sizeof(struct mfi_ld), M_MFIBUF, M_NOWAIT|M_ZERO); if (ld == NULL) { device_printf(sc->mfi_dev, "Cannot allocate ld\n"); - return (ENOMEM); + free(ld_info, M_MFIBUF); + return; } if ((child = device_add_child(sc->mfi_dev, "mfid", -1)) == NULL) { device_printf(sc->mfi_dev, "Failed to add logical disk\n"); free(ld, M_MFIBUF); - return (EINVAL); + free(ld_info, M_MFIBUF); + return; } - ld->ld_id = id; + ld->ld_id = ld_info->ld_config.properties.ld.target_id; ld->ld_disk = child; - ld->ld_secsize = secsize; - ld->ld_sectors = sectors; + ld->ld_info = ld_info; device_set_ivars(child, ld); device_set_desc(child, "MFI Logical Disk"); @@ -1474,8 +1351,6 @@ bus_generic_attach(sc->mfi_dev); mtx_unlock(&Giant); mtx_lock(&sc->mfi_io_lock); - - return (0); } static struct mfi_command * @@ -1705,6 +1580,8 @@ if (cm->cm_complete != NULL) cm->cm_complete(cm); + else + wakeup(cm); sc->mfi_flags &= ~MFI_FLAGS_QFRZN; mfi_startio(sc); ==== //depot/projects/smpng/sys/dev/mfi/mfi_disk.c#4 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_disk.c,v 1.3 2006/05/18 23:30:47 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_disk.c,v 1.4 2006/06/20 22:41:44 ps Exp $"); #include "opt_mfi.h" @@ -113,14 +113,8 @@ sc->ld_ld = device_get_ivars(dev); sc->ld_controller = device_get_softc(device_get_parent(dev)); - sectors = sc->ld_ld->ld_sectors; - secsize = sc->ld_ld->ld_secsize; - if (secsize != MFI_SECTOR_LEN) { - device_printf(sc->ld_dev, "Reported sector length %d is not " - "512, aborting\n", secsize); - free(sc->ld_ld, M_MFIBUF); - return (EINVAL); - } + sectors = ld->ld_info->size; + secsize = MFI_SECTOR_LEN; TAILQ_INSERT_TAIL(&sc->ld_controller->mfi_ld_tqh, ld, ld_link); device_printf(dev, "%juMB (%ju sectors) RAID\n", @@ -235,7 +229,7 @@ if (len > 0) { if ((error = mfi_dump_blocks(parent_sc, sc->ld_id, offset / - sc->ld_ld->ld_secsize, virt, len)) != 0) + MFI_SECTOR_LEN, virt, len)) != 0) return (error); } else { /* mfi_sync_cache(parent_sc, sc->ld_id); */ ==== //depot/projects/smpng/sys/dev/mfi/mfi_pci.c#3 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_pci.c,v 1.2 2006/05/18 23:30:47 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi_pci.c,v 1.3 2006/06/20 22:41:44 ps Exp $"); /* PCI/PCI-X/PCIe bus interface for the LSI MegaSAS controllers */ @@ -207,6 +207,7 @@ if (error) return (error); TAILQ_REMOVE(&sc->mfi_ld_tqh, ld, ld_link); + free(ld->ld_info, M_MFIBUF); free(ld, M_MFIBUF); } ==== //depot/projects/smpng/sys/dev/mfi/mfireg.h#3 (text) ==== @@ -28,7 +28,7 @@ #define _MFIREG_H #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfireg.h,v 1.2 2006/05/18 23:30:47 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfireg.h,v 1.3 2006/06/20 22:41:44 ps Exp $"); /* * MegaRAID SAS MFI firmware definitions @@ -106,7 +106,10 @@ MFI_DCMD_CTRL_EVENT_GETINFO = 0x01040100, MFI_DCMD_CTRL_EVENT_GET = 0x01040300, MFI_DCMD_CTRL_EVENT_WAIT = 0x01040500, + MFI_DCMD_LD_GET_LIST = 0x03010000, + MFI_DCMD_LD_GET_INFO = 0x03020000, MFI_DCMD_LD_GET_PROP = 0x03030000, + MFI_DCMD_LD_SET_PROP = 0x03040000, MFI_DCMD_CLUSTER = 0x08000000, MFI_DCMD_CLUSTER_RESET_ALL = 0x08010100, MFI_DCMD_CLUSTER_RESET_LD = 0x08010200 @@ -727,4 +730,97 @@ char description[128]; } __packed; +struct mfi_ldref { + uint8_t target_id; + uint8_t reserved; + uint16_t seq; +} __packed; + +struct mfi_ld_list { + uint32_t ld_count; + uint32_t reserved1; + struct { + struct mfi_ldref ld; + uint8_t state; + uint8_t reserved2[3]; + uint64_t size; + } ld_list[MFI_MAX_LD]; +} __packed; + +enum mfi_ld_access { + MFI_LD_ACCESS_RW = 0, + MFI_LD_ACCSSS_RO = 2, + MFI_LD_ACCESS_BLOCKED = 3, +}; +#define MFI_LD_ACCESS_MASK 3 + +enum mfi_ld_state { + MFI_LD_STATE_OFFLINE = 0, + MFI_LD_STATE_PARTIALLY_DEGRADED = 1, + MFI_LD_STATE_DEGRADED = 2, + MFI_LD_STATE_OPTIMAL = 3 +}; + +struct mfi_ld_props { + struct mfi_ldref ld; + char name[16]; + uint8_t default_cache_policy; + uint8_t access_policy; + uint8_t disk_cache_policy; + uint8_t current_cache_policy; + uint8_t no_bgi; + uint8_t reserved[7]; +} __packed; + +struct mfi_ld_params { + uint8_t primary_raid_level; + uint8_t raid_level_qualifier; + uint8_t secondary_raid_level; + uint8_t stripe_size; + uint8_t num_drives; + uint8_t span_depth; + uint8_t state; + uint8_t init_state; + uint8_t is_consistent; + uint8_t reserved[23]; +} __packed; + +struct mfi_ld_progress { + uint32_t active; +#define MFI_LD_PROGRESS_CC (1<<0) +#define MFI_LD_PROGRESS_BGI (1<<1) +#define MFI_LD_PROGRESS_FGI (1<<2) +#define MFI_LD_PORGRESS_RECON (1<<3) + struct mfi_progress cc; + struct mfi_progress bgi; + struct mfi_progress fgi; + struct mfi_progress recon; + struct mfi_progress reserved[4]; +} __packed; + +struct mfi_span { + uint64_t start_block; + uint64_t num_blocks; + uint16_t array_ref; + uint8_t reserved[6]; +} __packed; + +#define MFI_MAX_SPAN_DEPTH 8 +struct mfi_ld_config { + struct mfi_ld_props properties; + struct mfi_ld_params params; + struct mfi_span span[MFI_MAX_SPAN_DEPTH]; +} __packed; + +struct mfi_ld_info { + struct mfi_ld_config ld_config; + uint64_t size; + struct mfi_ld_progress progress; + uint16_t cluster_owner; + uint8_t reconstruct_active; + uint8_t reserved1[1]; + uint8_t vpd_page83[64]; + uint8_t reserved2[16]; +} __packed; + #endif /* _MFIREG_H */ ==== //depot/projects/smpng/sys/dev/mfi/mfivar.h#3 (text) ==== @@ -28,7 +28,7 @@ #define _MFIVAR_H #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfivar.h,v 1.2 2006/05/18 23:30:47 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfivar.h,v 1.3 2006/06/20 22:41:44 ps Exp $"); /* * SCSI structures and definitions are used from here, but no linking @@ -75,8 +75,7 @@ struct mfi_ld { TAILQ_ENTRY(mfi_ld) ld_link; device_t ld_disk; - uint64_t ld_sectors; - uint32_t ld_secsize; + struct mfi_ld_info *ld_info; int ld_id; }; @@ -133,7 +132,6 @@ struct intr_config_hook mfi_ich; eventhandler_tag eh; - int mfi_probe_count; /* * Allocation for the command array. Used as an indexable array to ==== //depot/projects/smpng/sys/kern/kern_linker.c#74 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.134 2006/06/20 21:31:38 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.136 2006/06/21 17:48:03 jhb Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" ==== //depot/projects/smpng/sys/kern/subr_bus.c#60 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.191 2006/04/20 01:44:16 jmg Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.193 2006/06/21 17:48:59 jhb Exp $"); #include "opt_bus.h" ==== //depot/projects/smpng/sys/net/if.c#83 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)if.c 8.5 (Berkeley) 1/9/95 - * $FreeBSD: src/sys/net/if.c,v 1.258 2006/06/19 22:20:44 mlaier Exp $ + * $FreeBSD: src/sys/net/if.c,v 1.259 2006/06/21 06:02:35 glebius Exp $ */ #include "opt_compat.h" @@ -432,9 +432,6 @@ TASK_INIT(&ifp->if_linktask, 0, do_link_state_change, ifp); IF_AFDATA_LOCK_INIT(ifp); ifp->if_afdata_initialized = 0; - IFNET_WLOCK(); - TAILQ_INSERT_TAIL(&ifnet, ifp, if_link); - IFNET_WUNLOCK(); /* * XXX - * The old code would work if the interface passed a pre-existing @@ -509,6 +506,10 @@ ifp->if_snd.altq_tbr = NULL; ifp->if_snd.altq_ifp = ifp; + IFNET_WLOCK(); + TAILQ_INSERT_TAIL(&ifnet, ifp, if_link); + IFNET_WUNLOCK(); + if (domain_init_status >= 2) if_attachdomain1(ifp); @@ -625,7 +626,18 @@ int i; struct domain *dp; struct ifnet *iter; - int found; + int found = 0; + + IFNET_WLOCK(); + TAILQ_FOREACH(iter, &ifnet, if_link) + if (iter == ifp) { + TAILQ_REMOVE(&ifnet, ifp, if_link); + found = 1; + break; + } + IFNET_WUNLOCK(); + if (!found) + return; /* * Remove/wait for pending events. @@ -707,16 +719,6 @@ KNOTE_UNLOCKED(&ifp->if_klist, NOTE_EXIT); knlist_clear(&ifp->if_klist, 0); knlist_destroy(&ifp->if_klist); - IFNET_WLOCK(); - found = 0; - TAILQ_FOREACH(iter, &ifnet, if_link) - if (iter == ifp) { - found = 1; - break; - } - if (found) - TAILQ_REMOVE(&ifnet, ifp, if_link); - IFNET_WUNLOCK(); mtx_destroy(&ifp->if_snd.ifq_mtx); IF_AFDATA_DESTROY(ifp); splx(s); ==== //depot/projects/smpng/sys/net/if_vlan.c#48 (text+ko) ==== @@ -26,7 +26,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/net/if_vlan.c,v 1.101 2006/03/09 14:42:51 ru Exp $ + * $FreeBSD: src/sys/net/if_vlan.c,v 1.103 2006/06/21 13:48:34 yar Exp $ */ /* @@ -81,7 +81,8 @@ struct ifnet *parent; /* parent interface of this trunk */ struct rwlock rw; #ifdef VLAN_ARRAY - struct ifvlan *vlans[EVL_VLID_MASK+1]; /* static table */ +#define VLAN_ARRAY_SIZE (EVL_VLID_MASK + 1) + struct ifvlan *vlans[VLAN_ARRAY_SIZE]; /* static table */ #else struct ifvlanhead *hash; /* dynamic hash-list table */ uint16_t hmask; @@ -135,6 +136,8 @@ static MALLOC_DEFINE(M_VLAN, VLANNAME, "802.1Q Virtual LAN Interface"); +static eventhandler_tag ifdetach_tag; + /* * We have a global mutex, that is used to serialize configuration * changes and isn't used in normal packet delivery. @@ -182,6 +185,7 @@ static int vlan_setflags(struct ifnet *ifp, int status); static int vlan_setmulti(struct ifnet *ifp); static int vlan_unconfig(struct ifnet *ifp); +static int vlan_unconfig_locked(struct ifnet *ifp); static int vlan_config(struct ifvlan *ifv, struct ifnet *p, uint16_t tag); static void vlan_link_state(struct ifnet *ifp, int link); static void vlan_capabilities(struct ifvlan *ifv); @@ -193,6 +197,8 @@ static int vlan_clone_create(struct if_clone *, char *, size_t); static int vlan_clone_destroy(struct if_clone *, struct ifnet *); +static void vlan_ifdetach(void *arg, struct ifnet *ifp); + static struct if_clone vlan_cloner = IFC_CLONE_INITIALIZER(VLANNAME, NULL, IF_MAXUNIT, NULL, vlan_clone_match, vlan_clone_create, vlan_clone_destroy); @@ -452,6 +458,54 @@ } /* + * A handler for network interface departure events. + * Track departure of trunks here so that we don't access invalid + * pointers or whatever if a trunk is ripped from under us, e.g., + * by ejecting its hot-plug card. + */ +static void +vlan_ifdetach(void *arg __unused, struct ifnet *ifp) +{ + struct ifvlan *ifv; + int i; + + /* + * Check if it's a trunk interface first of all + * to avoid needless locking. + */ + if (ifp->if_vlantrunk == NULL) + return; + + VLAN_LOCK(); + /* + * OK, it's a trunk. Loop over and detach all vlan's on it. + * Check trunk pointer after each vlan_unconfig() as it will + * free it and set to NULL after the last vlan was detached. + */ +#ifdef VLAN_ARRAY + for (i = 0; i < VLAN_ARRAY_SIZE; i++) + if ((ifv = ifp->if_vlantrunk->vlans[i])) { + vlan_unconfig_locked(ifv->ifv_ifp); + if (ifp->if_vlantrunk == NULL) + break; + } +#else /* VLAN_ARRAY */ +restart: + for (i = 0; i < (1 << ifp->if_vlantrunk->hwidth); i++) + if ((ifv = LIST_FIRST(&ifp->if_vlantrunk->hash[i]))) { + vlan_unconfig_locked(ifv->ifv_ifp); + if (ifp->if_vlantrunk) + goto restart; /* trunk->hwidth can change */ + else + break; + } +#endif /* VLAN_ARRAY */ + /* Trunk should have been destroyed in vlan_unconfig(). */ + KASSERT(ifp->if_vlantrunk == NULL, ("%s: purge failed", __func__)); + VLAN_UNLOCK(); +} + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jun 21 20:21:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A496F16A47D; Wed, 21 Jun 2006 20:21:42 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D17916A47A for ; Wed, 21 Jun 2006 20:21:42 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1774143D46 for ; Wed, 21 Jun 2006 20:21:42 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LKLfQ2028682 for ; Wed, 21 Jun 2006 20:21:41 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LKLfMG028679 for perforce@freebsd.org; Wed, 21 Jun 2006 20:21:41 GMT (envelope-from jhb@freebsd.org) Date: Wed, 21 Jun 2006 20:21:41 GMT Message-Id: <200606212021.k5LKLfMG028679@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99773 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 20:21:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=99773 Change 99773 by jhb@jhb_mutex on 2006/06/21 20:21:26 IFC @99772 - loopback. Affected files ... .. //depot/projects/smpng/sys/kern/kern_linker.c#75 integrate Differences ... ==== //depot/projects/smpng/sys/kern/kern_linker.c#75 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.136 2006/06/21 17:48:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.137 2006/06/21 20:15:36 jhb Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" From owner-p4-projects@FreeBSD.ORG Wed Jun 21 20:56:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AB49716A47F; Wed, 21 Jun 2006 20:56:10 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6EB5816A47C for ; Wed, 21 Jun 2006 20:56:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2755243D48 for ; Wed, 21 Jun 2006 20:56:10 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LKuA0v038572 for ; Wed, 21 Jun 2006 20:56:10 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LKu9Kf038569 for perforce@freebsd.org; Wed, 21 Jun 2006 20:56:09 GMT (envelope-from jhb@freebsd.org) Date: Wed, 21 Jun 2006 20:56:09 GMT Message-Id: <200606212056.k5LKu9Kf038569@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99776 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 20:56:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=99776 Change 99776 by jhb@jhb_mutex on 2006/06/21 20:55:33 IFC @99775 - loopback. Affected files ... .. //depot/projects/smpng/sys/kern/kern_linker.c#76 integrate .. //depot/projects/smpng/sys/kern/link_elf.c#39 integrate .. //depot/projects/smpng/sys/kern/link_elf_obj.c#14 integrate .. //depot/projects/smpng/sys/sys/sx.h#19 integrate Differences ... ==== //depot/projects/smpng/sys/kern/kern_linker.c#76 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.137 2006/06/21 20:15:36 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.138 2006/06/21 20:42:08 jhb Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" ==== //depot/projects/smpng/sys/kern/link_elf.c#39 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/link_elf.c,v 1.88 2006/06/20 21:31:38 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/link_elf.c,v 1.89 2006/06/21 20:42:08 jhb Exp $"); #include "opt_gdb.h" #include "opt_mac.h" ==== //depot/projects/smpng/sys/kern/link_elf_obj.c#14 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/link_elf_obj.c,v 1.91 2006/06/20 21:31:38 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/link_elf_obj.c,v 1.92 2006/06/21 20:42:08 jhb Exp $"); #include "opt_ddb.h" #include "opt_mac.h" ==== //depot/projects/smpng/sys/sys/sx.h#19 (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/sys/sx.h,v 1.23 2006/03/30 15:48:06 jhb Exp $ + * $FreeBSD: src/sys/sys/sx.h,v 1.24 2006/06/21 20:38:29 jhb Exp $ */ #ifndef _SYS_SX_H_ From owner-p4-projects@FreeBSD.ORG Wed Jun 21 20:57:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3125D16A47F; Wed, 21 Jun 2006 20:57:13 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EC0F516A47B for ; Wed, 21 Jun 2006 20:57:12 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EAB2443D5A for ; Wed, 21 Jun 2006 20:57:11 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LKvBMZ038695 for ; Wed, 21 Jun 2006 20:57:11 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LKvB8P038692 for perforce@freebsd.org; Wed, 21 Jun 2006 20:57:11 GMT (envelope-from jhb@freebsd.org) Date: Wed, 21 Jun 2006 20:57:11 GMT Message-Id: <200606212057.k5LKvB8P038692@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99777 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 20:57:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=99777 Change 99777 by jhb@jhb_mutex on 2006/06/21 20:56:52 Update. Affected files ... .. //depot/projects/smpng/sys/notes#70 edit Differences ... ==== //depot/projects/smpng/sys/notes#70 (text+ko) ==== @@ -79,32 +79,6 @@ recursion) and panic if we try to sleep with any held to provide a cheaper version of the current WITNESS check that doesn't bog the system down quite as bad. -- Fix kernel linker locking - + Convert mutex over to sx lock, needs to be held when calling the following - functions - - private: - + linker_file_sys[un]init? - + linker_file_[un]register_sysctls? - + linker_file_register_modules? - + linker_load_file? - + linker_load_module_internal - + linker_file_add_dependency (make private) - - public: - - linker_find_file_by_name? (make private?) - - linker_find_file_by_id? (XXX: ndis) - + linker_make_file - + linker_file_unload_internal - + linker_load_dependencies - - ndis XXX - - functions that grab the lock - - private: - - public: - + linker_reference_module - + linker_file_lookup_symbol - + linker_load_module - + linker_file_lookup_set - + linker_file_unload - - really remove Giant Active child branches: - jhb_intr - fast ithreads and MSI? (perhaps do MSI in jhb_acpipci) From owner-p4-projects@FreeBSD.ORG Wed Jun 21 22:28:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9D53116A47B; Wed, 21 Jun 2006 22:28:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 798B416A474 for ; Wed, 21 Jun 2006 22:28:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2264543D45 for ; Wed, 21 Jun 2006 22:28:14 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5LMSEGb046272 for ; Wed, 21 Jun 2006 22:28:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5LMSDuQ046269 for perforce@freebsd.org; Wed, 21 Jun 2006 22:28:13 GMT (envelope-from jb@freebsd.org) Date: Wed, 21 Jun 2006 22:28:13 GMT Message-Id: <200606212228.k5LMSDuQ046269@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 99782 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 21 Jun 2006 22:28:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=99782 Change 99782 by jb@jb_freebsd2 on 2006/06/21 22:28:11 Integrate Kip's sunv4 sys tree. Sun Microsystems has kindly agreed to provide a load T1 system for the DTrace development. They are keen to see FreeBSD running on the T1 architecture and are well aware of what's going on in FreeBSD. The addition of DTrace support to FreeBSD/sun4v should be straight forward since it (obviously) exists in OpenSolaris. I think that having DTrace anon enablings during the FreeBSD/sun4v boot will help out a lot when trying to resolve the endian issues with a number of drivers (mpt, bge). Since this 'dtrace' project is now exported to cvsup10.freebsd.org, I think that it can serve as a 'stable' tree for Kip's work. Another benefit of doing this now is that I'm forced to get the cross-build issues sorted out so that a sun4v build on an i386 machine will have CTF info built in appropriately. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/compile/.cvsignore#1 branch .. //depot/projects/dtrace/src/sys/sun4v/conf/DEFAULTS#1 branch .. //depot/projects/dtrace/src/sys/sun4v/conf/GENERIC#1 branch .. //depot/projects/dtrace/src/sys/sun4v/conf/GENERIC.hints#1 branch .. //depot/projects/dtrace/src/sys/sun4v/conf/MAC#1 branch .. //depot/projects/dtrace/src/sys/sun4v/conf/Makefile#1 branch .. //depot/projects/dtrace/src/sys/sun4v/conf/NOTES#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/_bus.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/_inttypes.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/_limits.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/_stdint.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/_types.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/asi.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/asm.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/asmacros.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/atomic.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/bus.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/bus_common.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/bus_dma.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/bus_private.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/cache.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ccr.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/clock.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/cpu.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/cpufunc.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/db_machdep.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/elf.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/endian.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/errata.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/exec.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/float.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/floatingpoint.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/fp.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/frame.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/fsr.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/gdb_machdep.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/hv_pcivar.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/hviommu.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/hypervisor_api.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/hypervisorvar.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/idprom.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ieee.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ieeefp.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/in_cksum.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/instr.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/intr_machdep.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/iommureg.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/iommuvar.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/kdb.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/kerneldump.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ktr.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/limits.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/lsu.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/md_var.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/memdev.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/metadata.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/mmu.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/mutex.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/nexusvar.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ofw_bus.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ofw_machdep.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ofw_mem.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ofw_nexus.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ofw_upa.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/param.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/pcb.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/pcpu.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/pmap.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/pmc_mdep.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/proc.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/profile.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/pstate.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ptrace.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/reg.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/reloc.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/resource.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/runq.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/sc_machdep.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/setjmp.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/sf_buf.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/sigframe.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/signal.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/smp.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/stdarg.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/sun4v_cpufunc.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/sysarch.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/tick.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/tlb.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/trap.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/tsb.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/tstate.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/tte.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/tte_hash.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ucontext.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/upa.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/utrap.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/varargs.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/ver.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/vmparam.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/watch.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/include/wstate.h#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/autoconf.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/bus_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/clock.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/counter.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/db_disasm.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/db_hwwatch.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/db_interface.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/db_trace.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/dump_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/eeprom.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/elf_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/exception.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/gdb_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/genassym.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/hcall.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/hv_pci.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/hvcons.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/hviommu.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/identcpu.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/in_cksum.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/interrupt.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/intr_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/iommu.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/locore.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/mem.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/mp_exception.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/mp_locore.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/mp_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/nexus.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/ofw_bus.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/ofw_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/prof_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/rtc.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/rwindow.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/sc_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/simdisk.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/support.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/swtch.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/sys_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/t1_copy.S#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tick.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tlb.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/trap.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tsb.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tte.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tte_hash.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/uio_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/vm_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/vnex.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/wbuf.S#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jun 22 00:14:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0861E16A481; Thu, 22 Jun 2006 00:14:44 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8CEEA16A47C for ; Thu, 22 Jun 2006 00:14:43 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1352443D5E for ; Thu, 22 Jun 2006 00:14:40 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M0EdsT055522 for ; Thu, 22 Jun 2006 00:14:39 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M0EYAj055516 for perforce@freebsd.org; Thu, 22 Jun 2006 00:14:34 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 00:14:34 GMT Message-Id: <200606220014.k5M0EYAj055516@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 99785 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 00:14:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=99785 Change 99785 by marcel@marcel_nfs on 2006/06/22 00:13:47 IFC @99784 Affected files ... .. //depot/projects/uart/amd64/amd64/fpu.c#5 integrate .. //depot/projects/uart/amd64/amd64/initcpu.c#5 integrate .. //depot/projects/uart/amd64/amd64/machdep.c#20 integrate .. //depot/projects/uart/amd64/amd64/pmap.c#39 integrate .. //depot/projects/uart/amd64/amd64/trap.c#12 integrate .. //depot/projects/uart/amd64/conf/GENERIC#21 integrate .. //depot/projects/uart/amd64/include/md_var.h#7 integrate .. //depot/projects/uart/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/uart/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/uart/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/uart/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/uart/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/uart/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/uart/arm/arm/locore.S#8 integrate .. //depot/projects/uart/arm/arm/pmap.c#17 integrate .. //depot/projects/uart/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/uart/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/uart/arm/at91/if_ate.c#5 integrate .. //depot/projects/uart/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/uart/arm/conf/IQ31244#10 integrate .. //depot/projects/uart/arm/conf/KB920X#4 integrate .. //depot/projects/uart/arm/conf/SIMICS#7 integrate .. //depot/projects/uart/arm/conf/SKYEYE#4 integrate .. //depot/projects/uart/arm/sa11x0/uart_cpu_sa1110.c#5 integrate .. //depot/projects/uart/boot/Makefile#8 integrate .. //depot/projects/uart/compat/ndis/subr_ndis.c#9 integrate .. //depot/projects/uart/conf/Makefile.arm#11 integrate .. //depot/projects/uart/conf/NOTES#40 integrate .. //depot/projects/uart/conf/files#72 integrate .. //depot/projects/uart/conf/kern.post.mk#15 integrate .. //depot/projects/uart/conf/options#38 integrate .. //depot/projects/uart/contrib/pf/net/if_pfsync.c#7 integrate .. //depot/projects/uart/ddb/db_sym.c#4 integrate .. //depot/projects/uart/dev/aac/aac_pci.c#13 integrate .. //depot/projects/uart/dev/ata/ata-chipset.c#20 integrate .. //depot/projects/uart/dev/bge/if_bge.c#28 integrate .. //depot/projects/uart/dev/bge/if_bgereg.h#18 integrate .. //depot/projects/uart/dev/digi/digi.c#8 integrate .. //depot/projects/uart/dev/mfi/mfi.c#5 integrate .. //depot/projects/uart/dev/mfi/mfi_disk.c#4 integrate .. //depot/projects/uart/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/uart/dev/mfi/mfireg.h#3 integrate .. //depot/projects/uart/dev/mfi/mfivar.h#3 integrate .. //depot/projects/uart/dev/mxge/eth_z8e.dat.gz.uu#2 integrate .. //depot/projects/uart/dev/mxge/ethp_z8e.dat.gz.uu#2 integrate .. //depot/projects/uart/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/uart/dev/mxge/if_mxge_var.h#2 integrate .. //depot/projects/uart/dev/mxge/mxge_mcp.h#2 integrate .. //depot/projects/uart/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/uart/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/uart/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/uart/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/uart/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/uart/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/uart/dev/sound/driver.c#6 integrate .. //depot/projects/uart/dev/sound/midi/midi.c#4 integrate .. //depot/projects/uart/dev/sound/midi/sequencer.c#4 integrate .. //depot/projects/uart/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/uart/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/uart/dev/sound/pci/cmi.c#11 integrate .. //depot/projects/uart/dev/sound/pci/envy24.c#1 branch .. //depot/projects/uart/dev/sound/pci/envy24.h#1 branch .. //depot/projects/uart/dev/sound/pci/es137x.c#14 integrate .. //depot/projects/uart/dev/sound/pci/ich.c#22 integrate .. //depot/projects/uart/dev/sound/pci/maestro.c#11 integrate .. //depot/projects/uart/dev/sound/pci/via8233.c#11 integrate .. //depot/projects/uart/dev/sound/pcm/feeder_rate.c#6 integrate .. //depot/projects/uart/dev/sound/pcm/sound.c#11 integrate .. //depot/projects/uart/dev/sound/pcm/vchan.c#10 integrate .. //depot/projects/uart/dev/usb/uhid.c#11 integrate .. //depot/projects/uart/dev/usb/umodem.c#6 integrate .. //depot/projects/uart/dev/usb/uplcom.c#14 integrate .. //depot/projects/uart/dev/usb/usbdevs#23 integrate .. //depot/projects/uart/dev/usb/uscanner.c#14 integrate .. //depot/projects/uart/dev/usb/uvisor.c#9 integrate .. //depot/projects/uart/dev/wl/if_wl.c#8 integrate .. //depot/projects/uart/geom/geom_dev.c#12 integrate .. //depot/projects/uart/i386/acpica/acpi_wakeup.c#13 integrate .. //depot/projects/uart/i386/conf/GENERIC#20 integrate .. //depot/projects/uart/i386/conf/XBOX#4 integrate .. //depot/projects/uart/i386/i386/db_trace.c#10 integrate .. //depot/projects/uart/i386/i386/identcpu.c#19 integrate .. //depot/projects/uart/i386/i386/pmap.c#40 integrate .. //depot/projects/uart/i386/i386/trap.c#13 integrate .. //depot/projects/uart/i386/include/specialreg.h#6 integrate .. //depot/projects/uart/i386/linux/linux_dummy.c#5 integrate .. //depot/projects/uart/i386/linux/linux_proto.h#9 integrate .. //depot/projects/uart/i386/linux/linux_syscall.h#9 integrate .. //depot/projects/uart/i386/linux/linux_sysent.c#9 integrate .. //depot/projects/uart/i386/linux/syscalls.master#9 integrate .. //depot/projects/uart/ia64/conf/GENERIC#12 integrate .. //depot/projects/uart/ia64/conf/SKI#6 integrate .. //depot/projects/uart/ia64/ia64/pmap.c#23 integrate .. //depot/projects/uart/kern/kern_clock.c#11 integrate .. //depot/projects/uart/kern/kern_linker.c#9 integrate .. //depot/projects/uart/kern/kern_module.c#6 integrate .. //depot/projects/uart/kern/kern_switch.c#12 integrate .. //depot/projects/uart/kern/kern_synch.c#17 integrate .. //depot/projects/uart/kern/kern_sysctl.c#9 integrate .. //depot/projects/uart/kern/kern_tc.c#15 integrate .. //depot/projects/uart/kern/link_elf.c#8 integrate .. //depot/projects/uart/kern/link_elf_obj.c#4 integrate .. //depot/projects/uart/kern/sched_4bsd.c#13 integrate .. //depot/projects/uart/kern/sched_core.c#1 branch .. //depot/projects/uart/kern/sched_ule.c#18 integrate .. //depot/projects/uart/kern/subr_bus.c#15 integrate .. //depot/projects/uart/kern/subr_firmware.c#3 integrate .. //depot/projects/uart/kern/subr_kdb.c#7 integrate .. //depot/projects/uart/kern/uipc_socket.c#20 integrate .. //depot/projects/uart/kern/uipc_socket2.c#14 integrate .. //depot/projects/uart/kern/uipc_syscalls.c#21 integrate .. //depot/projects/uart/kern/uipc_usrreq.c#14 integrate .. //depot/projects/uart/kern/vfs_cache.c#11 integrate .. //depot/projects/uart/kern/vfs_init.c#6 integrate .. //depot/projects/uart/modules/Makefile#38 integrate .. //depot/projects/uart/modules/mxge/Makefile#2 integrate .. //depot/projects/uart/modules/mxge/mxge/Makefile#2 integrate .. //depot/projects/uart/modules/mxge/mxge_eth_z8e/Makefile#2 integrate .. //depot/projects/uart/modules/mxge/mxge_ethp_z8e/Makefile#2 integrate .. //depot/projects/uart/modules/myri10ge/Makefile#2 delete .. //depot/projects/uart/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/uart/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/uart/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/uart/modules/ppc/Makefile#1 branch .. //depot/projects/uart/modules/sound/driver/Makefile#4 integrate .. //depot/projects/uart/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/uart/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/uart/net/bpf.c#15 integrate .. //depot/projects/uart/net/bpf.h#7 integrate .. //depot/projects/uart/net/if.c#20 integrate .. //depot/projects/uart/net/if.h#12 integrate .. //depot/projects/uart/net/if_bridge.c#11 integrate .. //depot/projects/uart/net/if_clone.c#5 integrate .. //depot/projects/uart/net/if_var.h#12 integrate .. //depot/projects/uart/net/if_vlan.c#15 integrate .. //depot/projects/uart/net80211/ieee80211_freebsd.c#6 integrate .. //depot/projects/uart/netgraph/ng_socket.c#12 integrate .. //depot/projects/uart/netinet/ip_fw2.c#25 integrate .. //depot/projects/uart/netinet/tcp_input.c#24 integrate .. //depot/projects/uart/netinet/tcp_seq.h#7 integrate .. //depot/projects/uart/netinet/tcp_syncache.c#16 integrate .. //depot/projects/uart/netinet/tcp_var.h#12 integrate .. //depot/projects/uart/pc98/conf/GENERIC#15 integrate .. //depot/projects/uart/posix4/ksched.c#6 integrate .. //depot/projects/uart/powerpc/conf/GENERIC#10 integrate .. //depot/projects/uart/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/uart/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/uart/powerpc/powerpc/pmap_dispatch.c#4 integrate .. //depot/projects/uart/security/audit/audit_bsm_token.c#4 integrate .. //depot/projects/uart/sparc64/conf/DEFAULTS#3 integrate .. //depot/projects/uart/sparc64/conf/GENERIC#21 integrate .. //depot/projects/uart/sparc64/include/_bus.h#2 integrate .. //depot/projects/uart/sparc64/include/bus.h#11 integrate .. //depot/projects/uart/sparc64/sparc64/pmap.c#23 integrate .. //depot/projects/uart/sys/linker.h#5 integrate .. //depot/projects/uart/sys/protosw.h#10 integrate .. //depot/projects/uart/sys/sched.h#6 integrate .. //depot/projects/uart/sys/socketvar.h#13 integrate .. //depot/projects/uart/sys/sockio.h#5 integrate .. //depot/projects/uart/sys/sx.h#6 integrate .. //depot/projects/uart/sys/syscallsubr.h#11 integrate .. //depot/projects/uart/tools/fw_stub.awk#3 integrate .. //depot/projects/uart/vm/pmap.h#14 integrate .. //depot/projects/uart/vm/vm_fault.c#16 integrate .. //depot/projects/uart/vm/vm_map.c#22 integrate .. //depot/projects/uart/vm/vm_mmap.c#15 integrate Differences ... ==== //depot/projects/uart/amd64/amd64/fpu.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/uart/amd64/amd64/initcpu.c#5 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/uart/amd64/amd64/machdep.c#20 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/uart/amd64/amd64/pmap.c#39 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.556 2006/06/12 20:05:27 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -1664,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2335,6 +2336,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2356,15 +2358,13 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { PMAP_LOCK(pmap); - mpte = pmap_enter_quick_locked(pmap, va, m, prot, mpte); + (void) pmap_enter_quick_locked(pmap, va, m, prot, NULL); PMAP_UNLOCK(pmap); - return (mpte); } static vm_page_t @@ -2378,7 +2378,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2396,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2414,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2448,12 +2436,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters ==== //depot/projects/uart/amd64/amd64/trap.c#12 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/uart/amd64/conf/GENERIC#21 (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.458 2006/05/17 20:45:44 marius Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ cpu HAMMER ident GENERIC @@ -28,6 +28,7 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler +#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols @@ -45,7 +46,6 @@ options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_GPT # GUID Partition Tables. -options COMPAT_43 # Needed by COMPAT_LINUX32 options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!] options COMPAT_IA32 # Compatible with i386 binaries options COMPAT_FREEBSD4 # Compatible with FreeBSD4 ==== //depot/projects/uart/amd64/include/md_var.h#7 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/uart/amd64/linux32/linux32_dummy.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/uart/amd64/linux32/linux32_proto.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.11 2006/05/10 18:19:51 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.9 2006/05/10 18:17:28 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/uart/amd64/linux32/linux32_syscall.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.11 2006/05/10 18:19:51 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.9 2006/05/10 18:17:28 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #define LINUX_SYS_exit 1 @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 -#define LINUX_SYS_MAXSYSCALL 268 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 +#define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/uart/amd64/linux32/linux32_sysent.c#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.11 2006/05/10 18:19:51 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.9 2006/05/10 18:17:28 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #include @@ -21,178 +21,178 @@ struct sysent linux_sysent[] = { #define nosys linux_nosys { 0, (sy_call_t *)nosys, AUE_NULL }, /* 0 = setup */ - { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_NULL }, /* 1 = exit */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_fork, AUE_NULL }, /* 2 = linux_fork */ + { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 1 = exit */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fork, AUE_FORK }, /* 2 = linux_fork */ { SYF_MPSAFE | AS(read_args), (sy_call_t *)read, AUE_NULL }, /* 3 = read */ { SYF_MPSAFE | AS(write_args), (sy_call_t *)write, AUE_NULL }, /* 4 = write */ - { SYF_MPSAFE | AS(linux_open_args), (sy_call_t *)linux_open, AUE_NULL }, /* 5 = linux_open */ - { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_NULL }, /* 6 = close */ - { SYF_MPSAFE | AS(linux_waitpid_args), (sy_call_t *)linux_waitpid, AUE_NULL }, /* 7 = linux_waitpid */ - { SYF_MPSAFE | AS(linux_creat_args), (sy_call_t *)linux_creat, AUE_NULL }, /* 8 = linux_creat */ - { SYF_MPSAFE | AS(linux_link_args), (sy_call_t *)linux_link, AUE_NULL }, /* 9 = linux_link */ - { SYF_MPSAFE | AS(linux_unlink_args), (sy_call_t *)linux_unlink, AUE_NULL }, /* 10 = linux_unlink */ - { SYF_MPSAFE | AS(linux_execve_args), (sy_call_t *)linux_execve, AUE_NULL }, /* 11 = linux_execve */ - { SYF_MPSAFE | AS(linux_chdir_args), (sy_call_t *)linux_chdir, AUE_NULL }, /* 12 = linux_chdir */ + { SYF_MPSAFE | AS(linux_open_args), (sy_call_t *)linux_open, AUE_OPEN_RWTC }, /* 5 = linux_open */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_CLOSE }, /* 6 = close */ + { SYF_MPSAFE | AS(linux_waitpid_args), (sy_call_t *)linux_waitpid, AUE_WAIT4 }, /* 7 = linux_waitpid */ + { SYF_MPSAFE | AS(linux_creat_args), (sy_call_t *)linux_creat, AUE_O_CREAT }, /* 8 = linux_creat */ + { SYF_MPSAFE | AS(linux_link_args), (sy_call_t *)linux_link, AUE_LINK }, /* 9 = linux_link */ + { SYF_MPSAFE | AS(linux_unlink_args), (sy_call_t *)linux_unlink, AUE_UNLINK }, /* 10 = linux_unlink */ + { SYF_MPSAFE | AS(linux_execve_args), (sy_call_t *)linux_execve, AUE_EXECVE }, /* 11 = linux_execve */ + { SYF_MPSAFE | AS(linux_chdir_args), (sy_call_t *)linux_chdir, AUE_CHDIR }, /* 12 = linux_chdir */ { SYF_MPSAFE | AS(linux_time_args), (sy_call_t *)linux_time, AUE_NULL }, /* 13 = linux_time */ - { SYF_MPSAFE | AS(linux_mknod_args), (sy_call_t *)linux_mknod, AUE_NULL }, /* 14 = linux_mknod */ - { SYF_MPSAFE | AS(linux_chmod_args), (sy_call_t *)linux_chmod, AUE_NULL }, /* 15 = linux_chmod */ - { SYF_MPSAFE | AS(linux_lchown16_args), (sy_call_t *)linux_lchown16, AUE_NULL }, /* 16 = linux_lchown16 */ + { SYF_MPSAFE | AS(linux_mknod_args), (sy_call_t *)linux_mknod, AUE_MKNOD }, /* 14 = linux_mknod */ + { SYF_MPSAFE | AS(linux_chmod_args), (sy_call_t *)linux_chmod, AUE_CHMOD }, /* 15 = linux_chmod */ + { SYF_MPSAFE | AS(linux_lchown16_args), (sy_call_t *)linux_lchown16, AUE_LCHOWN }, /* 16 = linux_lchown16 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 17 = break */ - { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_NULL }, /* 18 = linux_stat */ - { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_NULL }, /* 19 = linux_lseek */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_NULL }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_NULL }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_NULL }, /* 22 = linux_oldumount */ - { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_NULL }, /* 23 = linux_setuid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_NULL }, /* 24 = linux_getuid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_NULL }, /* 25 = linux_stime */ - { SYF_MPSAFE | AS(linux_ptrace_args), (sy_call_t *)linux_ptrace, AUE_NULL }, /* 26 = linux_ptrace */ + { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ + { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ + { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ + { SYF_MPSAFE | AS(linux_ptrace_args), (sy_call_t *)linux_ptrace, AUE_PTRACE }, /* 26 = linux_ptrace */ { SYF_MPSAFE | AS(linux_alarm_args), (sy_call_t *)linux_alarm, AUE_NULL }, /* 27 = linux_alarm */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 28 = fstat */ { SYF_MPSAFE | 0, (sy_call_t *)linux_pause, AUE_NULL }, /* 29 = linux_pause */ - { SYF_MPSAFE | AS(linux_utime_args), (sy_call_t *)linux_utime, AUE_NULL }, /* 30 = linux_utime */ + { SYF_MPSAFE | AS(linux_utime_args), (sy_call_t *)linux_utime, AUE_UTIME }, /* 30 = linux_utime */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 31 = stty */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 32 = gtty */ - { SYF_MPSAFE | AS(linux_access_args), (sy_call_t *)linux_access, AUE_NULL }, /* 33 = linux_access */ - { SYF_MPSAFE | AS(linux_nice_args), (sy_call_t *)linux_nice, AUE_NULL }, /* 34 = linux_nice */ + { SYF_MPSAFE | AS(linux_access_args), (sy_call_t *)linux_access, AUE_ACCESS }, /* 33 = linux_access */ + { SYF_MPSAFE | AS(linux_nice_args), (sy_call_t *)linux_nice, AUE_NICE }, /* 34 = linux_nice */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 35 = ftime */ - { SYF_MPSAFE | 0, (sy_call_t *)sync, AUE_NULL }, /* 36 = sync */ - { SYF_MPSAFE | AS(linux_kill_args), (sy_call_t *)linux_kill, AUE_NULL }, /* 37 = linux_kill */ - { SYF_MPSAFE | AS(linux_rename_args), (sy_call_t *)linux_rename, AUE_NULL }, /* 38 = linux_rename */ - { SYF_MPSAFE | AS(linux_mkdir_args), (sy_call_t *)linux_mkdir, AUE_NULL }, /* 39 = linux_mkdir */ - { SYF_MPSAFE | AS(linux_rmdir_args), (sy_call_t *)linux_rmdir, AUE_NULL }, /* 40 = linux_rmdir */ - { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup, AUE_NULL }, /* 41 = dup */ - { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_NULL }, /* 42 = linux_pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)sync, AUE_SYNC }, /* 36 = sync */ + { SYF_MPSAFE | AS(linux_kill_args), (sy_call_t *)linux_kill, AUE_KILL }, /* 37 = linux_kill */ + { SYF_MPSAFE | AS(linux_rename_args), (sy_call_t *)linux_rename, AUE_RENAME }, /* 38 = linux_rename */ + { SYF_MPSAFE | AS(linux_mkdir_args), (sy_call_t *)linux_mkdir, AUE_MKDIR }, /* 39 = linux_mkdir */ + { SYF_MPSAFE | AS(linux_rmdir_args), (sy_call_t *)linux_rmdir, AUE_RMDIR }, /* 40 = linux_rmdir */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup, AUE_DUP }, /* 41 = dup */ + { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_PIPE }, /* 42 = linux_pipe */ { SYF_MPSAFE | AS(linux_times_args), (sy_call_t *)linux_times, AUE_NULL }, /* 43 = linux_times */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 44 = prof */ { AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ - { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_NULL }, /* 46 = linux_setgid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_NULL }, /* 47 = linux_getgid16 */ + { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_SETGID }, /* 46 = linux_setgid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_GETGID }, /* 47 = linux_getgid16 */ { SYF_MPSAFE | AS(linux_signal_args), (sy_call_t *)linux_signal, AUE_NULL }, /* 48 = linux_signal */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_NULL }, /* 49 = linux_geteuid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_NULL }, /* 50 = linux_getegid16 */ - { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_NULL }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_NULL }, /* 52 = linux_umount */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ + { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ + { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_NULL }, /* 54 = linux_ioctl */ - { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_NULL }, /* 55 = linux_fcntl */ + { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ - { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_NULL }, /* 57 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 58 = ulimit */ { SYF_MPSAFE | 0, (sy_call_t *)linux_olduname, AUE_NULL }, /* 59 = linux_olduname */ - { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_NULL }, /* 60 = umask */ - { SYF_MPSAFE | AS(chroot_args), (sy_call_t *)chroot, AUE_NULL }, /* 61 = chroot */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_UMASK }, /* 60 = umask */ + { SYF_MPSAFE | AS(chroot_args), (sy_call_t *)chroot, AUE_CHROOT }, /* 61 = chroot */ { SYF_MPSAFE | AS(linux_ustat_args), (sy_call_t *)linux_ustat, AUE_NULL }, /* 62 = linux_ustat */ - { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2, AUE_NULL }, /* 63 = dup2 */ - { SYF_MPSAFE | 0, (sy_call_t *)getppid, AUE_NULL }, /* 64 = getppid */ - { SYF_MPSAFE | 0, (sy_call_t *)getpgrp, AUE_NULL }, /* 65 = getpgrp */ - { SYF_MPSAFE | 0, (sy_call_t *)setsid, AUE_NULL }, /* 66 = setsid */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2, AUE_DUP2 }, /* 63 = dup2 */ + { SYF_MPSAFE | 0, (sy_call_t *)getppid, AUE_GETPPID }, /* 64 = getppid */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp, AUE_GETPGRP }, /* 65 = getpgrp */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid, AUE_SETSID }, /* 66 = setsid */ { SYF_MPSAFE | AS(linux_sigaction_args), (sy_call_t *)linux_sigaction, AUE_NULL }, /* 67 = linux_sigaction */ { SYF_MPSAFE | 0, (sy_call_t *)linux_sgetmask, AUE_NULL }, /* 68 = linux_sgetmask */ { SYF_MPSAFE | AS(linux_ssetmask_args), (sy_call_t *)linux_ssetmask, AUE_NULL }, /* 69 = linux_ssetmask */ - { SYF_MPSAFE | AS(linux_setreuid16_args), (sy_call_t *)linux_setreuid16, AUE_NULL }, /* 70 = linux_setreuid16 */ - { SYF_MPSAFE | AS(linux_setregid16_args), (sy_call_t *)linux_setregid16, AUE_NULL }, /* 71 = linux_setregid16 */ + { SYF_MPSAFE | AS(linux_setreuid16_args), (sy_call_t *)linux_setreuid16, AUE_SETREUID }, /* 70 = linux_setreuid16 */ + { SYF_MPSAFE | AS(linux_setregid16_args), (sy_call_t *)linux_setregid16, AUE_SETREGID }, /* 71 = linux_setregid16 */ { SYF_MPSAFE | AS(linux_sigsuspend_args), (sy_call_t *)linux_sigsuspend, AUE_NULL }, /* 72 = linux_sigsuspend */ { SYF_MPSAFE | AS(linux_sigpending_args), (sy_call_t *)linux_sigpending, AUE_NULL }, /* 73 = linux_sigpending */ - { SYF_MPSAFE | AS(linux_sethostname_args), (sy_call_t *)linux_sethostname, AUE_NULL }, /* 74 = linux_sethostname */ - { SYF_MPSAFE | AS(linux_setrlimit_args), (sy_call_t *)linux_setrlimit, AUE_NULL }, /* 75 = linux_setrlimit */ - { SYF_MPSAFE | AS(linux_old_getrlimit_args), (sy_call_t *)linux_old_getrlimit, AUE_NULL }, /* 76 = linux_old_getrlimit */ - { SYF_MPSAFE | AS(linux_getrusage_args), (sy_call_t *)linux_getrusage, AUE_NULL }, /* 77 = linux_getrusage */ + { SYF_MPSAFE | AS(linux_sethostname_args), (sy_call_t *)linux_sethostname, AUE_SYSCTL }, /* 74 = linux_sethostname */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 00:14:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3854E16A50C; Thu, 22 Jun 2006 00:14:44 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A82DE16A47D for ; Thu, 22 Jun 2006 00:14:43 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2388443D5F for ; Thu, 22 Jun 2006 00:14:40 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M0Ed8X055523 for ; Thu, 22 Jun 2006 00:14:39 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M0EYD5055519 for perforce@freebsd.org; Thu, 22 Jun 2006 00:14:34 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 00:14:34 GMT Message-Id: <200606220014.k5M0EYD5055519@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 99785 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 00:14:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=99785 Change 99785 by marcel@marcel_nfs on 2006/06/22 00:13:47 IFC @99784 Affected files ... .. //depot/projects/uart/amd64/amd64/fpu.c#5 integrate .. //depot/projects/uart/amd64/amd64/initcpu.c#5 integrate .. //depot/projects/uart/amd64/amd64/machdep.c#20 integrate .. //depot/projects/uart/amd64/amd64/pmap.c#39 integrate .. //depot/projects/uart/amd64/amd64/trap.c#12 integrate .. //depot/projects/uart/amd64/conf/GENERIC#21 integrate .. //depot/projects/uart/amd64/include/md_var.h#7 integrate .. //depot/projects/uart/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/uart/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/uart/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/uart/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/uart/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/uart/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/uart/arm/arm/locore.S#8 integrate .. //depot/projects/uart/arm/arm/pmap.c#17 integrate .. //depot/projects/uart/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/uart/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/uart/arm/at91/if_ate.c#5 integrate .. //depot/projects/uart/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/uart/arm/conf/IQ31244#10 integrate .. //depot/projects/uart/arm/conf/KB920X#4 integrate .. //depot/projects/uart/arm/conf/SIMICS#7 integrate .. //depot/projects/uart/arm/conf/SKYEYE#4 integrate .. //depot/projects/uart/arm/sa11x0/uart_cpu_sa1110.c#5 integrate .. //depot/projects/uart/boot/Makefile#8 integrate .. //depot/projects/uart/compat/ndis/subr_ndis.c#9 integrate .. //depot/projects/uart/conf/Makefile.arm#11 integrate .. //depot/projects/uart/conf/NOTES#40 integrate .. //depot/projects/uart/conf/files#72 integrate .. //depot/projects/uart/conf/kern.post.mk#15 integrate .. //depot/projects/uart/conf/options#38 integrate .. //depot/projects/uart/contrib/pf/net/if_pfsync.c#7 integrate .. //depot/projects/uart/ddb/db_sym.c#4 integrate .. //depot/projects/uart/dev/aac/aac_pci.c#13 integrate .. //depot/projects/uart/dev/ata/ata-chipset.c#20 integrate .. //depot/projects/uart/dev/bge/if_bge.c#28 integrate .. //depot/projects/uart/dev/bge/if_bgereg.h#18 integrate .. //depot/projects/uart/dev/digi/digi.c#8 integrate .. //depot/projects/uart/dev/mfi/mfi.c#5 integrate .. //depot/projects/uart/dev/mfi/mfi_disk.c#4 integrate .. //depot/projects/uart/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/uart/dev/mfi/mfireg.h#3 integrate .. //depot/projects/uart/dev/mfi/mfivar.h#3 integrate .. //depot/projects/uart/dev/mxge/eth_z8e.dat.gz.uu#2 integrate .. //depot/projects/uart/dev/mxge/ethp_z8e.dat.gz.uu#2 integrate .. //depot/projects/uart/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/uart/dev/mxge/if_mxge_var.h#2 integrate .. //depot/projects/uart/dev/mxge/mxge_mcp.h#2 integrate .. //depot/projects/uart/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/uart/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/uart/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/uart/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/uart/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/uart/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/uart/dev/sound/driver.c#6 integrate .. //depot/projects/uart/dev/sound/midi/midi.c#4 integrate .. //depot/projects/uart/dev/sound/midi/sequencer.c#4 integrate .. //depot/projects/uart/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/uart/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/uart/dev/sound/pci/cmi.c#11 integrate .. //depot/projects/uart/dev/sound/pci/envy24.c#1 branch .. //depot/projects/uart/dev/sound/pci/envy24.h#1 branch .. //depot/projects/uart/dev/sound/pci/es137x.c#14 integrate .. //depot/projects/uart/dev/sound/pci/ich.c#22 integrate .. //depot/projects/uart/dev/sound/pci/maestro.c#11 integrate .. //depot/projects/uart/dev/sound/pci/via8233.c#11 integrate .. //depot/projects/uart/dev/sound/pcm/feeder_rate.c#6 integrate .. //depot/projects/uart/dev/sound/pcm/sound.c#11 integrate .. //depot/projects/uart/dev/sound/pcm/vchan.c#10 integrate .. //depot/projects/uart/dev/usb/uhid.c#11 integrate .. //depot/projects/uart/dev/usb/umodem.c#6 integrate .. //depot/projects/uart/dev/usb/uplcom.c#14 integrate .. //depot/projects/uart/dev/usb/usbdevs#23 integrate .. //depot/projects/uart/dev/usb/uscanner.c#14 integrate .. //depot/projects/uart/dev/usb/uvisor.c#9 integrate .. //depot/projects/uart/dev/wl/if_wl.c#8 integrate .. //depot/projects/uart/geom/geom_dev.c#12 integrate .. //depot/projects/uart/i386/acpica/acpi_wakeup.c#13 integrate .. //depot/projects/uart/i386/conf/GENERIC#20 integrate .. //depot/projects/uart/i386/conf/XBOX#4 integrate .. //depot/projects/uart/i386/i386/db_trace.c#10 integrate .. //depot/projects/uart/i386/i386/identcpu.c#19 integrate .. //depot/projects/uart/i386/i386/pmap.c#40 integrate .. //depot/projects/uart/i386/i386/trap.c#13 integrate .. //depot/projects/uart/i386/include/specialreg.h#6 integrate .. //depot/projects/uart/i386/linux/linux_dummy.c#5 integrate .. //depot/projects/uart/i386/linux/linux_proto.h#9 integrate .. //depot/projects/uart/i386/linux/linux_syscall.h#9 integrate .. //depot/projects/uart/i386/linux/linux_sysent.c#9 integrate .. //depot/projects/uart/i386/linux/syscalls.master#9 integrate .. //depot/projects/uart/ia64/conf/GENERIC#12 integrate .. //depot/projects/uart/ia64/conf/SKI#6 integrate .. //depot/projects/uart/ia64/ia64/pmap.c#23 integrate .. //depot/projects/uart/kern/kern_clock.c#11 integrate .. //depot/projects/uart/kern/kern_linker.c#9 integrate .. //depot/projects/uart/kern/kern_module.c#6 integrate .. //depot/projects/uart/kern/kern_switch.c#12 integrate .. //depot/projects/uart/kern/kern_synch.c#17 integrate .. //depot/projects/uart/kern/kern_sysctl.c#9 integrate .. //depot/projects/uart/kern/kern_tc.c#15 integrate .. //depot/projects/uart/kern/link_elf.c#8 integrate .. //depot/projects/uart/kern/link_elf_obj.c#4 integrate .. //depot/projects/uart/kern/sched_4bsd.c#13 integrate .. //depot/projects/uart/kern/sched_core.c#1 branch .. //depot/projects/uart/kern/sched_ule.c#18 integrate .. //depot/projects/uart/kern/subr_bus.c#15 integrate .. //depot/projects/uart/kern/subr_firmware.c#3 integrate .. //depot/projects/uart/kern/subr_kdb.c#7 integrate .. //depot/projects/uart/kern/uipc_socket.c#20 integrate .. //depot/projects/uart/kern/uipc_socket2.c#14 integrate .. //depot/projects/uart/kern/uipc_syscalls.c#21 integrate .. //depot/projects/uart/kern/uipc_usrreq.c#14 integrate .. //depot/projects/uart/kern/vfs_cache.c#11 integrate .. //depot/projects/uart/kern/vfs_init.c#6 integrate .. //depot/projects/uart/modules/Makefile#38 integrate .. //depot/projects/uart/modules/mxge/Makefile#2 integrate .. //depot/projects/uart/modules/mxge/mxge/Makefile#2 integrate .. //depot/projects/uart/modules/mxge/mxge_eth_z8e/Makefile#2 integrate .. //depot/projects/uart/modules/mxge/mxge_ethp_z8e/Makefile#2 integrate .. //depot/projects/uart/modules/myri10ge/Makefile#2 delete .. //depot/projects/uart/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/uart/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/uart/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/uart/modules/ppc/Makefile#1 branch .. //depot/projects/uart/modules/sound/driver/Makefile#4 integrate .. //depot/projects/uart/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/uart/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/uart/net/bpf.c#15 integrate .. //depot/projects/uart/net/bpf.h#7 integrate .. //depot/projects/uart/net/if.c#20 integrate .. //depot/projects/uart/net/if.h#12 integrate .. //depot/projects/uart/net/if_bridge.c#11 integrate .. //depot/projects/uart/net/if_clone.c#5 integrate .. //depot/projects/uart/net/if_var.h#12 integrate .. //depot/projects/uart/net/if_vlan.c#15 integrate .. //depot/projects/uart/net80211/ieee80211_freebsd.c#6 integrate .. //depot/projects/uart/netgraph/ng_socket.c#12 integrate .. //depot/projects/uart/netinet/ip_fw2.c#25 integrate .. //depot/projects/uart/netinet/tcp_input.c#24 integrate .. //depot/projects/uart/netinet/tcp_seq.h#7 integrate .. //depot/projects/uart/netinet/tcp_syncache.c#16 integrate .. //depot/projects/uart/netinet/tcp_var.h#12 integrate .. //depot/projects/uart/pc98/conf/GENERIC#15 integrate .. //depot/projects/uart/posix4/ksched.c#6 integrate .. //depot/projects/uart/powerpc/conf/GENERIC#10 integrate .. //depot/projects/uart/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/uart/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/uart/powerpc/powerpc/pmap_dispatch.c#4 integrate .. //depot/projects/uart/security/audit/audit_bsm_token.c#4 integrate .. //depot/projects/uart/sparc64/conf/DEFAULTS#3 integrate .. //depot/projects/uart/sparc64/conf/GENERIC#21 integrate .. //depot/projects/uart/sparc64/include/_bus.h#2 integrate .. //depot/projects/uart/sparc64/include/bus.h#11 integrate .. //depot/projects/uart/sparc64/sparc64/pmap.c#23 integrate .. //depot/projects/uart/sys/linker.h#5 integrate .. //depot/projects/uart/sys/protosw.h#10 integrate .. //depot/projects/uart/sys/sched.h#6 integrate .. //depot/projects/uart/sys/socketvar.h#13 integrate .. //depot/projects/uart/sys/sockio.h#5 integrate .. //depot/projects/uart/sys/sx.h#6 integrate .. //depot/projects/uart/sys/syscallsubr.h#11 integrate .. //depot/projects/uart/tools/fw_stub.awk#3 integrate .. //depot/projects/uart/vm/pmap.h#14 integrate .. //depot/projects/uart/vm/vm_fault.c#16 integrate .. //depot/projects/uart/vm/vm_map.c#22 integrate .. //depot/projects/uart/vm/vm_mmap.c#15 integrate Differences ... ==== //depot/projects/uart/amd64/amd64/fpu.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/uart/amd64/amd64/initcpu.c#5 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/uart/amd64/amd64/machdep.c#20 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/uart/amd64/amd64/pmap.c#39 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.556 2006/06/12 20:05:27 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -1664,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2335,6 +2336,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2356,15 +2358,13 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { PMAP_LOCK(pmap); - mpte = pmap_enter_quick_locked(pmap, va, m, prot, mpte); + (void) pmap_enter_quick_locked(pmap, va, m, prot, NULL); PMAP_UNLOCK(pmap); - return (mpte); } static vm_page_t @@ -2378,7 +2378,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2396,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2414,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2448,12 +2436,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters ==== //depot/projects/uart/amd64/amd64/trap.c#12 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/uart/amd64/conf/GENERIC#21 (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.458 2006/05/17 20:45:44 marius Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ cpu HAMMER ident GENERIC @@ -28,6 +28,7 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler +#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols @@ -45,7 +46,6 @@ options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_GPT # GUID Partition Tables. -options COMPAT_43 # Needed by COMPAT_LINUX32 options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!] options COMPAT_IA32 # Compatible with i386 binaries options COMPAT_FREEBSD4 # Compatible with FreeBSD4 ==== //depot/projects/uart/amd64/include/md_var.h#7 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/uart/amd64/linux32/linux32_dummy.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/uart/amd64/linux32/linux32_proto.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.11 2006/05/10 18:19:51 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.9 2006/05/10 18:17:28 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/uart/amd64/linux32/linux32_syscall.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.11 2006/05/10 18:19:51 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.9 2006/05/10 18:17:28 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #define LINUX_SYS_exit 1 @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 -#define LINUX_SYS_MAXSYSCALL 268 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 +#define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/uart/amd64/linux32/linux32_sysent.c#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.11 2006/05/10 18:19:51 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.9 2006/05/10 18:17:28 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #include @@ -21,178 +21,178 @@ struct sysent linux_sysent[] = { #define nosys linux_nosys { 0, (sy_call_t *)nosys, AUE_NULL }, /* 0 = setup */ - { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_NULL }, /* 1 = exit */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_fork, AUE_NULL }, /* 2 = linux_fork */ + { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 1 = exit */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fork, AUE_FORK }, /* 2 = linux_fork */ { SYF_MPSAFE | AS(read_args), (sy_call_t *)read, AUE_NULL }, /* 3 = read */ { SYF_MPSAFE | AS(write_args), (sy_call_t *)write, AUE_NULL }, /* 4 = write */ - { SYF_MPSAFE | AS(linux_open_args), (sy_call_t *)linux_open, AUE_NULL }, /* 5 = linux_open */ - { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_NULL }, /* 6 = close */ - { SYF_MPSAFE | AS(linux_waitpid_args), (sy_call_t *)linux_waitpid, AUE_NULL }, /* 7 = linux_waitpid */ - { SYF_MPSAFE | AS(linux_creat_args), (sy_call_t *)linux_creat, AUE_NULL }, /* 8 = linux_creat */ - { SYF_MPSAFE | AS(linux_link_args), (sy_call_t *)linux_link, AUE_NULL }, /* 9 = linux_link */ - { SYF_MPSAFE | AS(linux_unlink_args), (sy_call_t *)linux_unlink, AUE_NULL }, /* 10 = linux_unlink */ - { SYF_MPSAFE | AS(linux_execve_args), (sy_call_t *)linux_execve, AUE_NULL }, /* 11 = linux_execve */ - { SYF_MPSAFE | AS(linux_chdir_args), (sy_call_t *)linux_chdir, AUE_NULL }, /* 12 = linux_chdir */ + { SYF_MPSAFE | AS(linux_open_args), (sy_call_t *)linux_open, AUE_OPEN_RWTC }, /* 5 = linux_open */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_CLOSE }, /* 6 = close */ + { SYF_MPSAFE | AS(linux_waitpid_args), (sy_call_t *)linux_waitpid, AUE_WAIT4 }, /* 7 = linux_waitpid */ + { SYF_MPSAFE | AS(linux_creat_args), (sy_call_t *)linux_creat, AUE_O_CREAT }, /* 8 = linux_creat */ + { SYF_MPSAFE | AS(linux_link_args), (sy_call_t *)linux_link, AUE_LINK }, /* 9 = linux_link */ + { SYF_MPSAFE | AS(linux_unlink_args), (sy_call_t *)linux_unlink, AUE_UNLINK }, /* 10 = linux_unlink */ + { SYF_MPSAFE | AS(linux_execve_args), (sy_call_t *)linux_execve, AUE_EXECVE }, /* 11 = linux_execve */ + { SYF_MPSAFE | AS(linux_chdir_args), (sy_call_t *)linux_chdir, AUE_CHDIR }, /* 12 = linux_chdir */ { SYF_MPSAFE | AS(linux_time_args), (sy_call_t *)linux_time, AUE_NULL }, /* 13 = linux_time */ - { SYF_MPSAFE | AS(linux_mknod_args), (sy_call_t *)linux_mknod, AUE_NULL }, /* 14 = linux_mknod */ - { SYF_MPSAFE | AS(linux_chmod_args), (sy_call_t *)linux_chmod, AUE_NULL }, /* 15 = linux_chmod */ - { SYF_MPSAFE | AS(linux_lchown16_args), (sy_call_t *)linux_lchown16, AUE_NULL }, /* 16 = linux_lchown16 */ + { SYF_MPSAFE | AS(linux_mknod_args), (sy_call_t *)linux_mknod, AUE_MKNOD }, /* 14 = linux_mknod */ + { SYF_MPSAFE | AS(linux_chmod_args), (sy_call_t *)linux_chmod, AUE_CHMOD }, /* 15 = linux_chmod */ + { SYF_MPSAFE | AS(linux_lchown16_args), (sy_call_t *)linux_lchown16, AUE_LCHOWN }, /* 16 = linux_lchown16 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 17 = break */ - { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_NULL }, /* 18 = linux_stat */ - { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_NULL }, /* 19 = linux_lseek */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_NULL }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_NULL }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_NULL }, /* 22 = linux_oldumount */ - { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_NULL }, /* 23 = linux_setuid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_NULL }, /* 24 = linux_getuid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_NULL }, /* 25 = linux_stime */ - { SYF_MPSAFE | AS(linux_ptrace_args), (sy_call_t *)linux_ptrace, AUE_NULL }, /* 26 = linux_ptrace */ + { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ + { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ + { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ + { SYF_MPSAFE | AS(linux_ptrace_args), (sy_call_t *)linux_ptrace, AUE_PTRACE }, /* 26 = linux_ptrace */ { SYF_MPSAFE | AS(linux_alarm_args), (sy_call_t *)linux_alarm, AUE_NULL }, /* 27 = linux_alarm */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 28 = fstat */ { SYF_MPSAFE | 0, (sy_call_t *)linux_pause, AUE_NULL }, /* 29 = linux_pause */ - { SYF_MPSAFE | AS(linux_utime_args), (sy_call_t *)linux_utime, AUE_NULL }, /* 30 = linux_utime */ + { SYF_MPSAFE | AS(linux_utime_args), (sy_call_t *)linux_utime, AUE_UTIME }, /* 30 = linux_utime */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 31 = stty */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 32 = gtty */ - { SYF_MPSAFE | AS(linux_access_args), (sy_call_t *)linux_access, AUE_NULL }, /* 33 = linux_access */ - { SYF_MPSAFE | AS(linux_nice_args), (sy_call_t *)linux_nice, AUE_NULL }, /* 34 = linux_nice */ + { SYF_MPSAFE | AS(linux_access_args), (sy_call_t *)linux_access, AUE_ACCESS }, /* 33 = linux_access */ + { SYF_MPSAFE | AS(linux_nice_args), (sy_call_t *)linux_nice, AUE_NICE }, /* 34 = linux_nice */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 35 = ftime */ - { SYF_MPSAFE | 0, (sy_call_t *)sync, AUE_NULL }, /* 36 = sync */ - { SYF_MPSAFE | AS(linux_kill_args), (sy_call_t *)linux_kill, AUE_NULL }, /* 37 = linux_kill */ - { SYF_MPSAFE | AS(linux_rename_args), (sy_call_t *)linux_rename, AUE_NULL }, /* 38 = linux_rename */ - { SYF_MPSAFE | AS(linux_mkdir_args), (sy_call_t *)linux_mkdir, AUE_NULL }, /* 39 = linux_mkdir */ - { SYF_MPSAFE | AS(linux_rmdir_args), (sy_call_t *)linux_rmdir, AUE_NULL }, /* 40 = linux_rmdir */ - { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup, AUE_NULL }, /* 41 = dup */ - { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_NULL }, /* 42 = linux_pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)sync, AUE_SYNC }, /* 36 = sync */ + { SYF_MPSAFE | AS(linux_kill_args), (sy_call_t *)linux_kill, AUE_KILL }, /* 37 = linux_kill */ + { SYF_MPSAFE | AS(linux_rename_args), (sy_call_t *)linux_rename, AUE_RENAME }, /* 38 = linux_rename */ + { SYF_MPSAFE | AS(linux_mkdir_args), (sy_call_t *)linux_mkdir, AUE_MKDIR }, /* 39 = linux_mkdir */ + { SYF_MPSAFE | AS(linux_rmdir_args), (sy_call_t *)linux_rmdir, AUE_RMDIR }, /* 40 = linux_rmdir */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup, AUE_DUP }, /* 41 = dup */ + { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_PIPE }, /* 42 = linux_pipe */ { SYF_MPSAFE | AS(linux_times_args), (sy_call_t *)linux_times, AUE_NULL }, /* 43 = linux_times */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 44 = prof */ { AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ - { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_NULL }, /* 46 = linux_setgid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_NULL }, /* 47 = linux_getgid16 */ + { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_SETGID }, /* 46 = linux_setgid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_GETGID }, /* 47 = linux_getgid16 */ { SYF_MPSAFE | AS(linux_signal_args), (sy_call_t *)linux_signal, AUE_NULL }, /* 48 = linux_signal */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_NULL }, /* 49 = linux_geteuid16 */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_NULL }, /* 50 = linux_getegid16 */ - { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_NULL }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_NULL }, /* 52 = linux_umount */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ + { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ + { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_NULL }, /* 54 = linux_ioctl */ - { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_NULL }, /* 55 = linux_fcntl */ + { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ - { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_NULL }, /* 57 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 58 = ulimit */ { SYF_MPSAFE | 0, (sy_call_t *)linux_olduname, AUE_NULL }, /* 59 = linux_olduname */ - { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_NULL }, /* 60 = umask */ - { SYF_MPSAFE | AS(chroot_args), (sy_call_t *)chroot, AUE_NULL }, /* 61 = chroot */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_UMASK }, /* 60 = umask */ + { SYF_MPSAFE | AS(chroot_args), (sy_call_t *)chroot, AUE_CHROOT }, /* 61 = chroot */ { SYF_MPSAFE | AS(linux_ustat_args), (sy_call_t *)linux_ustat, AUE_NULL }, /* 62 = linux_ustat */ - { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2, AUE_NULL }, /* 63 = dup2 */ - { SYF_MPSAFE | 0, (sy_call_t *)getppid, AUE_NULL }, /* 64 = getppid */ - { SYF_MPSAFE | 0, (sy_call_t *)getpgrp, AUE_NULL }, /* 65 = getpgrp */ - { SYF_MPSAFE | 0, (sy_call_t *)setsid, AUE_NULL }, /* 66 = setsid */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2, AUE_DUP2 }, /* 63 = dup2 */ + { SYF_MPSAFE | 0, (sy_call_t *)getppid, AUE_GETPPID }, /* 64 = getppid */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp, AUE_GETPGRP }, /* 65 = getpgrp */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid, AUE_SETSID }, /* 66 = setsid */ { SYF_MPSAFE | AS(linux_sigaction_args), (sy_call_t *)linux_sigaction, AUE_NULL }, /* 67 = linux_sigaction */ { SYF_MPSAFE | 0, (sy_call_t *)linux_sgetmask, AUE_NULL }, /* 68 = linux_sgetmask */ { SYF_MPSAFE | AS(linux_ssetmask_args), (sy_call_t *)linux_ssetmask, AUE_NULL }, /* 69 = linux_ssetmask */ - { SYF_MPSAFE | AS(linux_setreuid16_args), (sy_call_t *)linux_setreuid16, AUE_NULL }, /* 70 = linux_setreuid16 */ - { SYF_MPSAFE | AS(linux_setregid16_args), (sy_call_t *)linux_setregid16, AUE_NULL }, /* 71 = linux_setregid16 */ + { SYF_MPSAFE | AS(linux_setreuid16_args), (sy_call_t *)linux_setreuid16, AUE_SETREUID }, /* 70 = linux_setreuid16 */ + { SYF_MPSAFE | AS(linux_setregid16_args), (sy_call_t *)linux_setregid16, AUE_SETREGID }, /* 71 = linux_setregid16 */ { SYF_MPSAFE | AS(linux_sigsuspend_args), (sy_call_t *)linux_sigsuspend, AUE_NULL }, /* 72 = linux_sigsuspend */ { SYF_MPSAFE | AS(linux_sigpending_args), (sy_call_t *)linux_sigpending, AUE_NULL }, /* 73 = linux_sigpending */ - { SYF_MPSAFE | AS(linux_sethostname_args), (sy_call_t *)linux_sethostname, AUE_NULL }, /* 74 = linux_sethostname */ - { SYF_MPSAFE | AS(linux_setrlimit_args), (sy_call_t *)linux_setrlimit, AUE_NULL }, /* 75 = linux_setrlimit */ - { SYF_MPSAFE | AS(linux_old_getrlimit_args), (sy_call_t *)linux_old_getrlimit, AUE_NULL }, /* 76 = linux_old_getrlimit */ - { SYF_MPSAFE | AS(linux_getrusage_args), (sy_call_t *)linux_getrusage, AUE_NULL }, /* 77 = linux_getrusage */ + { SYF_MPSAFE | AS(linux_sethostname_args), (sy_call_t *)linux_sethostname, AUE_SYSCTL }, /* 74 = linux_sethostname */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 00:30:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 492B916A479; Thu, 22 Jun 2006 00:30:11 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0902716A47C for ; Thu, 22 Jun 2006 00:30:10 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 29C7143D48 for ; Thu, 22 Jun 2006 00:30:10 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M0UAHX056229 for ; Thu, 22 Jun 2006 00:30:10 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M0T9aU056203 for perforce@freebsd.org; Thu, 22 Jun 2006 00:29:09 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 00:29:09 GMT Message-Id: <200606220029.k5M0T9aU056203@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 99787 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 00:30:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=99787 Change 99787 by marcel@marcel_nfs on 2006/06/22 00:28:39 IFC @99784 Affected files ... .. //depot/projects/tty/MAINTAINERS#20 integrate .. //depot/projects/tty/Makefile#18 integrate .. //depot/projects/tty/Makefile.inc1#30 integrate .. //depot/projects/tty/README#4 integrate .. //depot/projects/tty/bin/setfacl/setfacl.1#7 integrate .. //depot/projects/tty/bin/setfacl/setfacl.c#5 integrate .. //depot/projects/tty/bin/sh/cd.c#4 integrate .. //depot/projects/tty/bin/sh/eval.c#7 integrate .. //depot/projects/tty/bin/sh/sh.1#15 integrate .. //depot/projects/tty/bin/sh/var.c#9 integrate .. //depot/projects/tty/bin/sh/var.h#4 integrate .. //depot/projects/tty/contrib/binutils/bfd/elf64-sparc.c#3 integrate .. //depot/projects/tty/contrib/file/ChangeLog#3 integrate .. //depot/projects/tty/contrib/file/FREEBSD-upgrade#2 integrate .. //depot/projects/tty/contrib/file/Magdir/adventure#3 integrate .. //depot/projects/tty/contrib/file/Magdir/amigaos#3 integrate .. //depot/projects/tty/contrib/file/Magdir/animation#4 integrate .. //depot/projects/tty/contrib/file/Magdir/apple#3 integrate .. //depot/projects/tty/contrib/file/Magdir/archive#5 integrate .. //depot/projects/tty/contrib/file/Magdir/audio#5 integrate .. //depot/projects/tty/contrib/file/Magdir/basis#1 branch .. //depot/projects/tty/contrib/file/Magdir/bflt#1 branch .. //depot/projects/tty/contrib/file/Magdir/bout#2 integrate .. //depot/projects/tty/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/tty/contrib/file/Magdir/c64#2 integrate .. //depot/projects/tty/contrib/file/Magdir/cad#2 integrate .. //depot/projects/tty/contrib/file/Magdir/commands#3 integrate .. //depot/projects/tty/contrib/file/Magdir/compress#4 integrate .. //depot/projects/tty/contrib/file/Magdir/console#4 integrate .. //depot/projects/tty/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/tty/contrib/file/Magdir/ctags#3 integrate .. //depot/projects/tty/contrib/file/Magdir/database#3 integrate .. //depot/projects/tty/contrib/file/Magdir/diff#3 integrate .. //depot/projects/tty/contrib/file/Magdir/digital#2 integrate .. //depot/projects/tty/contrib/file/Magdir/dump#2 integrate .. //depot/projects/tty/contrib/file/Magdir/elf#5 integrate .. //depot/projects/tty/contrib/file/Magdir/filesystems#5 integrate .. //depot/projects/tty/contrib/file/Magdir/flash#4 integrate .. //depot/projects/tty/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/tty/contrib/file/Magdir/gnu#3 integrate .. //depot/projects/tty/contrib/file/Magdir/iff#3 integrate .. //depot/projects/tty/contrib/file/Magdir/images#4 integrate .. //depot/projects/tty/contrib/file/Magdir/java#2 integrate .. //depot/projects/tty/contrib/file/Magdir/linux#4 integrate .. //depot/projects/tty/contrib/file/Magdir/lisp#3 integrate .. //depot/projects/tty/contrib/file/Magdir/mach#3 integrate .. //depot/projects/tty/contrib/file/Magdir/macintosh#4 integrate .. //depot/projects/tty/contrib/file/Magdir/mail.news#3 integrate .. //depot/projects/tty/contrib/file/Magdir/maple#3 integrate .. //depot/projects/tty/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/tty/contrib/file/Magdir/msdos#5 integrate .. //depot/projects/tty/contrib/file/Magdir/mup#1 branch .. //depot/projects/tty/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/tty/contrib/file/Magdir/perl#4 integrate .. //depot/projects/tty/contrib/file/Magdir/printer#3 integrate .. //depot/projects/tty/contrib/file/Magdir/psion#2 integrate .. //depot/projects/tty/contrib/file/Magdir/python#4 integrate .. //depot/projects/tty/contrib/file/Magdir/riff#3 integrate .. //depot/projects/tty/contrib/file/Magdir/scientific#1 branch .. //depot/projects/tty/contrib/file/Magdir/sgi#3 integrate .. //depot/projects/tty/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/tty/contrib/file/Magdir/sql#2 integrate .. //depot/projects/tty/contrib/file/Magdir/varied.out#3 integrate .. //depot/projects/tty/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/tty/contrib/file/Makefile.am#5 integrate .. //depot/projects/tty/contrib/file/Makefile.in#5 integrate .. //depot/projects/tty/contrib/file/aclocal.m4#5 integrate .. //depot/projects/tty/contrib/file/apprentice.c#5 integrate .. //depot/projects/tty/contrib/file/ascmagic.c#5 integrate .. //depot/projects/tty/contrib/file/compress.c#4 integrate .. //depot/projects/tty/contrib/file/config.h.in#5 integrate .. //depot/projects/tty/contrib/file/configure#5 integrate .. //depot/projects/tty/contrib/file/configure.in#5 integrate .. //depot/projects/tty/contrib/file/file.c#5 integrate .. //depot/projects/tty/contrib/file/file.h#5 integrate .. //depot/projects/tty/contrib/file/file.man#4 integrate .. //depot/projects/tty/contrib/file/fsmagic.c#4 integrate .. //depot/projects/tty/contrib/file/funcs.c#3 integrate .. //depot/projects/tty/contrib/file/libmagic.man#2 integrate .. //depot/projects/tty/contrib/file/magic.c#3 integrate .. //depot/projects/tty/contrib/file/magic.man#4 integrate .. //depot/projects/tty/contrib/file/magic.mime#5 integrate .. //depot/projects/tty/contrib/file/magic2mime#3 integrate .. //depot/projects/tty/contrib/file/patchlevel.h#5 integrate .. //depot/projects/tty/contrib/file/print.c#5 integrate .. //depot/projects/tty/contrib/file/readelf.c#5 integrate .. //depot/projects/tty/contrib/file/readelf.h#4 integrate .. //depot/projects/tty/contrib/file/softmagic.c#5 integrate .. //depot/projects/tty/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/tty/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/README#2 integrate .. //depot/projects/tty/contrib/openbsm/TODO#2 integrate .. //depot/projects/tty/contrib/openbsm/VERSION#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/auditd/auditd.c#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/audit.h#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/tty/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/libbsm.h#2 integrate .. //depot/projects/tty/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/tty/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/tty/contrib/openbsm/configure#2 integrate .. //depot/projects/tty/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/tty/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/tty/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/tty/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_audit.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_io.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_token.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_wrappers.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/tty/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/tty/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/tty/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/tty/contrib/pf/man/pfsync.4#7 integrate .. //depot/projects/tty/contrib/sendmail/FREEBSD-upgrade#11 integrate .. //depot/projects/tty/contrib/sendmail/PGPKEYS#7 integrate .. //depot/projects/tty/contrib/sendmail/RELEASE_NOTES#11 integrate .. //depot/projects/tty/contrib/sendmail/cf/README#10 integrate .. //depot/projects/tty/contrib/sendmail/cf/cf/submit.cf#11 integrate .. //depot/projects/tty/contrib/sendmail/cf/cf/submit.mc#5 integrate .. //depot/projects/tty/contrib/sendmail/cf/feature/dnsbl.m4#4 integrate .. //depot/projects/tty/contrib/sendmail/cf/feature/enhdnsbl.m4#3 integrate .. //depot/projects/tty/contrib/sendmail/cf/m4/proto.m4#9 integrate .. //depot/projects/tty/contrib/sendmail/cf/m4/version.m4#11 integrate .. //depot/projects/tty/contrib/sendmail/include/libmilter/mfapi.h#6 integrate .. //depot/projects/tty/contrib/sendmail/libmilter/docs/xxfi_header.html#4 integrate .. //depot/projects/tty/contrib/sendmail/libmilter/engine.c#7 integrate .. //depot/projects/tty/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/tty/contrib/sendmail/src/README#11 integrate .. //depot/projects/tty/contrib/sendmail/src/bf.c#5 integrate .. //depot/projects/tty/contrib/sendmail/src/collect.c#9 integrate .. //depot/projects/tty/contrib/sendmail/src/conf.c#13 integrate .. //depot/projects/tty/contrib/sendmail/src/daemon.c#10 integrate .. //depot/projects/tty/contrib/sendmail/src/deliver.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/domain.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/envelope.c#6 integrate .. //depot/projects/tty/contrib/sendmail/src/headers.c#12 integrate .. //depot/projects/tty/contrib/sendmail/src/helpfile#4 integrate .. //depot/projects/tty/contrib/sendmail/src/main.c#9 integrate .. //depot/projects/tty/contrib/sendmail/src/map.c#8 integrate .. //depot/projects/tty/contrib/sendmail/src/mci.c#10 integrate .. //depot/projects/tty/contrib/sendmail/src/mime.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/parseaddr.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/queue.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/savemail.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/sendmail.h#11 integrate .. //depot/projects/tty/contrib/sendmail/src/sfsasl.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/sfsasl.h#3 integrate .. //depot/projects/tty/contrib/sendmail/src/srvrsmtp.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/tls.c#10 integrate .. //depot/projects/tty/contrib/sendmail/src/util.c#8 integrate .. //depot/projects/tty/contrib/sendmail/src/version.c#11 integrate .. //depot/projects/tty/contrib/tcpdump/tcpdump.1#6 integrate .. //depot/projects/tty/contrib/traceroute/traceroute.8#4 integrate .. //depot/projects/tty/contrib/traceroute/traceroute.c#6 integrate .. //depot/projects/tty/crypto/openssh/config.h#8 integrate .. //depot/projects/tty/crypto/openssh/loginrec.c#9 integrate .. //depot/projects/tty/etc/defaults/rc.conf#22 integrate .. //depot/projects/tty/etc/periodic/daily/470.status-named#4 integrate .. //depot/projects/tty/etc/rc.d/abi#7 integrate .. //depot/projects/tty/etc/rc.d/auditd#2 integrate .. //depot/projects/tty/etc/rc.d/cached#2 integrate .. //depot/projects/tty/etc/rc.d/ldconfig#8 integrate .. //depot/projects/tty/etc/rc.d/pf#6 integrate .. //depot/projects/tty/etc/rc.subr#14 integrate .. //depot/projects/tty/etc/sendmail/freebsd.mc#6 integrate .. //depot/projects/tty/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/tty/games/fortune/datfiles/fortunes#25 integrate .. //depot/projects/tty/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/tty/lib/libbsm/Makefile#2 integrate .. //depot/projects/tty/lib/libc/gen/glob.c#6 integrate .. //depot/projects/tty/lib/libc/i386/gen/_ctx_start.S#3 integrate .. //depot/projects/tty/lib/libc/stdlib/malloc.c#15 integrate .. //depot/projects/tty/lib/libc/string/strlcpy.c#4 integrate .. //depot/projects/tty/lib/libc/sys/mincore.2#4 integrate .. //depot/projects/tty/lib/libc/sys/stat.2#8 integrate .. //depot/projects/tty/lib/libfetch/ftp.c#9 integrate .. //depot/projects/tty/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/tty/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/tty/lib/libmagic/Makefile#5 integrate .. //depot/projects/tty/lib/libmagic/config.h#3 integrate .. //depot/projects/tty/lib/libpthread/thread/thr_private.h#16 integrate .. //depot/projects/tty/lib/libpthread/thread/thr_sig.c#12 integrate .. //depot/projects/tty/lib/libpthread/thread/thr_sigaction.c#7 integrate .. //depot/projects/tty/lib/libsdp/sdp.h#4 integrate .. //depot/projects/tty/lib/libsdp/util.c#5 integrate .. //depot/projects/tty/lib/libthr/thread/thr_mutex.c#12 integrate .. //depot/projects/tty/lib/libthr/thread/thr_private.h#12 integrate .. //depot/projects/tty/lib/libutil/Makefile#9 integrate .. //depot/projects/tty/lib/libutil/login_class.3#5 integrate .. //depot/projects/tty/libexec/ftpd/Makefile#7 integrate .. //depot/projects/tty/libexec/ftpd/ftpcmd.y#7 integrate .. //depot/projects/tty/release/Makefile#25 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#23 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#4 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#37 integrate .. //depot/projects/tty/release/doc/share/misc/dev.archlist.txt#13 integrate .. //depot/projects/tty/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#8 integrate .. //depot/projects/tty/sbin/devfs/devfs.c#3 integrate .. //depot/projects/tty/sbin/fdisk/fdisk.c#11 integrate .. //depot/projects/tty/sbin/ffsinfo/ffsinfo.8#6 integrate .. //depot/projects/tty/sbin/fsdb/fsdb.8#6 integrate .. //depot/projects/tty/sbin/fsdb/fsdb.c#7 integrate .. //depot/projects/tty/sbin/geom/class/eli/geli.8#4 integrate .. //depot/projects/tty/sbin/geom/class/eli/geom_eli.c#5 integrate .. //depot/projects/tty/sbin/ggate/ggatec/ggatec.8#5 integrate .. //depot/projects/tty/sbin/ifconfig/Makefile#7 integrate .. //depot/projects/tty/sbin/ifconfig/ifconfig.8#18 integrate .. //depot/projects/tty/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/tty/sbin/ifconfig/ifpfsync.c#3 integrate .. //depot/projects/tty/sbin/init/init.c#5 integrate .. //depot/projects/tty/sbin/ipfw/ipfw.8#25 integrate .. //depot/projects/tty/sbin/ipfw/ipfw2.c#22 integrate .. //depot/projects/tty/sbin/mount/mount.c#12 integrate .. //depot/projects/tty/share/examples/diskless/clone_root#3 integrate .. //depot/projects/tty/share/man/man4/Makefile#27 integrate .. //depot/projects/tty/share/man/man4/aac.4#9 integrate .. //depot/projects/tty/share/man/man4/acpi.4#15 integrate .. //depot/projects/tty/share/man/man4/adv.4#4 integrate .. //depot/projects/tty/share/man/man4/adw.4#4 integrate .. //depot/projects/tty/share/man/man4/altq.4#8 integrate .. //depot/projects/tty/share/man/man4/amd.4#3 integrate .. //depot/projects/tty/share/man/man4/amr.4#12 integrate .. //depot/projects/tty/share/man/man4/audit.4#2 integrate .. //depot/projects/tty/share/man/man4/auditpipe.4#1 branch .. //depot/projects/tty/share/man/man4/bge.4#16 integrate .. //depot/projects/tty/share/man/man4/bt.4#5 integrate .. //depot/projects/tty/share/man/man4/carp.4#5 integrate .. //depot/projects/tty/share/man/man4/cpufreq.4#5 integrate .. //depot/projects/tty/share/man/man4/dpt.4#7 integrate .. //depot/projects/tty/share/man/man4/esp.4#3 integrate .. //depot/projects/tty/share/man/man4/if_bridge.4#11 integrate .. //depot/projects/tty/share/man/man4/iir.4#7 integrate .. //depot/projects/tty/share/man/man4/ips.4#3 integrate .. //depot/projects/tty/share/man/man4/ktr.4#4 integrate .. //depot/projects/tty/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/tty/share/man/man4/man4.alpha/linux.4#2 delete .. //depot/projects/tty/share/man/man4/man4.alpha/osf1.4#4 delete .. //depot/projects/tty/share/man/man4/man4.i386/linux.4#4 integrate .. //depot/projects/tty/share/man/man4/man4.i386/padlock.4#3 integrate .. //depot/projects/tty/share/man/man4/mpt.4#6 integrate .. //depot/projects/tty/share/man/man4/mxge.4#1 branch .. //depot/projects/tty/share/man/man4/myri10ge.4#2 delete .. //depot/projects/tty/share/man/man4/ncr.4#4 integrate .. //depot/projects/tty/share/man/man4/ncv.4#4 integrate .. //depot/projects/tty/share/man/man4/nsp.4#4 integrate .. //depot/projects/tty/share/man/man4/sched_4bsd.4#3 integrate .. //depot/projects/tty/share/man/man4/sched_core.4#1 branch .. //depot/projects/tty/share/man/man4/sched_ule.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_csa.4#6 integrate .. //depot/projects/tty/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/tty/share/man/man4/snd_gusc.4#5 integrate .. //depot/projects/tty/share/man/man4/snd_ich.4#5 integrate .. //depot/projects/tty/share/man/man4/snd_sbc.4#7 integrate .. //depot/projects/tty/share/man/man4/stg.4#4 integrate .. //depot/projects/tty/share/man/man4/sym.4#6 integrate .. //depot/projects/tty/share/man/man4/umodem.4#4 integrate .. //depot/projects/tty/share/man/man4/uscanner.4#8 integrate .. //depot/projects/tty/share/man/man4/uvisor.4#5 integrate .. //depot/projects/tty/share/man/man4/vinum.4#7 integrate .. //depot/projects/tty/share/man/man5/mailer.conf.5#5 integrate .. //depot/projects/tty/share/man/man7/build.7#13 integrate .. //depot/projects/tty/share/man/man8/rc.subr.8#7 integrate .. //depot/projects/tty/share/man/man9/crypto.9#7 integrate .. //depot/projects/tty/share/man/man9/lock.9#4 integrate .. //depot/projects/tty/share/man/man9/vflush.9#5 integrate .. //depot/projects/tty/share/man/man9/vgone.9#3 integrate .. //depot/projects/tty/share/mk/bsd.README#10 integrate .. //depot/projects/tty/share/monetdef/pt_PT.ISO8859-1.src#2 integrate .. //depot/projects/tty/sys/amd64/amd64/fpu.c#8 integrate .. //depot/projects/tty/sys/amd64/amd64/initcpu.c#6 integrate .. //depot/projects/tty/sys/amd64/amd64/machdep.c#19 integrate .. //depot/projects/tty/sys/amd64/amd64/pmap.c#18 integrate .. //depot/projects/tty/sys/amd64/amd64/trap.c#18 integrate .. //depot/projects/tty/sys/amd64/conf/DEFAULTS#4 integrate .. //depot/projects/tty/sys/amd64/conf/GENERIC#20 integrate .. //depot/projects/tty/sys/amd64/conf/NOTES#15 integrate .. //depot/projects/tty/sys/amd64/include/md_var.h#10 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/tty/sys/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/tty/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/tty/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/tty/sys/arm/arm/locore.S#7 integrate .. //depot/projects/tty/sys/arm/arm/pmap.c#16 integrate .. //depot/projects/tty/sys/arm/arm/vm_machdep.c#12 integrate .. //depot/projects/tty/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/tty/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/tty/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/tty/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/tty/sys/arm/conf/IQ31244#5 integrate .. //depot/projects/tty/sys/arm/conf/KB920X#3 integrate .. //depot/projects/tty/sys/arm/conf/SIMICS#5 integrate .. //depot/projects/tty/sys/arm/conf/SKYEYE#3 integrate .. //depot/projects/tty/sys/arm/include/cpuconf.h#5 integrate .. //depot/projects/tty/sys/arm/include/pmap.h#11 integrate .. //depot/projects/tty/sys/arm/sa11x0/assabet_machdep.c#6 integrate .. //depot/projects/tty/sys/arm/sa11x0/uart_cpu_sa1110.c#4 integrate .. //depot/projects/tty/sys/arm/sa11x0/uart_dev_sa1110.c#5 integrate .. //depot/projects/tty/sys/arm/xscale/i80321/iq31244_machdep.c#10 integrate .. //depot/projects/tty/sys/boot/Makefile#10 integrate .. //depot/projects/tty/sys/bsm/audit.h#3 integrate .. //depot/projects/tty/sys/bsm/audit_record.h#2 integrate .. //depot/projects/tty/sys/cam/cam_ccb.h#8 integrate .. //depot/projects/tty/sys/cam/cam_xpt.c#16 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_misc.c#15 integrate .. //depot/projects/tty/sys/compat/linprocfs/linprocfs.c#16 integrate .. //depot/projects/tty/sys/compat/ndis/subr_ndis.c#13 integrate .. //depot/projects/tty/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/tty/sys/conf/Makefile.arm#11 integrate .. //depot/projects/tty/sys/conf/NOTES#35 integrate .. //depot/projects/tty/sys/conf/files#46 integrate .. //depot/projects/tty/sys/conf/files.arm#6 integrate .. //depot/projects/tty/sys/conf/files.powerpc#14 integrate .. //depot/projects/tty/sys/conf/kern.post.mk#22 integrate .. //depot/projects/tty/sys/conf/options#33 integrate .. //depot/projects/tty/sys/conf/options.arm#8 integrate .. //depot/projects/tty/sys/contrib/dev/ath/COPYRIGHT#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/README#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah.h#7 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah_desc.h#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah_devid.h#5 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/freebsd/ah_if.m#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/freebsd/ah_osdep.c#7 integrate .. //depot/projects/tty/sys/contrib/dev/ath/freebsd/ah_osdep.h#5 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/i386-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sh4-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/x86_64-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/version.h#7 integrate .. //depot/projects/tty/sys/contrib/pf/net/if_pfsync.c#11 integrate .. //depot/projects/tty/sys/crypto/via/padlock.c#3 integrate .. //depot/projects/tty/sys/ddb/db_sym.c#5 integrate .. //depot/projects/tty/sys/dev/aac/aac_pci.c#16 integrate .. //depot/projects/tty/sys/dev/acpi_support/acpi_panasonic.c#4 integrate .. //depot/projects/tty/sys/dev/acpica/acpi.c#20 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_battery.c#9 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_thermal.c#10 integrate .. //depot/projects/tty/sys/dev/acpica/acpivar.h#17 integrate .. //depot/projects/tty/sys/dev/ata/ata-chipset.c#29 integrate .. //depot/projects/tty/sys/dev/ath/if_ath.c#18 integrate .. //depot/projects/tty/sys/dev/ath/if_ath_pci.c#9 integrate .. //depot/projects/tty/sys/dev/ath/if_athvar.h#14 integrate .. //depot/projects/tty/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/tty/sys/dev/awi/awi.c#10 integrate .. //depot/projects/tty/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/tty/sys/dev/bge/if_bge.c#28 integrate .. //depot/projects/tty/sys/dev/bge/if_bgereg.h#20 integrate .. //depot/projects/tty/sys/dev/cardbus/cardbus.c#13 integrate .. //depot/projects/tty/sys/dev/cardbus/cardbus_cis.c#13 integrate .. //depot/projects/tty/sys/dev/cm/if_cm_isa.c#8 integrate .. //depot/projects/tty/sys/dev/cm/smc90cx6.c#10 integrate .. //depot/projects/tty/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/tty/sys/dev/cm/smc90cx6var.h#4 integrate .. //depot/projects/tty/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/tty/sys/dev/dc/if_dc.c#6 integrate .. //depot/projects/tty/sys/dev/dc/if_dcreg.h#5 integrate .. //depot/projects/tty/sys/dev/digi/digi.c#12 integrate .. //depot/projects/tty/sys/dev/ed/if_ed.c#17 integrate .. //depot/projects/tty/sys/dev/ed/if_ed_novell.c#6 integrate .. //depot/projects/tty/sys/dev/ed/if_edvar.h#11 integrate .. //depot/projects/tty/sys/dev/em/if_em.c#20 integrate .. //depot/projects/tty/sys/dev/firewire/fwohci_pci.c#16 integrate .. //depot/projects/tty/sys/dev/gem/if_gem.c#13 integrate .. //depot/projects/tty/sys/dev/hifn/hifn7751.c#14 integrate .. //depot/projects/tty/sys/dev/ipw/if_ipw.c#10 integrate .. //depot/projects/tty/sys/dev/ipw/if_ipwvar.h#5 integrate .. //depot/projects/tty/sys/dev/isp/isp_freebsd.h#12 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwi.c#10 integrate .. //depot/projects/tty/sys/dev/le/if_le_pci.c#3 integrate .. //depot/projects/tty/sys/dev/lmc/if_lmc.h#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfi_disk.c#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.c#9 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.h#11 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_cam.c#6 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_pci.c#13 integrate .. //depot/projects/tty/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/tty/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/tty/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/tty/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/tty/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/tty/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/tty/sys/dev/my/if_my.c#16 integrate .. //depot/projects/tty/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/tty/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/tty/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/tty/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/tty/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/tty/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/tty/sys/dev/pccbb/pccbb.c#18 integrate .. //depot/projects/tty/sys/dev/pccbb/pccbb_isa.c#4 integrate .. //depot/projects/tty/sys/dev/pccbb/pccbb_pci.c#9 integrate .. //depot/projects/tty/sys/dev/pccbb/pccbbvar.h#9 integrate .. //depot/projects/tty/sys/dev/puc/pucdata.c#13 integrate .. //depot/projects/tty/sys/dev/ral/rt2560.c#3 integrate .. //depot/projects/tty/sys/dev/ral/rt2661.c#3 integrate .. //depot/projects/tty/sys/dev/safe/safe.c#7 integrate .. //depot/projects/tty/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/tty/sys/dev/sound/driver.c#7 integrate .. //depot/projects/tty/sys/dev/sound/midi/midi.c#6 integrate .. //depot/projects/tty/sys/dev/sound/midi/sequencer.c#6 integrate .. //depot/projects/tty/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/tty/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/tty/sys/dev/sound/pci/cmi.c#12 integrate .. //depot/projects/tty/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/tty/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/tty/sys/dev/sound/pci/es137x.c#12 integrate .. //depot/projects/tty/sys/dev/sound/pci/ich.c#15 integrate .. //depot/projects/tty/sys/dev/sound/pci/maestro.c#8 integrate .. //depot/projects/tty/sys/dev/sound/pci/via8233.c#14 integrate .. //depot/projects/tty/sys/dev/sound/pcm/feeder_rate.c#11 integrate .. //depot/projects/tty/sys/dev/sound/pcm/sound.c#10 integrate .. //depot/projects/tty/sys/dev/sound/pcm/vchan.c#11 integrate .. //depot/projects/tty/sys/dev/ubsec/ubsec.c#13 integrate .. //depot/projects/tty/sys/dev/usb/if_axe.c#14 integrate .. //depot/projects/tty/sys/dev/usb/if_axereg.h#8 integrate .. //depot/projects/tty/sys/dev/usb/if_ural.c#10 integrate .. //depot/projects/tty/sys/dev/usb/ugen.c#12 integrate .. //depot/projects/tty/sys/dev/usb/uhid.c#12 integrate .. //depot/projects/tty/sys/dev/usb/umodem.c#8 integrate .. //depot/projects/tty/sys/dev/usb/uplcom.c#12 integrate .. //depot/projects/tty/sys/dev/usb/usbdevs#22 integrate .. //depot/projects/tty/sys/dev/usb/uscanner.c#11 integrate .. //depot/projects/tty/sys/dev/usb/uvisor.c#12 integrate .. //depot/projects/tty/sys/dev/wi/if_wi.c#18 integrate .. //depot/projects/tty/sys/dev/wl/if_wl.c#13 integrate .. //depot/projects/tty/sys/fs/procfs/procfs.c#6 integrate .. //depot/projects/tty/sys/geom/eli/g_eli.c#6 integrate .. //depot/projects/tty/sys/geom/eli/g_eli.h#3 integrate .. //depot/projects/tty/sys/geom/eli/g_eli_ctl.c#4 integrate .. //depot/projects/tty/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/tty/sys/geom/eli/g_eli_key.c#3 integrate .. //depot/projects/tty/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/tty/sys/geom/geom.h#14 integrate .. //depot/projects/tty/sys/geom/geom_dev.c#13 integrate .. //depot/projects/tty/sys/geom/geom_gpt.c#13 integrate .. //depot/projects/tty/sys/geom/geom_io.c#15 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#3 delete .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#4 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bit.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dfrag.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_trace.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iomap.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_vfsops.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_vnodeops.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/tty/sys/i386/acpica/acpi_machdep.c#12 integrate .. //depot/projects/tty/sys/i386/acpica/acpi_wakecode.S#8 integrate .. //depot/projects/tty/sys/i386/acpica/acpi_wakeup.c#12 integrate .. //depot/projects/tty/sys/i386/conf/DEFAULTS#4 integrate .. //depot/projects/tty/sys/i386/conf/GENERIC#25 integrate .. //depot/projects/tty/sys/i386/conf/NOTES#29 integrate .. //depot/projects/tty/sys/i386/conf/XBOX#4 integrate .. //depot/projects/tty/sys/i386/i386/db_trace.c#11 integrate .. //depot/projects/tty/sys/i386/i386/identcpu.c#18 integrate .. //depot/projects/tty/sys/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/tty/sys/i386/i386/pmap.c#23 integrate .. //depot/projects/tty/sys/i386/i386/trap.c#21 integrate .. //depot/projects/tty/sys/i386/include/specialreg.h#7 integrate .. //depot/projects/tty/sys/i386/linux/linux_dummy.c#7 integrate .. //depot/projects/tty/sys/i386/linux/linux_proto.h#13 integrate .. //depot/projects/tty/sys/i386/linux/linux_syscall.h#13 integrate .. //depot/projects/tty/sys/i386/linux/linux_sysent.c#14 integrate .. //depot/projects/tty/sys/i386/linux/syscalls.master#13 integrate .. //depot/projects/tty/sys/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/tty/sys/ia64/conf/GENERIC#15 integrate .. //depot/projects/tty/sys/ia64/conf/NOTES#6 integrate .. //depot/projects/tty/sys/ia64/conf/SKI#9 integrate .. //depot/projects/tty/sys/ia64/ia64/pmap.c#19 integrate .. //depot/projects/tty/sys/isa/isa_common.c#9 integrate .. //depot/projects/tty/sys/kern/kern_acct.c#12 integrate .. //depot/projects/tty/sys/kern/kern_clock.c#16 integrate .. //depot/projects/tty/sys/kern/kern_event.c#17 integrate .. //depot/projects/tty/sys/kern/kern_linker.c#13 integrate .. //depot/projects/tty/sys/kern/kern_mbuf.c#10 integrate .. //depot/projects/tty/sys/kern/kern_module.c#8 integrate .. //depot/projects/tty/sys/kern/kern_mutex.c#18 integrate .. //depot/projects/tty/sys/kern/kern_switch.c#22 integrate .. //depot/projects/tty/sys/kern/kern_synch.c#19 integrate .. //depot/projects/tty/sys/kern/kern_sysctl.c#14 integrate .. //depot/projects/tty/sys/kern/kern_tc.c#12 integrate .. //depot/projects/tty/sys/kern/link_elf.c#11 integrate .. //depot/projects/tty/sys/kern/link_elf_obj.c#5 integrate .. //depot/projects/tty/sys/kern/sched_4bsd.c#14 integrate .. //depot/projects/tty/sys/kern/sched_core.c#1 branch .. //depot/projects/tty/sys/kern/sched_ule.c#18 integrate .. //depot/projects/tty/sys/kern/subr_bus.c#17 integrate .. //depot/projects/tty/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/tty/sys/kern/subr_kdb.c#7 integrate .. //depot/projects/tty/sys/kern/subr_rman.c#13 integrate .. //depot/projects/tty/sys/kern/sys_pipe.c#14 integrate .. //depot/projects/tty/sys/kern/sysv_msg.c#10 integrate .. //depot/projects/tty/sys/kern/sysv_sem.c#13 integrate .. //depot/projects/tty/sys/kern/sysv_shm.c#16 integrate .. //depot/projects/tty/sys/kern/uipc_mbuf.c#15 integrate .. //depot/projects/tty/sys/kern/uipc_socket.c#21 integrate .. //depot/projects/tty/sys/kern/uipc_socket2.c#18 integrate .. //depot/projects/tty/sys/kern/uipc_syscalls.c#20 integrate .. //depot/projects/tty/sys/kern/uipc_usrreq.c#16 integrate .. //depot/projects/tty/sys/kern/vfs_aio.c#21 integrate .. //depot/projects/tty/sys/kern/vfs_cache.c#12 integrate .. //depot/projects/tty/sys/kern/vfs_init.c#9 integrate .. //depot/projects/tty/sys/kern/vfs_mount.c#23 integrate .. //depot/projects/tty/sys/kern/vfs_subr.c#28 integrate .. //depot/projects/tty/sys/kern/vfs_syscalls.c#23 integrate .. //depot/projects/tty/sys/modules/Makefile#30 integrate .. //depot/projects/tty/sys/modules/ath_hal/Makefile#4 integrate .. //depot/projects/tty/sys/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/tty/sys/modules/geom/geom_eli/Makefile#4 integrate .. //depot/projects/tty/sys/modules/if_bridge/Makefile#4 integrate .. //depot/projects/tty/sys/modules/mxge/Makefile#1 branch .. //depot/projects/tty/sys/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/tty/sys/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/tty/sys/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/tty/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/tty/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/tty/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/tty/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/tty/sys/modules/ppc/Makefile#1 branch .. //depot/projects/tty/sys/modules/sound/driver/Makefile#5 integrate .. //depot/projects/tty/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/tty/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/tty/sys/modules/xfs/Makefile#2 integrate .. //depot/projects/tty/sys/net/bpf.c#20 integrate .. //depot/projects/tty/sys/net/bpf.h#8 integrate .. //depot/projects/tty/sys/net/bpfdesc.h#10 integrate .. //depot/projects/tty/sys/net/if.c#24 integrate .. //depot/projects/tty/sys/net/if.h#13 integrate .. //depot/projects/tty/sys/net/if_bridge.c#11 integrate .. //depot/projects/tty/sys/net/if_clone.c#6 integrate .. //depot/projects/tty/sys/net/if_disc.c#13 integrate .. //depot/projects/tty/sys/net/if_faith.c#15 integrate .. //depot/projects/tty/sys/net/if_fwsubr.c#8 integrate .. //depot/projects/tty/sys/net/if_gif.c#13 integrate .. //depot/projects/tty/sys/net/if_gre.c#15 integrate .. //depot/projects/tty/sys/net/if_loop.c#17 integrate .. //depot/projects/tty/sys/net/if_media.h#9 integrate .. //depot/projects/tty/sys/net/if_sl.c#10 integrate .. //depot/projects/tty/sys/net/if_stf.c#14 integrate .. //depot/projects/tty/sys/net/if_tun.c#14 integrate .. //depot/projects/tty/sys/net/if_var.h#14 integrate .. //depot/projects/tty/sys/net/if_vlan.c#15 integrate .. //depot/projects/tty/sys/net/raw_cb.c#7 integrate .. //depot/projects/tty/sys/net/raw_usrreq.c#8 integrate .. //depot/projects/tty/sys/net/route.c#15 integrate .. //depot/projects/tty/sys/net80211/ieee80211_freebsd.c#6 integrate .. //depot/projects/tty/sys/net80211/ieee80211_input.c#15 integrate .. //depot/projects/tty/sys/netatalk/COPYRIGHT#3 integrate .. //depot/projects/tty/sys/netgraph/atm/uni/ng_uni_cust.h#4 integrate .. //depot/projects/tty/sys/netgraph/netgraph.h#13 integrate .. //depot/projects/tty/sys/netgraph/ng_base.c#16 integrate .. //depot/projects/tty/sys/netgraph/ng_iface.c#12 integrate .. //depot/projects/tty/sys/netgraph/ng_socket.c#15 integrate .. //depot/projects/tty/sys/netinet/if_ether.c#16 integrate .. //depot/projects/tty/sys/netinet/in_pcb.c#18 integrate .. //depot/projects/tty/sys/netinet/ip_carp.c#8 integrate .. //depot/projects/tty/sys/netinet/ip_dummynet.c#16 integrate .. //depot/projects/tty/sys/netinet/ip_fw2.c#29 integrate .. //depot/projects/tty/sys/netinet/ip_gre.c#10 integrate .. //depot/projects/tty/sys/netinet/tcp_input.c#25 integrate .. //depot/projects/tty/sys/netinet/tcp_seq.h#7 integrate .. //depot/projects/tty/sys/netinet/tcp_syncache.c#17 integrate .. //depot/projects/tty/sys/netinet/tcp_timer.c#15 integrate .. //depot/projects/tty/sys/netinet/tcp_usrreq.c#17 integrate .. //depot/projects/tty/sys/netinet/tcp_var.h#19 integrate .. //depot/projects/tty/sys/netinet/udp_usrreq.c#19 integrate .. //depot/projects/tty/sys/netinet6/in6.c#13 integrate .. //depot/projects/tty/sys/netinet6/nd6.c#15 integrate .. //depot/projects/tty/sys/netipsec/ipsec.c#10 integrate .. //depot/projects/tty/sys/netipsec/ipsec_input.c#8 integrate .. //depot/projects/tty/sys/nfsserver/nfs_serv.c#15 integrate .. //depot/projects/tty/sys/nfsserver/nfs_srvsubs.c#11 integrate .. //depot/projects/tty/sys/opencrypto/criov.c#5 integrate .. //depot/projects/tty/sys/opencrypto/crypto.c#9 integrate .. //depot/projects/tty/sys/opencrypto/cryptodev.h#8 integrate .. //depot/projects/tty/sys/opencrypto/cryptosoft.c#8 integrate .. //depot/projects/tty/sys/opencrypto/xform.c#7 integrate .. //depot/projects/tty/sys/pc98/conf/DEFAULTS#4 integrate .. //depot/projects/tty/sys/pc98/conf/GENERIC#18 integrate .. //depot/projects/tty/sys/pc98/conf/NOTES#21 integrate .. //depot/projects/tty/sys/pc98/pc98/machdep.c#9 integrate .. //depot/projects/tty/sys/posix4/ksched.c#7 integrate .. //depot/projects/tty/sys/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/tty/sys/powerpc/conf/GENERIC#15 integrate .. //depot/projects/tty/sys/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/tty/sys/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/tty/sys/powerpc/powerpc/pmap_dispatch.c#4 integrate .. //depot/projects/tty/sys/security/audit/audit.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_arg.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm_klib.c#3 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_ioctl.h#2 integrate .. //depot/projects/tty/sys/security/audit/audit_pipe.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_private.h#2 integrate .. //depot/projects/tty/sys/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_trigger.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_worker.c#2 integrate .. //depot/projects/tty/sys/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/tty/sys/sparc64/conf/GENERIC#20 integrate .. //depot/projects/tty/sys/sparc64/include/_bus.h#2 integrate .. //depot/projects/tty/sys/sparc64/include/bus.h#12 integrate .. //depot/projects/tty/sys/sparc64/isa/isa.c#8 integrate .. //depot/projects/tty/sys/sparc64/sbus/sbus.c#15 integrate .. //depot/projects/tty/sys/sparc64/sparc64/pmap.c#18 integrate .. //depot/projects/tty/sys/sys/firmware.h#2 integrate .. //depot/projects/tty/sys/sys/linker.h#7 integrate .. //depot/projects/tty/sys/sys/mutex.h#14 integrate .. //depot/projects/tty/sys/sys/protosw.h#9 integrate .. //depot/projects/tty/sys/sys/rman.h#9 integrate .. //depot/projects/tty/sys/sys/sched.h#11 integrate .. //depot/projects/tty/sys/sys/socketvar.h#16 integrate .. //depot/projects/tty/sys/sys/sockio.h#5 integrate .. //depot/projects/tty/sys/sys/sx.h#7 integrate .. //depot/projects/tty/sys/sys/syscallsubr.h#15 integrate .. //depot/projects/tty/sys/sys/sysctl.h#11 integrate .. //depot/projects/tty/sys/tools/fw_stub.awk#3 integrate .. //depot/projects/tty/sys/ufs/ffs/ffs_vfsops.c#22 integrate .. //depot/projects/tty/sys/vm/pmap.h#13 integrate .. //depot/projects/tty/sys/vm/vm_fault.c#17 integrate .. //depot/projects/tty/sys/vm/vm_map.c#18 integrate .. //depot/projects/tty/sys/vm/vm_meter.c#10 integrate .. //depot/projects/tty/sys/vm/vm_mmap.c#12 integrate .. //depot/projects/tty/tools/regression/geom_eli/init-a.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/init.t#2 integrate .. //depot/projects/tty/tools/regression/geom_eli/integrity-copy.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/integrity-data.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/integrity-hmac.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/onetime-a.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/onetime.t#2 integrate .. //depot/projects/tty/tools/regression/ipsec/ipsec.t#1 branch .. //depot/projects/tty/tools/tools/ipw/Makefile#1 branch .. //depot/projects/tty/tools/tools/ipw/ipwstats.c#1 branch .. //depot/projects/tty/tools/tools/mfc/mfc.pl#2 integrate .. //depot/projects/tty/usr.bin/file/config.h#5 integrate .. //depot/projects/tty/usr.bin/kdump/mkioctls#6 integrate .. //depot/projects/tty/usr.bin/locate/locate/locate.c#3 integrate .. //depot/projects/tty/usr.bin/top/machine.c#8 integrate .. //depot/projects/tty/usr.bin/vmstat/vmstat.c#12 integrate .. //depot/projects/tty/usr.sbin/adduser/adduser.8#7 integrate .. //depot/projects/tty/usr.sbin/asf/Makefile#2 integrate .. //depot/projects/tty/usr.sbin/asf/asf.8#6 integrate .. //depot/projects/tty/usr.sbin/asf/asf.c#5 integrate .. //depot/projects/tty/usr.sbin/asf/asf.h#1 branch .. //depot/projects/tty/usr.sbin/asf/asf_kld.c#1 branch .. //depot/projects/tty/usr.sbin/asf/asf_kvm.c#1 branch .. //depot/projects/tty/usr.sbin/asf/asf_prog.c#1 branch .. //depot/projects/tty/usr.sbin/config/config.y#12 integrate .. //depot/projects/tty/usr.sbin/config/main.c#11 integrate .. //depot/projects/tty/usr.sbin/config/mkmakefile.c#10 integrate .. //depot/projects/tty/usr.sbin/config/mkoptions.c#6 integrate .. //depot/projects/tty/usr.sbin/cron/cron/do_command.c#6 integrate .. //depot/projects/tty/usr.sbin/cron/cron/popen.c#3 integrate .. //depot/projects/tty/usr.sbin/jail/jail.8#22 integrate .. //depot/projects/tty/usr.sbin/mailwrapper/Makefile#5 integrate .. //depot/projects/tty/usr.sbin/mailwrapper/mailwrapper.c#3 integrate .. //depot/projects/tty/usr.sbin/mountd/mountd.c#13 integrate .. //depot/projects/tty/usr.sbin/ntp/doc/ntp.conf.5#7 integrate .. //depot/projects/tty/usr.sbin/pkg_install/add/main.c#10 integrate .. //depot/projects/tty/usr.sbin/pkg_install/create/main.c#7 integrate .. //depot/projects/tty/usr.sbin/pkg_install/delete/main.c#4 integrate .. //depot/projects/tty/usr.sbin/pkg_install/info/main.c#8 integrate .. //depot/projects/tty/usr.sbin/pkg_install/lib/global.c#3 integrate .. //depot/projects/tty/usr.sbin/pkg_install/lib/lib.h#9 integrate .. //depot/projects/tty/usr.sbin/pkg_install/version/main.c#6 integrate .. //depot/projects/tty/usr.sbin/ypserv/Makefile.yp#6 integrate .. //depot/projects/tty/usr.sbin/ypserv/yp_server.c#4 integrate .. //depot/projects/tty/usr.sbin/ypserv/ypinit.8#3 integrate Differences ... ==== //depot/projects/tty/MAINTAINERS#20 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.134 2006/06/01 05:06:54 mjacob Exp $ +$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -44,14 +44,6 @@ witness jhb Pre-commit review requested. twe aradford@amcc.com Pre-commit review requested twa aradford@amcc.com Pre-commit review requested -busdma scottl Pre-commit review requested. -aac scottl Pre-commit review requested. -udf scottl Pre-commit review requested. -ips scottl Pre-commit review requested. -iir scottl Pre-commit review requested. -mlx scottl Pre-commit review requested. -mly scottl Pre-commit review requested. -maestro3 scottl Pre-commit review requested. CAM gibbs, ken Pre-commit review requested. send to scsi@freebsd.org devstat(9) ken Pre-commit review requested. ==== //depot/projects/tty/Makefile#18 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.330 2006/05/26 18:10:06 netchild Exp $ +# $FreeBSD: src/Makefile,v 1.333 2006/06/21 09:53:42 obrien Exp $ # # The user-driven targets are: # @@ -8,7 +8,7 @@ # buildworld - Rebuild *everything*, including glue to help do # upgrades. # installworld - Install everything built by "buildworld". -# world - buildworld + installworld. +# world - buildworld + installworld, no kernel. # buildkernel - Rebuild the kernel and the kernel-modules. # installkernel - Install the kernel and the kernel-modules. # installkernel.debug @@ -37,7 +37,8 @@ # system, the simple instructions are: # # 1. `cd /usr/src' (or to the directory containing your source tree). -# 2. `make world' +# 2. Define `HISTORICAL_MAKE_WORLD' variable (see README). +# 3. `make world' # # For individuals wanting to upgrade their sources (even if only a # delta of a few days): @@ -46,6 +47,7 @@ # 2. `make buildworld' # 3. `make buildkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC). # 4. `make installkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC). +# [steps 3. & 4. can be combined by using the "kernel" target] # 5. `reboot' (in single user mode: boot -s from the loader prompt). # 6. `mergemaster -p' # 7. `make installworld' @@ -68,9 +70,9 @@ # developer convenience only. They are intentionally not documented and # completely subject to change without notice. # -TGTS= all all-man buildenv buildkernel buildworld check-old checkdpadd \ - clean cleandepend cleandir delete-old delete-old-libs depend \ - distribute distributeworld distrib-dirs distribution doxygen \ +TGTS= all all-man buildenv buildenvvars buildkernel buildworld check-old \ + checkdpadd clean cleandepend cleandir delete-old delete-old-libs \ + depend distribute distributeworld distrib-dirs distribution doxygen \ everything hierarchy install installcheck installkernel \ installkernel.debug reinstallkernel reinstallkernel.debug \ installworld kernel-toolchain libraries lint maninstall \ ==== //depot/projects/tty/Makefile.inc1#30 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.547 2006/05/26 18:10:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.549 2006/06/06 18:07:58 imp Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -468,6 +468,16 @@ buildworld: ${WMAKE_TGTS} .ORDER: ${WMAKE_TGTS} + +# +# We need to have this as a target because the indirection between Makefile +# and Makefile.inc1 causes the correct PATH to be used, rather than a +# modification of the current environment's PATH. In addition, we need +# to quote multiword values. +# +buildenvvars: + @echo ${WMAKEENV:Q} + buildenv: @echo Entering world for ${TARGET_ARCH}:${TARGET} @cd ${.CURDIR} && env ${WMAKEENV} sh || true >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 00:30:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9135A16A526; Thu, 22 Jun 2006 00:30:11 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 11D1416A47D for ; Thu, 22 Jun 2006 00:30:10 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4EC6B43D49 for ; Thu, 22 Jun 2006 00:30:10 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M0UAoM056228 for ; Thu, 22 Jun 2006 00:30:10 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M0T9kF056202 for perforce@freebsd.org; Thu, 22 Jun 2006 00:29:09 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 00:29:09 GMT Message-Id: <200606220029.k5M0T9kF056202@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 99787 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 00:30:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=99787 Change 99787 by marcel@marcel_nfs on 2006/06/22 00:28:39 IFC @99784 Affected files ... .. //depot/projects/tty/MAINTAINERS#20 integrate .. //depot/projects/tty/Makefile#18 integrate .. //depot/projects/tty/Makefile.inc1#30 integrate .. //depot/projects/tty/README#4 integrate .. //depot/projects/tty/bin/setfacl/setfacl.1#7 integrate .. //depot/projects/tty/bin/setfacl/setfacl.c#5 integrate .. //depot/projects/tty/bin/sh/cd.c#4 integrate .. //depot/projects/tty/bin/sh/eval.c#7 integrate .. //depot/projects/tty/bin/sh/sh.1#15 integrate .. //depot/projects/tty/bin/sh/var.c#9 integrate .. //depot/projects/tty/bin/sh/var.h#4 integrate .. //depot/projects/tty/contrib/binutils/bfd/elf64-sparc.c#3 integrate .. //depot/projects/tty/contrib/file/ChangeLog#3 integrate .. //depot/projects/tty/contrib/file/FREEBSD-upgrade#2 integrate .. //depot/projects/tty/contrib/file/Magdir/adventure#3 integrate .. //depot/projects/tty/contrib/file/Magdir/amigaos#3 integrate .. //depot/projects/tty/contrib/file/Magdir/animation#4 integrate .. //depot/projects/tty/contrib/file/Magdir/apple#3 integrate .. //depot/projects/tty/contrib/file/Magdir/archive#5 integrate .. //depot/projects/tty/contrib/file/Magdir/audio#5 integrate .. //depot/projects/tty/contrib/file/Magdir/basis#1 branch .. //depot/projects/tty/contrib/file/Magdir/bflt#1 branch .. //depot/projects/tty/contrib/file/Magdir/bout#2 integrate .. //depot/projects/tty/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/tty/contrib/file/Magdir/c64#2 integrate .. //depot/projects/tty/contrib/file/Magdir/cad#2 integrate .. //depot/projects/tty/contrib/file/Magdir/commands#3 integrate .. //depot/projects/tty/contrib/file/Magdir/compress#4 integrate .. //depot/projects/tty/contrib/file/Magdir/console#4 integrate .. //depot/projects/tty/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/tty/contrib/file/Magdir/ctags#3 integrate .. //depot/projects/tty/contrib/file/Magdir/database#3 integrate .. //depot/projects/tty/contrib/file/Magdir/diff#3 integrate .. //depot/projects/tty/contrib/file/Magdir/digital#2 integrate .. //depot/projects/tty/contrib/file/Magdir/dump#2 integrate .. //depot/projects/tty/contrib/file/Magdir/elf#5 integrate .. //depot/projects/tty/contrib/file/Magdir/filesystems#5 integrate .. //depot/projects/tty/contrib/file/Magdir/flash#4 integrate .. //depot/projects/tty/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/tty/contrib/file/Magdir/gnu#3 integrate .. //depot/projects/tty/contrib/file/Magdir/iff#3 integrate .. //depot/projects/tty/contrib/file/Magdir/images#4 integrate .. //depot/projects/tty/contrib/file/Magdir/java#2 integrate .. //depot/projects/tty/contrib/file/Magdir/linux#4 integrate .. //depot/projects/tty/contrib/file/Magdir/lisp#3 integrate .. //depot/projects/tty/contrib/file/Magdir/mach#3 integrate .. //depot/projects/tty/contrib/file/Magdir/macintosh#4 integrate .. //depot/projects/tty/contrib/file/Magdir/mail.news#3 integrate .. //depot/projects/tty/contrib/file/Magdir/maple#3 integrate .. //depot/projects/tty/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/tty/contrib/file/Magdir/msdos#5 integrate .. //depot/projects/tty/contrib/file/Magdir/mup#1 branch .. //depot/projects/tty/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/tty/contrib/file/Magdir/perl#4 integrate .. //depot/projects/tty/contrib/file/Magdir/printer#3 integrate .. //depot/projects/tty/contrib/file/Magdir/psion#2 integrate .. //depot/projects/tty/contrib/file/Magdir/python#4 integrate .. //depot/projects/tty/contrib/file/Magdir/riff#3 integrate .. //depot/projects/tty/contrib/file/Magdir/scientific#1 branch .. //depot/projects/tty/contrib/file/Magdir/sgi#3 integrate .. //depot/projects/tty/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/tty/contrib/file/Magdir/sql#2 integrate .. //depot/projects/tty/contrib/file/Magdir/varied.out#3 integrate .. //depot/projects/tty/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/tty/contrib/file/Makefile.am#5 integrate .. //depot/projects/tty/contrib/file/Makefile.in#5 integrate .. //depot/projects/tty/contrib/file/aclocal.m4#5 integrate .. //depot/projects/tty/contrib/file/apprentice.c#5 integrate .. //depot/projects/tty/contrib/file/ascmagic.c#5 integrate .. //depot/projects/tty/contrib/file/compress.c#4 integrate .. //depot/projects/tty/contrib/file/config.h.in#5 integrate .. //depot/projects/tty/contrib/file/configure#5 integrate .. //depot/projects/tty/contrib/file/configure.in#5 integrate .. //depot/projects/tty/contrib/file/file.c#5 integrate .. //depot/projects/tty/contrib/file/file.h#5 integrate .. //depot/projects/tty/contrib/file/file.man#4 integrate .. //depot/projects/tty/contrib/file/fsmagic.c#4 integrate .. //depot/projects/tty/contrib/file/funcs.c#3 integrate .. //depot/projects/tty/contrib/file/libmagic.man#2 integrate .. //depot/projects/tty/contrib/file/magic.c#3 integrate .. //depot/projects/tty/contrib/file/magic.man#4 integrate .. //depot/projects/tty/contrib/file/magic.mime#5 integrate .. //depot/projects/tty/contrib/file/magic2mime#3 integrate .. //depot/projects/tty/contrib/file/patchlevel.h#5 integrate .. //depot/projects/tty/contrib/file/print.c#5 integrate .. //depot/projects/tty/contrib/file/readelf.c#5 integrate .. //depot/projects/tty/contrib/file/readelf.h#4 integrate .. //depot/projects/tty/contrib/file/softmagic.c#5 integrate .. //depot/projects/tty/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/tty/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/README#2 integrate .. //depot/projects/tty/contrib/openbsm/TODO#2 integrate .. //depot/projects/tty/contrib/openbsm/VERSION#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/auditd/auditd.c#2 integrate .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/tty/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/audit.h#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/tty/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/libbsm.h#2 integrate .. //depot/projects/tty/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/tty/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/tty/contrib/openbsm/configure#2 integrate .. //depot/projects/tty/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/tty/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/tty/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/tty/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_audit.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_io.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_token.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_wrappers.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/tty/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/tty/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/tty/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/tty/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/tty/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/tty/contrib/pf/man/pfsync.4#7 integrate .. //depot/projects/tty/contrib/sendmail/FREEBSD-upgrade#11 integrate .. //depot/projects/tty/contrib/sendmail/PGPKEYS#7 integrate .. //depot/projects/tty/contrib/sendmail/RELEASE_NOTES#11 integrate .. //depot/projects/tty/contrib/sendmail/cf/README#10 integrate .. //depot/projects/tty/contrib/sendmail/cf/cf/submit.cf#11 integrate .. //depot/projects/tty/contrib/sendmail/cf/cf/submit.mc#5 integrate .. //depot/projects/tty/contrib/sendmail/cf/feature/dnsbl.m4#4 integrate .. //depot/projects/tty/contrib/sendmail/cf/feature/enhdnsbl.m4#3 integrate .. //depot/projects/tty/contrib/sendmail/cf/m4/proto.m4#9 integrate .. //depot/projects/tty/contrib/sendmail/cf/m4/version.m4#11 integrate .. //depot/projects/tty/contrib/sendmail/include/libmilter/mfapi.h#6 integrate .. //depot/projects/tty/contrib/sendmail/libmilter/docs/xxfi_header.html#4 integrate .. //depot/projects/tty/contrib/sendmail/libmilter/engine.c#7 integrate .. //depot/projects/tty/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/tty/contrib/sendmail/src/README#11 integrate .. //depot/projects/tty/contrib/sendmail/src/bf.c#5 integrate .. //depot/projects/tty/contrib/sendmail/src/collect.c#9 integrate .. //depot/projects/tty/contrib/sendmail/src/conf.c#13 integrate .. //depot/projects/tty/contrib/sendmail/src/daemon.c#10 integrate .. //depot/projects/tty/contrib/sendmail/src/deliver.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/domain.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/envelope.c#6 integrate .. //depot/projects/tty/contrib/sendmail/src/headers.c#12 integrate .. //depot/projects/tty/contrib/sendmail/src/helpfile#4 integrate .. //depot/projects/tty/contrib/sendmail/src/main.c#9 integrate .. //depot/projects/tty/contrib/sendmail/src/map.c#8 integrate .. //depot/projects/tty/contrib/sendmail/src/mci.c#10 integrate .. //depot/projects/tty/contrib/sendmail/src/mime.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/parseaddr.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/queue.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/savemail.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/sendmail.h#11 integrate .. //depot/projects/tty/contrib/sendmail/src/sfsasl.c#7 integrate .. //depot/projects/tty/contrib/sendmail/src/sfsasl.h#3 integrate .. //depot/projects/tty/contrib/sendmail/src/srvrsmtp.c#11 integrate .. //depot/projects/tty/contrib/sendmail/src/tls.c#10 integrate .. //depot/projects/tty/contrib/sendmail/src/util.c#8 integrate .. //depot/projects/tty/contrib/sendmail/src/version.c#11 integrate .. //depot/projects/tty/contrib/tcpdump/tcpdump.1#6 integrate .. //depot/projects/tty/contrib/traceroute/traceroute.8#4 integrate .. //depot/projects/tty/contrib/traceroute/traceroute.c#6 integrate .. //depot/projects/tty/crypto/openssh/config.h#8 integrate .. //depot/projects/tty/crypto/openssh/loginrec.c#9 integrate .. //depot/projects/tty/etc/defaults/rc.conf#22 integrate .. //depot/projects/tty/etc/periodic/daily/470.status-named#4 integrate .. //depot/projects/tty/etc/rc.d/abi#7 integrate .. //depot/projects/tty/etc/rc.d/auditd#2 integrate .. //depot/projects/tty/etc/rc.d/cached#2 integrate .. //depot/projects/tty/etc/rc.d/ldconfig#8 integrate .. //depot/projects/tty/etc/rc.d/pf#6 integrate .. //depot/projects/tty/etc/rc.subr#14 integrate .. //depot/projects/tty/etc/sendmail/freebsd.mc#6 integrate .. //depot/projects/tty/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/tty/games/fortune/datfiles/fortunes#25 integrate .. //depot/projects/tty/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/tty/lib/libbsm/Makefile#2 integrate .. //depot/projects/tty/lib/libc/gen/glob.c#6 integrate .. //depot/projects/tty/lib/libc/i386/gen/_ctx_start.S#3 integrate .. //depot/projects/tty/lib/libc/stdlib/malloc.c#15 integrate .. //depot/projects/tty/lib/libc/string/strlcpy.c#4 integrate .. //depot/projects/tty/lib/libc/sys/mincore.2#4 integrate .. //depot/projects/tty/lib/libc/sys/stat.2#8 integrate .. //depot/projects/tty/lib/libfetch/ftp.c#9 integrate .. //depot/projects/tty/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/tty/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/tty/lib/libmagic/Makefile#5 integrate .. //depot/projects/tty/lib/libmagic/config.h#3 integrate .. //depot/projects/tty/lib/libpthread/thread/thr_private.h#16 integrate .. //depot/projects/tty/lib/libpthread/thread/thr_sig.c#12 integrate .. //depot/projects/tty/lib/libpthread/thread/thr_sigaction.c#7 integrate .. //depot/projects/tty/lib/libsdp/sdp.h#4 integrate .. //depot/projects/tty/lib/libsdp/util.c#5 integrate .. //depot/projects/tty/lib/libthr/thread/thr_mutex.c#12 integrate .. //depot/projects/tty/lib/libthr/thread/thr_private.h#12 integrate .. //depot/projects/tty/lib/libutil/Makefile#9 integrate .. //depot/projects/tty/lib/libutil/login_class.3#5 integrate .. //depot/projects/tty/libexec/ftpd/Makefile#7 integrate .. //depot/projects/tty/libexec/ftpd/ftpcmd.y#7 integrate .. //depot/projects/tty/release/Makefile#25 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#23 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#4 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#37 integrate .. //depot/projects/tty/release/doc/share/misc/dev.archlist.txt#13 integrate .. //depot/projects/tty/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#8 integrate .. //depot/projects/tty/sbin/devfs/devfs.c#3 integrate .. //depot/projects/tty/sbin/fdisk/fdisk.c#11 integrate .. //depot/projects/tty/sbin/ffsinfo/ffsinfo.8#6 integrate .. //depot/projects/tty/sbin/fsdb/fsdb.8#6 integrate .. //depot/projects/tty/sbin/fsdb/fsdb.c#7 integrate .. //depot/projects/tty/sbin/geom/class/eli/geli.8#4 integrate .. //depot/projects/tty/sbin/geom/class/eli/geom_eli.c#5 integrate .. //depot/projects/tty/sbin/ggate/ggatec/ggatec.8#5 integrate .. //depot/projects/tty/sbin/ifconfig/Makefile#7 integrate .. //depot/projects/tty/sbin/ifconfig/ifconfig.8#18 integrate .. //depot/projects/tty/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/tty/sbin/ifconfig/ifpfsync.c#3 integrate .. //depot/projects/tty/sbin/init/init.c#5 integrate .. //depot/projects/tty/sbin/ipfw/ipfw.8#25 integrate .. //depot/projects/tty/sbin/ipfw/ipfw2.c#22 integrate .. //depot/projects/tty/sbin/mount/mount.c#12 integrate .. //depot/projects/tty/share/examples/diskless/clone_root#3 integrate .. //depot/projects/tty/share/man/man4/Makefile#27 integrate .. //depot/projects/tty/share/man/man4/aac.4#9 integrate .. //depot/projects/tty/share/man/man4/acpi.4#15 integrate .. //depot/projects/tty/share/man/man4/adv.4#4 integrate .. //depot/projects/tty/share/man/man4/adw.4#4 integrate .. //depot/projects/tty/share/man/man4/altq.4#8 integrate .. //depot/projects/tty/share/man/man4/amd.4#3 integrate .. //depot/projects/tty/share/man/man4/amr.4#12 integrate .. //depot/projects/tty/share/man/man4/audit.4#2 integrate .. //depot/projects/tty/share/man/man4/auditpipe.4#1 branch .. //depot/projects/tty/share/man/man4/bge.4#16 integrate .. //depot/projects/tty/share/man/man4/bt.4#5 integrate .. //depot/projects/tty/share/man/man4/carp.4#5 integrate .. //depot/projects/tty/share/man/man4/cpufreq.4#5 integrate .. //depot/projects/tty/share/man/man4/dpt.4#7 integrate .. //depot/projects/tty/share/man/man4/esp.4#3 integrate .. //depot/projects/tty/share/man/man4/if_bridge.4#11 integrate .. //depot/projects/tty/share/man/man4/iir.4#7 integrate .. //depot/projects/tty/share/man/man4/ips.4#3 integrate .. //depot/projects/tty/share/man/man4/ktr.4#4 integrate .. //depot/projects/tty/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/tty/share/man/man4/man4.alpha/linux.4#2 delete .. //depot/projects/tty/share/man/man4/man4.alpha/osf1.4#4 delete .. //depot/projects/tty/share/man/man4/man4.i386/linux.4#4 integrate .. //depot/projects/tty/share/man/man4/man4.i386/padlock.4#3 integrate .. //depot/projects/tty/share/man/man4/mpt.4#6 integrate .. //depot/projects/tty/share/man/man4/mxge.4#1 branch .. //depot/projects/tty/share/man/man4/myri10ge.4#2 delete .. //depot/projects/tty/share/man/man4/ncr.4#4 integrate .. //depot/projects/tty/share/man/man4/ncv.4#4 integrate .. //depot/projects/tty/share/man/man4/nsp.4#4 integrate .. //depot/projects/tty/share/man/man4/sched_4bsd.4#3 integrate .. //depot/projects/tty/share/man/man4/sched_core.4#1 branch .. //depot/projects/tty/share/man/man4/sched_ule.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_csa.4#6 integrate .. //depot/projects/tty/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/tty/share/man/man4/snd_gusc.4#5 integrate .. //depot/projects/tty/share/man/man4/snd_ich.4#5 integrate .. //depot/projects/tty/share/man/man4/snd_sbc.4#7 integrate .. //depot/projects/tty/share/man/man4/stg.4#4 integrate .. //depot/projects/tty/share/man/man4/sym.4#6 integrate .. //depot/projects/tty/share/man/man4/umodem.4#4 integrate .. //depot/projects/tty/share/man/man4/uscanner.4#8 integrate .. //depot/projects/tty/share/man/man4/uvisor.4#5 integrate .. //depot/projects/tty/share/man/man4/vinum.4#7 integrate .. //depot/projects/tty/share/man/man5/mailer.conf.5#5 integrate .. //depot/projects/tty/share/man/man7/build.7#13 integrate .. //depot/projects/tty/share/man/man8/rc.subr.8#7 integrate .. //depot/projects/tty/share/man/man9/crypto.9#7 integrate .. //depot/projects/tty/share/man/man9/lock.9#4 integrate .. //depot/projects/tty/share/man/man9/vflush.9#5 integrate .. //depot/projects/tty/share/man/man9/vgone.9#3 integrate .. //depot/projects/tty/share/mk/bsd.README#10 integrate .. //depot/projects/tty/share/monetdef/pt_PT.ISO8859-1.src#2 integrate .. //depot/projects/tty/sys/amd64/amd64/fpu.c#8 integrate .. //depot/projects/tty/sys/amd64/amd64/initcpu.c#6 integrate .. //depot/projects/tty/sys/amd64/amd64/machdep.c#19 integrate .. //depot/projects/tty/sys/amd64/amd64/pmap.c#18 integrate .. //depot/projects/tty/sys/amd64/amd64/trap.c#18 integrate .. //depot/projects/tty/sys/amd64/conf/DEFAULTS#4 integrate .. //depot/projects/tty/sys/amd64/conf/GENERIC#20 integrate .. //depot/projects/tty/sys/amd64/conf/NOTES#15 integrate .. //depot/projects/tty/sys/amd64/include/md_var.h#10 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/tty/sys/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/tty/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/tty/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/tty/sys/arm/arm/locore.S#7 integrate .. //depot/projects/tty/sys/arm/arm/pmap.c#16 integrate .. //depot/projects/tty/sys/arm/arm/vm_machdep.c#12 integrate .. //depot/projects/tty/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/tty/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/tty/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/tty/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/tty/sys/arm/conf/IQ31244#5 integrate .. //depot/projects/tty/sys/arm/conf/KB920X#3 integrate .. //depot/projects/tty/sys/arm/conf/SIMICS#5 integrate .. //depot/projects/tty/sys/arm/conf/SKYEYE#3 integrate .. //depot/projects/tty/sys/arm/include/cpuconf.h#5 integrate .. //depot/projects/tty/sys/arm/include/pmap.h#11 integrate .. //depot/projects/tty/sys/arm/sa11x0/assabet_machdep.c#6 integrate .. //depot/projects/tty/sys/arm/sa11x0/uart_cpu_sa1110.c#4 integrate .. //depot/projects/tty/sys/arm/sa11x0/uart_dev_sa1110.c#5 integrate .. //depot/projects/tty/sys/arm/xscale/i80321/iq31244_machdep.c#10 integrate .. //depot/projects/tty/sys/boot/Makefile#10 integrate .. //depot/projects/tty/sys/bsm/audit.h#3 integrate .. //depot/projects/tty/sys/bsm/audit_record.h#2 integrate .. //depot/projects/tty/sys/cam/cam_ccb.h#8 integrate .. //depot/projects/tty/sys/cam/cam_xpt.c#16 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_misc.c#15 integrate .. //depot/projects/tty/sys/compat/linprocfs/linprocfs.c#16 integrate .. //depot/projects/tty/sys/compat/ndis/subr_ndis.c#13 integrate .. //depot/projects/tty/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/tty/sys/conf/Makefile.arm#11 integrate .. //depot/projects/tty/sys/conf/NOTES#35 integrate .. //depot/projects/tty/sys/conf/files#46 integrate .. //depot/projects/tty/sys/conf/files.arm#6 integrate .. //depot/projects/tty/sys/conf/files.powerpc#14 integrate .. //depot/projects/tty/sys/conf/kern.post.mk#22 integrate .. //depot/projects/tty/sys/conf/options#33 integrate .. //depot/projects/tty/sys/conf/options.arm#8 integrate .. //depot/projects/tty/sys/contrib/dev/ath/COPYRIGHT#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/README#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah.h#7 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah_desc.h#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah_devid.h#5 integrate .. //depot/projects/tty/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/freebsd/ah_if.m#4 integrate .. //depot/projects/tty/sys/contrib/dev/ath/freebsd/ah_osdep.c#7 integrate .. //depot/projects/tty/sys/contrib/dev/ath/freebsd/ah_osdep.h#5 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/i386-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sh4-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/x86_64-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-be-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-le-elf.inc#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#3 integrate .. //depot/projects/tty/sys/contrib/dev/ath/version.h#7 integrate .. //depot/projects/tty/sys/contrib/pf/net/if_pfsync.c#11 integrate .. //depot/projects/tty/sys/crypto/via/padlock.c#3 integrate .. //depot/projects/tty/sys/ddb/db_sym.c#5 integrate .. //depot/projects/tty/sys/dev/aac/aac_pci.c#16 integrate .. //depot/projects/tty/sys/dev/acpi_support/acpi_panasonic.c#4 integrate .. //depot/projects/tty/sys/dev/acpica/acpi.c#20 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_battery.c#9 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_thermal.c#10 integrate .. //depot/projects/tty/sys/dev/acpica/acpivar.h#17 integrate .. //depot/projects/tty/sys/dev/ata/ata-chipset.c#29 integrate .. //depot/projects/tty/sys/dev/ath/if_ath.c#18 integrate .. //depot/projects/tty/sys/dev/ath/if_ath_pci.c#9 integrate .. //depot/projects/tty/sys/dev/ath/if_athvar.h#14 integrate .. //depot/projects/tty/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/tty/sys/dev/awi/awi.c#10 integrate .. //depot/projects/tty/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/tty/sys/dev/bge/if_bge.c#28 integrate .. //depot/projects/tty/sys/dev/bge/if_bgereg.h#20 integrate .. //depot/projects/tty/sys/dev/cardbus/cardbus.c#13 integrate .. //depot/projects/tty/sys/dev/cardbus/cardbus_cis.c#13 integrate .. //depot/projects/tty/sys/dev/cm/if_cm_isa.c#8 integrate .. //depot/projects/tty/sys/dev/cm/smc90cx6.c#10 integrate .. //depot/projects/tty/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/tty/sys/dev/cm/smc90cx6var.h#4 integrate .. //depot/projects/tty/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/tty/sys/dev/dc/if_dc.c#6 integrate .. //depot/projects/tty/sys/dev/dc/if_dcreg.h#5 integrate .. //depot/projects/tty/sys/dev/digi/digi.c#12 integrate .. //depot/projects/tty/sys/dev/ed/if_ed.c#17 integrate .. //depot/projects/tty/sys/dev/ed/if_ed_novell.c#6 integrate .. //depot/projects/tty/sys/dev/ed/if_edvar.h#11 integrate .. //depot/projects/tty/sys/dev/em/if_em.c#20 integrate .. //depot/projects/tty/sys/dev/firewire/fwohci_pci.c#16 integrate .. //depot/projects/tty/sys/dev/gem/if_gem.c#13 integrate .. //depot/projects/tty/sys/dev/hifn/hifn7751.c#14 integrate .. //depot/projects/tty/sys/dev/ipw/if_ipw.c#10 integrate .. //depot/projects/tty/sys/dev/ipw/if_ipwvar.h#5 integrate .. //depot/projects/tty/sys/dev/isp/isp_freebsd.h#12 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwi.c#10 integrate .. //depot/projects/tty/sys/dev/le/if_le_pci.c#3 integrate .. //depot/projects/tty/sys/dev/lmc/if_lmc.h#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfi_disk.c#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/tty/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.c#9 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.h#11 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_cam.c#6 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_pci.c#13 integrate .. //depot/projects/tty/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/tty/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/tty/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/tty/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/tty/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/tty/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/tty/sys/dev/my/if_my.c#16 integrate .. //depot/projects/tty/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/tty/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/tty/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/tty/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/tty/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/tty/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/tty/sys/dev/pccbb/pccbb.c#18 integrate .. //depot/projects/tty/sys/dev/pccbb/pccbb_isa.c#4 integrate .. //depot/projects/tty/sys/dev/pccbb/pccbb_pci.c#9 integrate .. //depot/projects/tty/sys/dev/pccbb/pccbbvar.h#9 integrate .. //depot/projects/tty/sys/dev/puc/pucdata.c#13 integrate .. //depot/projects/tty/sys/dev/ral/rt2560.c#3 integrate .. //depot/projects/tty/sys/dev/ral/rt2661.c#3 integrate .. //depot/projects/tty/sys/dev/safe/safe.c#7 integrate .. //depot/projects/tty/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/tty/sys/dev/sound/driver.c#7 integrate .. //depot/projects/tty/sys/dev/sound/midi/midi.c#6 integrate .. //depot/projects/tty/sys/dev/sound/midi/sequencer.c#6 integrate .. //depot/projects/tty/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/tty/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/tty/sys/dev/sound/pci/cmi.c#12 integrate .. //depot/projects/tty/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/tty/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/tty/sys/dev/sound/pci/es137x.c#12 integrate .. //depot/projects/tty/sys/dev/sound/pci/ich.c#15 integrate .. //depot/projects/tty/sys/dev/sound/pci/maestro.c#8 integrate .. //depot/projects/tty/sys/dev/sound/pci/via8233.c#14 integrate .. //depot/projects/tty/sys/dev/sound/pcm/feeder_rate.c#11 integrate .. //depot/projects/tty/sys/dev/sound/pcm/sound.c#10 integrate .. //depot/projects/tty/sys/dev/sound/pcm/vchan.c#11 integrate .. //depot/projects/tty/sys/dev/ubsec/ubsec.c#13 integrate .. //depot/projects/tty/sys/dev/usb/if_axe.c#14 integrate .. //depot/projects/tty/sys/dev/usb/if_axereg.h#8 integrate .. //depot/projects/tty/sys/dev/usb/if_ural.c#10 integrate .. //depot/projects/tty/sys/dev/usb/ugen.c#12 integrate .. //depot/projects/tty/sys/dev/usb/uhid.c#12 integrate .. //depot/projects/tty/sys/dev/usb/umodem.c#8 integrate .. //depot/projects/tty/sys/dev/usb/uplcom.c#12 integrate .. //depot/projects/tty/sys/dev/usb/usbdevs#22 integrate .. //depot/projects/tty/sys/dev/usb/uscanner.c#11 integrate .. //depot/projects/tty/sys/dev/usb/uvisor.c#12 integrate .. //depot/projects/tty/sys/dev/wi/if_wi.c#18 integrate .. //depot/projects/tty/sys/dev/wl/if_wl.c#13 integrate .. //depot/projects/tty/sys/fs/procfs/procfs.c#6 integrate .. //depot/projects/tty/sys/geom/eli/g_eli.c#6 integrate .. //depot/projects/tty/sys/geom/eli/g_eli.h#3 integrate .. //depot/projects/tty/sys/geom/eli/g_eli_ctl.c#4 integrate .. //depot/projects/tty/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/tty/sys/geom/eli/g_eli_key.c#3 integrate .. //depot/projects/tty/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/tty/sys/geom/geom.h#14 integrate .. //depot/projects/tty/sys/geom/geom_dev.c#13 integrate .. //depot/projects/tty/sys/geom/geom_gpt.c#13 integrate .. //depot/projects/tty/sys/geom/geom_io.c#15 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#3 delete .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#4 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bit.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dfrag.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_trace.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iomap.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_vfsops.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfs_vnodeops.c#3 integrate .. //depot/projects/tty/sys/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/tty/sys/i386/acpica/acpi_machdep.c#12 integrate .. //depot/projects/tty/sys/i386/acpica/acpi_wakecode.S#8 integrate .. //depot/projects/tty/sys/i386/acpica/acpi_wakeup.c#12 integrate .. //depot/projects/tty/sys/i386/conf/DEFAULTS#4 integrate .. //depot/projects/tty/sys/i386/conf/GENERIC#25 integrate .. //depot/projects/tty/sys/i386/conf/NOTES#29 integrate .. //depot/projects/tty/sys/i386/conf/XBOX#4 integrate .. //depot/projects/tty/sys/i386/i386/db_trace.c#11 integrate .. //depot/projects/tty/sys/i386/i386/identcpu.c#18 integrate .. //depot/projects/tty/sys/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/tty/sys/i386/i386/pmap.c#23 integrate .. //depot/projects/tty/sys/i386/i386/trap.c#21 integrate .. //depot/projects/tty/sys/i386/include/specialreg.h#7 integrate .. //depot/projects/tty/sys/i386/linux/linux_dummy.c#7 integrate .. //depot/projects/tty/sys/i386/linux/linux_proto.h#13 integrate .. //depot/projects/tty/sys/i386/linux/linux_syscall.h#13 integrate .. //depot/projects/tty/sys/i386/linux/linux_sysent.c#14 integrate .. //depot/projects/tty/sys/i386/linux/syscalls.master#13 integrate .. //depot/projects/tty/sys/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/tty/sys/ia64/conf/GENERIC#15 integrate .. //depot/projects/tty/sys/ia64/conf/NOTES#6 integrate .. //depot/projects/tty/sys/ia64/conf/SKI#9 integrate .. //depot/projects/tty/sys/ia64/ia64/pmap.c#19 integrate .. //depot/projects/tty/sys/isa/isa_common.c#9 integrate .. //depot/projects/tty/sys/kern/kern_acct.c#12 integrate .. //depot/projects/tty/sys/kern/kern_clock.c#16 integrate .. //depot/projects/tty/sys/kern/kern_event.c#17 integrate .. //depot/projects/tty/sys/kern/kern_linker.c#13 integrate .. //depot/projects/tty/sys/kern/kern_mbuf.c#10 integrate .. //depot/projects/tty/sys/kern/kern_module.c#8 integrate .. //depot/projects/tty/sys/kern/kern_mutex.c#18 integrate .. //depot/projects/tty/sys/kern/kern_switch.c#22 integrate .. //depot/projects/tty/sys/kern/kern_synch.c#19 integrate .. //depot/projects/tty/sys/kern/kern_sysctl.c#14 integrate .. //depot/projects/tty/sys/kern/kern_tc.c#12 integrate .. //depot/projects/tty/sys/kern/link_elf.c#11 integrate .. //depot/projects/tty/sys/kern/link_elf_obj.c#5 integrate .. //depot/projects/tty/sys/kern/sched_4bsd.c#14 integrate .. //depot/projects/tty/sys/kern/sched_core.c#1 branch .. //depot/projects/tty/sys/kern/sched_ule.c#18 integrate .. //depot/projects/tty/sys/kern/subr_bus.c#17 integrate .. //depot/projects/tty/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/tty/sys/kern/subr_kdb.c#7 integrate .. //depot/projects/tty/sys/kern/subr_rman.c#13 integrate .. //depot/projects/tty/sys/kern/sys_pipe.c#14 integrate .. //depot/projects/tty/sys/kern/sysv_msg.c#10 integrate .. //depot/projects/tty/sys/kern/sysv_sem.c#13 integrate .. //depot/projects/tty/sys/kern/sysv_shm.c#16 integrate .. //depot/projects/tty/sys/kern/uipc_mbuf.c#15 integrate .. //depot/projects/tty/sys/kern/uipc_socket.c#21 integrate .. //depot/projects/tty/sys/kern/uipc_socket2.c#18 integrate .. //depot/projects/tty/sys/kern/uipc_syscalls.c#20 integrate .. //depot/projects/tty/sys/kern/uipc_usrreq.c#16 integrate .. //depot/projects/tty/sys/kern/vfs_aio.c#21 integrate .. //depot/projects/tty/sys/kern/vfs_cache.c#12 integrate .. //depot/projects/tty/sys/kern/vfs_init.c#9 integrate .. //depot/projects/tty/sys/kern/vfs_mount.c#23 integrate .. //depot/projects/tty/sys/kern/vfs_subr.c#28 integrate .. //depot/projects/tty/sys/kern/vfs_syscalls.c#23 integrate .. //depot/projects/tty/sys/modules/Makefile#30 integrate .. //depot/projects/tty/sys/modules/ath_hal/Makefile#4 integrate .. //depot/projects/tty/sys/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/tty/sys/modules/geom/geom_eli/Makefile#4 integrate .. //depot/projects/tty/sys/modules/if_bridge/Makefile#4 integrate .. //depot/projects/tty/sys/modules/mxge/Makefile#1 branch .. //depot/projects/tty/sys/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/tty/sys/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/tty/sys/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/tty/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/tty/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/tty/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/tty/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/tty/sys/modules/ppc/Makefile#1 branch .. //depot/projects/tty/sys/modules/sound/driver/Makefile#5 integrate .. //depot/projects/tty/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/tty/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/tty/sys/modules/xfs/Makefile#2 integrate .. //depot/projects/tty/sys/net/bpf.c#20 integrate .. //depot/projects/tty/sys/net/bpf.h#8 integrate .. //depot/projects/tty/sys/net/bpfdesc.h#10 integrate .. //depot/projects/tty/sys/net/if.c#24 integrate .. //depot/projects/tty/sys/net/if.h#13 integrate .. //depot/projects/tty/sys/net/if_bridge.c#11 integrate .. //depot/projects/tty/sys/net/if_clone.c#6 integrate .. //depot/projects/tty/sys/net/if_disc.c#13 integrate .. //depot/projects/tty/sys/net/if_faith.c#15 integrate .. //depot/projects/tty/sys/net/if_fwsubr.c#8 integrate .. //depot/projects/tty/sys/net/if_gif.c#13 integrate .. //depot/projects/tty/sys/net/if_gre.c#15 integrate .. //depot/projects/tty/sys/net/if_loop.c#17 integrate .. //depot/projects/tty/sys/net/if_media.h#9 integrate .. //depot/projects/tty/sys/net/if_sl.c#10 integrate .. //depot/projects/tty/sys/net/if_stf.c#14 integrate .. //depot/projects/tty/sys/net/if_tun.c#14 integrate .. //depot/projects/tty/sys/net/if_var.h#14 integrate .. //depot/projects/tty/sys/net/if_vlan.c#15 integrate .. //depot/projects/tty/sys/net/raw_cb.c#7 integrate .. //depot/projects/tty/sys/net/raw_usrreq.c#8 integrate .. //depot/projects/tty/sys/net/route.c#15 integrate .. //depot/projects/tty/sys/net80211/ieee80211_freebsd.c#6 integrate .. //depot/projects/tty/sys/net80211/ieee80211_input.c#15 integrate .. //depot/projects/tty/sys/netatalk/COPYRIGHT#3 integrate .. //depot/projects/tty/sys/netgraph/atm/uni/ng_uni_cust.h#4 integrate .. //depot/projects/tty/sys/netgraph/netgraph.h#13 integrate .. //depot/projects/tty/sys/netgraph/ng_base.c#16 integrate .. //depot/projects/tty/sys/netgraph/ng_iface.c#12 integrate .. //depot/projects/tty/sys/netgraph/ng_socket.c#15 integrate .. //depot/projects/tty/sys/netinet/if_ether.c#16 integrate .. //depot/projects/tty/sys/netinet/in_pcb.c#18 integrate .. //depot/projects/tty/sys/netinet/ip_carp.c#8 integrate .. //depot/projects/tty/sys/netinet/ip_dummynet.c#16 integrate .. //depot/projects/tty/sys/netinet/ip_fw2.c#29 integrate .. //depot/projects/tty/sys/netinet/ip_gre.c#10 integrate .. //depot/projects/tty/sys/netinet/tcp_input.c#25 integrate .. //depot/projects/tty/sys/netinet/tcp_seq.h#7 integrate .. //depot/projects/tty/sys/netinet/tcp_syncache.c#17 integrate .. //depot/projects/tty/sys/netinet/tcp_timer.c#15 integrate .. //depot/projects/tty/sys/netinet/tcp_usrreq.c#17 integrate .. //depot/projects/tty/sys/netinet/tcp_var.h#19 integrate .. //depot/projects/tty/sys/netinet/udp_usrreq.c#19 integrate .. //depot/projects/tty/sys/netinet6/in6.c#13 integrate .. //depot/projects/tty/sys/netinet6/nd6.c#15 integrate .. //depot/projects/tty/sys/netipsec/ipsec.c#10 integrate .. //depot/projects/tty/sys/netipsec/ipsec_input.c#8 integrate .. //depot/projects/tty/sys/nfsserver/nfs_serv.c#15 integrate .. //depot/projects/tty/sys/nfsserver/nfs_srvsubs.c#11 integrate .. //depot/projects/tty/sys/opencrypto/criov.c#5 integrate .. //depot/projects/tty/sys/opencrypto/crypto.c#9 integrate .. //depot/projects/tty/sys/opencrypto/cryptodev.h#8 integrate .. //depot/projects/tty/sys/opencrypto/cryptosoft.c#8 integrate .. //depot/projects/tty/sys/opencrypto/xform.c#7 integrate .. //depot/projects/tty/sys/pc98/conf/DEFAULTS#4 integrate .. //depot/projects/tty/sys/pc98/conf/GENERIC#18 integrate .. //depot/projects/tty/sys/pc98/conf/NOTES#21 integrate .. //depot/projects/tty/sys/pc98/pc98/machdep.c#9 integrate .. //depot/projects/tty/sys/posix4/ksched.c#7 integrate .. //depot/projects/tty/sys/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/tty/sys/powerpc/conf/GENERIC#15 integrate .. //depot/projects/tty/sys/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/tty/sys/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/tty/sys/powerpc/powerpc/pmap_dispatch.c#4 integrate .. //depot/projects/tty/sys/security/audit/audit.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_arg.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm_klib.c#3 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_ioctl.h#2 integrate .. //depot/projects/tty/sys/security/audit/audit_pipe.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_private.h#2 integrate .. //depot/projects/tty/sys/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_trigger.c#2 integrate .. //depot/projects/tty/sys/security/audit/audit_worker.c#2 integrate .. //depot/projects/tty/sys/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/tty/sys/sparc64/conf/GENERIC#20 integrate .. //depot/projects/tty/sys/sparc64/include/_bus.h#2 integrate .. //depot/projects/tty/sys/sparc64/include/bus.h#12 integrate .. //depot/projects/tty/sys/sparc64/isa/isa.c#8 integrate .. //depot/projects/tty/sys/sparc64/sbus/sbus.c#15 integrate .. //depot/projects/tty/sys/sparc64/sparc64/pmap.c#18 integrate .. //depot/projects/tty/sys/sys/firmware.h#2 integrate .. //depot/projects/tty/sys/sys/linker.h#7 integrate .. //depot/projects/tty/sys/sys/mutex.h#14 integrate .. //depot/projects/tty/sys/sys/protosw.h#9 integrate .. //depot/projects/tty/sys/sys/rman.h#9 integrate .. //depot/projects/tty/sys/sys/sched.h#11 integrate .. //depot/projects/tty/sys/sys/socketvar.h#16 integrate .. //depot/projects/tty/sys/sys/sockio.h#5 integrate .. //depot/projects/tty/sys/sys/sx.h#7 integrate .. //depot/projects/tty/sys/sys/syscallsubr.h#15 integrate .. //depot/projects/tty/sys/sys/sysctl.h#11 integrate .. //depot/projects/tty/sys/tools/fw_stub.awk#3 integrate .. //depot/projects/tty/sys/ufs/ffs/ffs_vfsops.c#22 integrate .. //depot/projects/tty/sys/vm/pmap.h#13 integrate .. //depot/projects/tty/sys/vm/vm_fault.c#17 integrate .. //depot/projects/tty/sys/vm/vm_map.c#18 integrate .. //depot/projects/tty/sys/vm/vm_meter.c#10 integrate .. //depot/projects/tty/sys/vm/vm_mmap.c#12 integrate .. //depot/projects/tty/tools/regression/geom_eli/init-a.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/init.t#2 integrate .. //depot/projects/tty/tools/regression/geom_eli/integrity-copy.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/integrity-data.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/integrity-hmac.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/onetime-a.t#1 branch .. //depot/projects/tty/tools/regression/geom_eli/onetime.t#2 integrate .. //depot/projects/tty/tools/regression/ipsec/ipsec.t#1 branch .. //depot/projects/tty/tools/tools/ipw/Makefile#1 branch .. //depot/projects/tty/tools/tools/ipw/ipwstats.c#1 branch .. //depot/projects/tty/tools/tools/mfc/mfc.pl#2 integrate .. //depot/projects/tty/usr.bin/file/config.h#5 integrate .. //depot/projects/tty/usr.bin/kdump/mkioctls#6 integrate .. //depot/projects/tty/usr.bin/locate/locate/locate.c#3 integrate .. //depot/projects/tty/usr.bin/top/machine.c#8 integrate .. //depot/projects/tty/usr.bin/vmstat/vmstat.c#12 integrate .. //depot/projects/tty/usr.sbin/adduser/adduser.8#7 integrate .. //depot/projects/tty/usr.sbin/asf/Makefile#2 integrate .. //depot/projects/tty/usr.sbin/asf/asf.8#6 integrate .. //depot/projects/tty/usr.sbin/asf/asf.c#5 integrate .. //depot/projects/tty/usr.sbin/asf/asf.h#1 branch .. //depot/projects/tty/usr.sbin/asf/asf_kld.c#1 branch .. //depot/projects/tty/usr.sbin/asf/asf_kvm.c#1 branch .. //depot/projects/tty/usr.sbin/asf/asf_prog.c#1 branch .. //depot/projects/tty/usr.sbin/config/config.y#12 integrate .. //depot/projects/tty/usr.sbin/config/main.c#11 integrate .. //depot/projects/tty/usr.sbin/config/mkmakefile.c#10 integrate .. //depot/projects/tty/usr.sbin/config/mkoptions.c#6 integrate .. //depot/projects/tty/usr.sbin/cron/cron/do_command.c#6 integrate .. //depot/projects/tty/usr.sbin/cron/cron/popen.c#3 integrate .. //depot/projects/tty/usr.sbin/jail/jail.8#22 integrate .. //depot/projects/tty/usr.sbin/mailwrapper/Makefile#5 integrate .. //depot/projects/tty/usr.sbin/mailwrapper/mailwrapper.c#3 integrate .. //depot/projects/tty/usr.sbin/mountd/mountd.c#13 integrate .. //depot/projects/tty/usr.sbin/ntp/doc/ntp.conf.5#7 integrate .. //depot/projects/tty/usr.sbin/pkg_install/add/main.c#10 integrate .. //depot/projects/tty/usr.sbin/pkg_install/create/main.c#7 integrate .. //depot/projects/tty/usr.sbin/pkg_install/delete/main.c#4 integrate .. //depot/projects/tty/usr.sbin/pkg_install/info/main.c#8 integrate .. //depot/projects/tty/usr.sbin/pkg_install/lib/global.c#3 integrate .. //depot/projects/tty/usr.sbin/pkg_install/lib/lib.h#9 integrate .. //depot/projects/tty/usr.sbin/pkg_install/version/main.c#6 integrate .. //depot/projects/tty/usr.sbin/ypserv/Makefile.yp#6 integrate .. //depot/projects/tty/usr.sbin/ypserv/yp_server.c#4 integrate .. //depot/projects/tty/usr.sbin/ypserv/ypinit.8#3 integrate Differences ... ==== //depot/projects/tty/MAINTAINERS#20 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.134 2006/06/01 05:06:54 mjacob Exp $ +$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -44,14 +44,6 @@ witness jhb Pre-commit review requested. twe aradford@amcc.com Pre-commit review requested twa aradford@amcc.com Pre-commit review requested -busdma scottl Pre-commit review requested. -aac scottl Pre-commit review requested. -udf scottl Pre-commit review requested. -ips scottl Pre-commit review requested. -iir scottl Pre-commit review requested. -mlx scottl Pre-commit review requested. -mly scottl Pre-commit review requested. -maestro3 scottl Pre-commit review requested. CAM gibbs, ken Pre-commit review requested. send to scsi@freebsd.org devstat(9) ken Pre-commit review requested. ==== //depot/projects/tty/Makefile#18 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.330 2006/05/26 18:10:06 netchild Exp $ +# $FreeBSD: src/Makefile,v 1.333 2006/06/21 09:53:42 obrien Exp $ # # The user-driven targets are: # @@ -8,7 +8,7 @@ # buildworld - Rebuild *everything*, including glue to help do # upgrades. # installworld - Install everything built by "buildworld". -# world - buildworld + installworld. +# world - buildworld + installworld, no kernel. # buildkernel - Rebuild the kernel and the kernel-modules. # installkernel - Install the kernel and the kernel-modules. # installkernel.debug @@ -37,7 +37,8 @@ # system, the simple instructions are: # # 1. `cd /usr/src' (or to the directory containing your source tree). -# 2. `make world' +# 2. Define `HISTORICAL_MAKE_WORLD' variable (see README). +# 3. `make world' # # For individuals wanting to upgrade their sources (even if only a # delta of a few days): @@ -46,6 +47,7 @@ # 2. `make buildworld' # 3. `make buildkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC). # 4. `make installkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC). +# [steps 3. & 4. can be combined by using the "kernel" target] # 5. `reboot' (in single user mode: boot -s from the loader prompt). # 6. `mergemaster -p' # 7. `make installworld' @@ -68,9 +70,9 @@ # developer convenience only. They are intentionally not documented and # completely subject to change without notice. # -TGTS= all all-man buildenv buildkernel buildworld check-old checkdpadd \ - clean cleandepend cleandir delete-old delete-old-libs depend \ - distribute distributeworld distrib-dirs distribution doxygen \ +TGTS= all all-man buildenv buildenvvars buildkernel buildworld check-old \ + checkdpadd clean cleandepend cleandir delete-old delete-old-libs \ + depend distribute distributeworld distrib-dirs distribution doxygen \ everything hierarchy install installcheck installkernel \ installkernel.debug reinstallkernel reinstallkernel.debug \ installworld kernel-toolchain libraries lint maninstall \ ==== //depot/projects/tty/Makefile.inc1#30 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.547 2006/05/26 18:10:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.549 2006/06/06 18:07:58 imp Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -468,6 +468,16 @@ buildworld: ${WMAKE_TGTS} .ORDER: ${WMAKE_TGTS} + +# +# We need to have this as a target because the indirection between Makefile +# and Makefile.inc1 causes the correct PATH to be used, rather than a +# modification of the current environment's PATH. In addition, we need +# to quote multiword values. +# +buildenvvars: + @echo ${WMAKEENV:Q} + buildenv: @echo Entering world for ${TARGET_ARCH}:${TARGET} @cd ${.CURDIR} && env ${WMAKEENV} sh || true >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 01:02:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 04CF916A47B; Thu, 22 Jun 2006 01:02:04 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B231216A474 for ; Thu, 22 Jun 2006 01:02:03 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F0FD543D49 for ; Thu, 22 Jun 2006 01:02:02 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M122Xr066395 for ; Thu, 22 Jun 2006 01:02:02 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M10lHR065604 for perforce@freebsd.org; Thu, 22 Jun 2006 01:00:47 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 01:00:47 GMT Message-Id: <200606220100.k5M10lHR065604@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 99788 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 01:02:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=99788 Change 99788 by marcel@marcel_nfs on 2006/06/22 01:00:01 IFC @99784 Affected files ... .. //depot/projects/ia64/MAINTAINERS#53 integrate .. //depot/projects/ia64/Makefile#49 integrate .. //depot/projects/ia64/Makefile.inc1#110 integrate .. //depot/projects/ia64/ObsoleteFiles.inc#6 integrate .. //depot/projects/ia64/README#6 integrate .. //depot/projects/ia64/UPDATING#87 integrate .. //depot/projects/ia64/bin/setfacl/setfacl.1#9 integrate .. //depot/projects/ia64/bin/setfacl/setfacl.c#9 integrate .. //depot/projects/ia64/bin/sh/cd.c#10 integrate .. //depot/projects/ia64/bin/sh/eval.c#16 integrate .. //depot/projects/ia64/bin/sh/sh.1#36 integrate .. //depot/projects/ia64/bin/sh/var.c#16 integrate .. //depot/projects/ia64/bin/sh/var.h#7 integrate .. //depot/projects/ia64/contrib/binutils/bfd/elf64-sparc.c#8 integrate .. //depot/projects/ia64/contrib/bsnmp/NEWS#9 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmpdef/gensnmpdef.1#5 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmpdef/gensnmpdef.c#3 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmptree/gensnmptree.1#7 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmptree/gensnmptree.c#10 integrate .. //depot/projects/ia64/contrib/file/ChangeLog#3 integrate .. //depot/projects/ia64/contrib/file/FREEBSD-upgrade#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/adventure#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/amigaos#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/animation#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/apple#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/archive#6 integrate .. //depot/projects/ia64/contrib/file/Magdir/audio#6 integrate .. //depot/projects/ia64/contrib/file/Magdir/basis#1 branch .. //depot/projects/ia64/contrib/file/Magdir/bflt#1 branch .. //depot/projects/ia64/contrib/file/Magdir/bout#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/ia64/contrib/file/Magdir/c64#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/cad#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/commands#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/compress#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/console#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/ia64/contrib/file/Magdir/ctags#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/database#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/diff#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/digital#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/dump#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/elf#6 integrate .. //depot/projects/ia64/contrib/file/Magdir/filesystems#7 integrate .. //depot/projects/ia64/contrib/file/Magdir/flash#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/gnu#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/iff#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/images#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/java#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/linux#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/lisp#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/mach#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/macintosh#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/mail.news#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/maple#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/msdos#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/mup#1 branch .. //depot/projects/ia64/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/perl#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/printer#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/psion#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/python#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/riff#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/scientific#1 branch .. //depot/projects/ia64/contrib/file/Magdir/sgi#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/sql#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/varied.out#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/ia64/contrib/file/Makefile.am#7 integrate .. //depot/projects/ia64/contrib/file/Makefile.in#7 integrate .. //depot/projects/ia64/contrib/file/aclocal.m4#6 integrate .. //depot/projects/ia64/contrib/file/apprentice.c#6 integrate .. //depot/projects/ia64/contrib/file/ascmagic.c#6 integrate .. //depot/projects/ia64/contrib/file/compress.c#5 integrate .. //depot/projects/ia64/contrib/file/config.h.in#7 integrate .. //depot/projects/ia64/contrib/file/configure#7 integrate .. //depot/projects/ia64/contrib/file/configure.in#7 integrate .. //depot/projects/ia64/contrib/file/file.c#7 integrate .. //depot/projects/ia64/contrib/file/file.h#6 integrate .. //depot/projects/ia64/contrib/file/file.man#6 integrate .. //depot/projects/ia64/contrib/file/fsmagic.c#5 integrate .. //depot/projects/ia64/contrib/file/funcs.c#3 integrate .. //depot/projects/ia64/contrib/file/libmagic.man#2 integrate .. //depot/projects/ia64/contrib/file/magic.c#3 integrate .. //depot/projects/ia64/contrib/file/magic.man#6 integrate .. //depot/projects/ia64/contrib/file/magic.mime#6 integrate .. //depot/projects/ia64/contrib/file/magic2mime#3 integrate .. //depot/projects/ia64/contrib/file/patchlevel.h#7 integrate .. //depot/projects/ia64/contrib/file/print.c#6 integrate .. //depot/projects/ia64/contrib/file/readelf.c#7 integrate .. //depot/projects/ia64/contrib/file/readelf.h#5 integrate .. //depot/projects/ia64/contrib/file/softmagic.c#7 integrate .. //depot/projects/ia64/contrib/netcat/atomicio.c#2 integrate .. //depot/projects/ia64/contrib/netcat/atomicio.h#1 branch .. //depot/projects/ia64/contrib/netcat/nc.1#4 integrate .. //depot/projects/ia64/contrib/netcat/netcat.c#2 integrate .. //depot/projects/ia64/contrib/netcat/socks.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/ia64/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/README#2 integrate .. //depot/projects/ia64/contrib/openbsm/TODO#2 integrate .. //depot/projects/ia64/contrib/openbsm/VERSION#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/auditd/auditd.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/audit.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/ia64/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/libbsm.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/configure#2 integrate .. //depot/projects/ia64/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/ia64/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/ia64/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/ia64/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_audit.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_io.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_token.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_wrappers.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/ia64/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/ia64/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/ia64/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/ia64/contrib/pf/man/pfsync.4#8 integrate .. //depot/projects/ia64/contrib/sendmail/FREEBSD-upgrade#23 integrate .. //depot/projects/ia64/contrib/sendmail/PGPKEYS#10 integrate .. //depot/projects/ia64/contrib/sendmail/RELEASE_NOTES#17 integrate .. //depot/projects/ia64/contrib/sendmail/cf/README#16 integrate .. //depot/projects/ia64/contrib/sendmail/cf/cf/submit.cf#16 integrate .. //depot/projects/ia64/contrib/sendmail/cf/cf/submit.mc#8 integrate .. //depot/projects/ia64/contrib/sendmail/cf/feature/dnsbl.m4#7 integrate .. //depot/projects/ia64/contrib/sendmail/cf/feature/enhdnsbl.m4#5 integrate .. //depot/projects/ia64/contrib/sendmail/cf/m4/proto.m4#16 integrate .. //depot/projects/ia64/contrib/sendmail/cf/m4/version.m4#17 integrate .. //depot/projects/ia64/contrib/sendmail/include/libmilter/mfapi.h#11 integrate .. //depot/projects/ia64/contrib/sendmail/libmilter/docs/xxfi_header.html#4 integrate .. //depot/projects/ia64/contrib/sendmail/libmilter/engine.c#12 integrate .. //depot/projects/ia64/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/ia64/contrib/sendmail/src/README#16 integrate .. //depot/projects/ia64/contrib/sendmail/src/bf.c#9 integrate .. //depot/projects/ia64/contrib/sendmail/src/collect.c#14 integrate .. //depot/projects/ia64/contrib/sendmail/src/conf.c#19 integrate .. //depot/projects/ia64/contrib/sendmail/src/daemon.c#15 integrate .. //depot/projects/ia64/contrib/sendmail/src/deliver.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/domain.c#12 integrate .. //depot/projects/ia64/contrib/sendmail/src/envelope.c#10 integrate .. //depot/projects/ia64/contrib/sendmail/src/headers.c#14 integrate .. //depot/projects/ia64/contrib/sendmail/src/helpfile#8 integrate .. //depot/projects/ia64/contrib/sendmail/src/main.c#15 integrate .. //depot/projects/ia64/contrib/sendmail/src/map.c#14 integrate .. //depot/projects/ia64/contrib/sendmail/src/mci.c#15 integrate .. //depot/projects/ia64/contrib/sendmail/src/mime.c#11 integrate .. //depot/projects/ia64/contrib/sendmail/src/parseaddr.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/queue.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/savemail.c#11 integrate .. //depot/projects/ia64/contrib/sendmail/src/sendmail.h#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/sfsasl.c#13 integrate .. //depot/projects/ia64/contrib/sendmail/src/sfsasl.h#6 integrate .. //depot/projects/ia64/contrib/sendmail/src/srvrsmtp.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/tls.c#13 integrate .. //depot/projects/ia64/contrib/sendmail/src/util.c#13 integrate .. //depot/projects/ia64/contrib/sendmail/src/version.c#17 integrate .. //depot/projects/ia64/contrib/tcpdump/tcpdump.1#7 integrate .. //depot/projects/ia64/contrib/top/top.X#8 integrate .. //depot/projects/ia64/contrib/traceroute/traceroute.8#6 integrate .. //depot/projects/ia64/contrib/traceroute/traceroute.c#9 integrate .. //depot/projects/ia64/crypto/openssh/config.h#11 integrate .. //depot/projects/ia64/crypto/openssh/loginrec.c#12 integrate .. //depot/projects/ia64/crypto/openssh/ssh_namespace.h#1 branch .. //depot/projects/ia64/etc/bluetooth/hcsecd.conf#3 integrate .. //depot/projects/ia64/etc/defaults/rc.conf#70 integrate .. //depot/projects/ia64/etc/devd.conf#24 integrate .. //depot/projects/ia64/etc/hosts.allow#5 integrate .. //depot/projects/ia64/etc/mtree/BSD.usr.dist#40 integrate .. //depot/projects/ia64/etc/netstart#8 integrate .. //depot/projects/ia64/etc/periodic/daily/470.status-named#7 integrate .. //depot/projects/ia64/etc/rc.d/Makefile#40 integrate .. //depot/projects/ia64/etc/rc.d/abi#7 integrate .. //depot/projects/ia64/etc/rc.d/auditd#2 integrate .. //depot/projects/ia64/etc/rc.d/bridge#1 branch .. //depot/projects/ia64/etc/rc.d/cached#2 integrate .. //depot/projects/ia64/etc/rc.d/devd#9 integrate .. //depot/projects/ia64/etc/rc.d/isdnd#13 integrate .. //depot/projects/ia64/etc/rc.d/jail#20 integrate .. //depot/projects/ia64/etc/rc.d/ldconfig#14 integrate .. //depot/projects/ia64/etc/rc.d/mdconfig#1 branch .. //depot/projects/ia64/etc/rc.d/mdconfig2#1 branch .. //depot/projects/ia64/etc/rc.d/moused#9 integrate .. //depot/projects/ia64/etc/rc.d/netif#14 integrate .. //depot/projects/ia64/etc/rc.d/pcvt#6 delete .. //depot/projects/ia64/etc/rc.d/pf#7 integrate .. //depot/projects/ia64/etc/rc.d/syscons#11 integrate .. //depot/projects/ia64/etc/rc.d/sysctl#10 integrate .. //depot/projects/ia64/etc/rc.subr#29 integrate .. //depot/projects/ia64/etc/sendmail/freebsd.mc#12 integrate .. //depot/projects/ia64/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/ia64/games/fortune/datfiles/fortunes#57 integrate .. //depot/projects/ia64/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/ia64/include/arpa/nameser.h#4 integrate .. //depot/projects/ia64/include/glob.h#4 integrate .. //depot/projects/ia64/include/netdb.h#15 integrate .. //depot/projects/ia64/include/res_update.h#2 integrate .. //depot/projects/ia64/include/resolv.h#10 integrate .. //depot/projects/ia64/kerberos5/lib/libroken/Makefile#7 integrate .. //depot/projects/ia64/lib/csu/common/crtbegin.c#3 delete .. //depot/projects/ia64/lib/csu/common/crtend.c#2 delete .. //depot/projects/ia64/lib/libatm/Makefile#8 integrate .. //depot/projects/ia64/lib/libbsm/Makefile#2 integrate .. //depot/projects/ia64/lib/libc/Makefile#23 integrate .. //depot/projects/ia64/lib/libc/arm/SYS.h#3 integrate .. //depot/projects/ia64/lib/libc/gen/getgrent.c#13 integrate .. //depot/projects/ia64/lib/libc/gen/gethostname.c#5 integrate .. //depot/projects/ia64/lib/libc/gen/glob.3#9 integrate .. //depot/projects/ia64/lib/libc/gen/glob.c#7 integrate .. //depot/projects/ia64/lib/libc/gen/signal.3#10 integrate .. //depot/projects/ia64/lib/libc/i386/gen/_ctx_start.S#4 integrate .. //depot/projects/ia64/lib/libc/include/isc/list.h#1 branch .. //depot/projects/ia64/lib/libc/nameser/Symbol.map#2 integrate .. //depot/projects/ia64/lib/libc/nameser/ns_samedomain.c#2 integrate .. //depot/projects/ia64/lib/libc/net/Makefile.inc#14 integrate .. //depot/projects/ia64/lib/libc/net/Symbol.map#3 integrate .. //depot/projects/ia64/lib/libc/net/gai_strerror.3#4 integrate .. //depot/projects/ia64/lib/libc/net/gai_strerror.c#2 integrate .. //depot/projects/ia64/lib/libc/net/gethostnamadr.c#9 integrate .. //depot/projects/ia64/lib/libc/net/getnameinfo.c#10 integrate .. //depot/projects/ia64/lib/libc/net/res_mkupdate.c#6 delete .. //depot/projects/ia64/lib/libc/net/res_update.c#5 delete .. //depot/projects/ia64/lib/libc/resolv/Makefile.inc#2 integrate .. //depot/projects/ia64/lib/libc/resolv/Symbol.map#2 integrate .. //depot/projects/ia64/lib/libc/resolv/h_errno.c#2 integrate .. //depot/projects/ia64/lib/libc/resolv/res_findzonecut.c#1 branch .. //depot/projects/ia64/lib/libc/resolv/res_mkupdate.c#1 branch .. //depot/projects/ia64/lib/libc/resolv/res_state.c#3 integrate .. //depot/projects/ia64/lib/libc/resolv/res_update.c#1 branch .. //depot/projects/ia64/lib/libc/stdlib/a64l.c#2 integrate .. //depot/projects/ia64/lib/libc/stdlib/malloc.c#32 integrate .. //depot/projects/ia64/lib/libc/stdlib/strtol.3#8 integrate .. //depot/projects/ia64/lib/libc/stdlib/strtoul.3#9 integrate .. //depot/projects/ia64/lib/libc/string/strlcpy.c#7 integrate .. //depot/projects/ia64/lib/libc/sys/chflags.2#8 integrate .. //depot/projects/ia64/lib/libc/sys/mincore.2#9 integrate .. //depot/projects/ia64/lib/libc/sys/stat.2#14 integrate .. //depot/projects/ia64/lib/libc/sys/truncate.2#6 integrate .. //depot/projects/ia64/lib/libc/sys/wait.2#10 integrate .. //depot/projects/ia64/lib/libfetch/ftp.c#17 integrate .. //depot/projects/ia64/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/ia64/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/ia64/lib/libmagic/Makefile#7 integrate .. //depot/projects/ia64/lib/libmagic/config.h#3 integrate .. //depot/projects/ia64/lib/libpam/modules/pam_ssh/Makefile#12 integrate .. //depot/projects/ia64/lib/libpthread/pthread.map#17 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#39 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_sig.c#32 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_sigaction.c#9 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_symbols.c#4 integrate .. //depot/projects/ia64/lib/libsdp/sdp.h#5 integrate .. //depot/projects/ia64/lib/libsdp/util.c#6 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_mutex.c#26 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_private.h#26 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_spec.c#4 integrate .. //depot/projects/ia64/lib/libthread_db/libpthread_db.c#6 integrate .. //depot/projects/ia64/lib/libthread_db/libpthread_db.h#3 integrate .. //depot/projects/ia64/lib/libthread_db/libthr_db.c#7 integrate .. //depot/projects/ia64/lib/libutil/Makefile#14 integrate .. //depot/projects/ia64/lib/libutil/kld.c#2 integrate .. //depot/projects/ia64/lib/libutil/login_class.3#6 integrate .. //depot/projects/ia64/libexec/ftpd/Makefile#13 integrate .. //depot/projects/ia64/libexec/ftpd/ftpcmd.y#21 integrate .. //depot/projects/ia64/release/Makefile#97 integrate .. //depot/projects/ia64/release/doc/README#4 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/Makefile#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/Makefile#4 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/article.sgml#3 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#37 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#97 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#9 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/Makefile#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/alpha/Makefile#2 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/alpha/article.sgml#3 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/common/install.sgml#18 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/common/layout.sgml#7 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/Makefile#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/alpha/Makefile#2 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/alpha/article.sgml#4 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#159 integrate .. //depot/projects/ia64/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#26 integrate .. //depot/projects/ia64/release/doc/ru_RU.KOI8-R/hardware/Makefile#2 integrate .. //depot/projects/ia64/release/doc/ru_RU.KOI8-R/hardware/common/dev.sgml#13 integrate .. //depot/projects/ia64/release/doc/share/examples/Makefile.relnotesng#10 integrate .. //depot/projects/ia64/release/doc/share/misc/dev.archlist.txt#18 integrate .. //depot/projects/ia64/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#8 integrate .. //depot/projects/ia64/release/i386/mkisoimages.sh#9 integrate .. //depot/projects/ia64/release/pc98/fixit-small_crunch.conf#7 integrate .. //depot/projects/ia64/release/picobsd/build/picobsd#11 integrate .. //depot/projects/ia64/sbin/Makefile#49 integrate .. //depot/projects/ia64/sbin/adjkerntz/adjkerntz.c#6 integrate .. //depot/projects/ia64/sbin/devfs/devfs.c#4 integrate .. //depot/projects/ia64/sbin/dhclient/dhclient.c#4 integrate .. //depot/projects/ia64/sbin/fdisk/fdisk.c#26 integrate .. //depot/projects/ia64/sbin/ffsinfo/ffsinfo.8#11 integrate .. //depot/projects/ia64/sbin/fsdb/fsdb.8#11 integrate .. //depot/projects/ia64/sbin/fsdb/fsdb.c#14 integrate .. //depot/projects/ia64/sbin/geom/class/eli/geli.8#4 integrate .. //depot/projects/ia64/sbin/geom/class/eli/geom_eli.c#6 integrate .. //depot/projects/ia64/sbin/ggate/ggatec/ggatec.8#6 integrate .. //depot/projects/ia64/sbin/ifconfig/Makefile#11 integrate .. //depot/projects/ia64/sbin/ifconfig/ifconfig.8#37 integrate .. //depot/projects/ia64/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/ia64/sbin/ifconfig/ifpfsync.c#3 integrate .. //depot/projects/ia64/sbin/init/init.c#12 integrate .. //depot/projects/ia64/sbin/ipfw/ipfw.8#52 integrate .. //depot/projects/ia64/sbin/ipfw/ipfw2.c#51 integrate .. //depot/projects/ia64/sbin/mount/mount.8#25 integrate .. //depot/projects/ia64/sbin/mount/mount.c#26 integrate .. //depot/projects/ia64/sbin/mount_msdosfs/mount_msdosfs.c#14 integrate .. //depot/projects/ia64/sbin/mount_std/mount_std.8#10 integrate .. //depot/projects/ia64/sbin/rcorder/rcorder.c#6 integrate .. //depot/projects/ia64/sbin/setkey/setkey.8#3 integrate .. //depot/projects/ia64/secure/lib/libssh/Makefile#20 integrate .. //depot/projects/ia64/secure/libexec/sftp-server/Makefile#12 integrate .. //depot/projects/ia64/secure/libexec/ssh-keysign/Makefile#6 integrate .. //depot/projects/ia64/secure/usr.bin/scp/Makefile#10 integrate .. //depot/projects/ia64/secure/usr.bin/sftp/Makefile#12 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-add/Makefile#9 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-agent/Makefile#9 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-keygen/Makefile#9 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-keyscan/Makefile#8 integrate .. //depot/projects/ia64/secure/usr.bin/ssh/Makefile#17 integrate .. //depot/projects/ia64/secure/usr.sbin/sshd/Makefile#24 integrate .. //depot/projects/ia64/share/examples/diskless/clone_root#4 integrate .. //depot/projects/ia64/share/examples/etc/README.examples#6 integrate .. //depot/projects/ia64/share/examples/kld/cdev/module/cdevmod.c#5 integrate .. //depot/projects/ia64/share/examples/mdoc/example.4#6 integrate .. //depot/projects/ia64/share/man/man4/Makefile#94 integrate .. //depot/projects/ia64/share/man/man4/aac.4#12 integrate .. //depot/projects/ia64/share/man/man4/acpi.4#30 integrate .. //depot/projects/ia64/share/man/man4/acpi_dock.4#1 branch .. //depot/projects/ia64/share/man/man4/adv.4#4 integrate .. //depot/projects/ia64/share/man/man4/adw.4#4 integrate .. //depot/projects/ia64/share/man/man4/aha.4#9 integrate .. //depot/projects/ia64/share/man/man4/ahb.4#5 integrate .. //depot/projects/ia64/share/man/man4/ahc.4#8 integrate .. //depot/projects/ia64/share/man/man4/ahd.4#6 integrate .. //depot/projects/ia64/share/man/man4/altq.4#9 integrate .. //depot/projects/ia64/share/man/man4/amd.4#3 integrate .. //depot/projects/ia64/share/man/man4/amr.4#14 integrate .. //depot/projects/ia64/share/man/man4/arcmsr.4#2 integrate .. //depot/projects/ia64/share/man/man4/atkbd.4#7 integrate .. //depot/projects/ia64/share/man/man4/audit.4#2 integrate .. //depot/projects/ia64/share/man/man4/auditpipe.4#1 branch .. //depot/projects/ia64/share/man/man4/bge.4#18 integrate .. //depot/projects/ia64/share/man/man4/bt.4#5 integrate .. //depot/projects/ia64/share/man/man4/carp.4#5 integrate .. //depot/projects/ia64/share/man/man4/ciss.4#8 integrate .. //depot/projects/ia64/share/man/man4/cpufreq.4#6 integrate .. //depot/projects/ia64/share/man/man4/dc.4#15 integrate .. //depot/projects/ia64/share/man/man4/ddb.4#11 integrate .. //depot/projects/ia64/share/man/man4/dpt.4#8 integrate .. //depot/projects/ia64/share/man/man4/esp.4#4 integrate .. //depot/projects/ia64/share/man/man4/fxp.4#14 integrate .. //depot/projects/ia64/share/man/man4/geom.4#14 integrate .. //depot/projects/ia64/share/man/man4/hptmv.4#5 integrate .. //depot/projects/ia64/share/man/man4/ida.4#5 integrate .. //depot/projects/ia64/share/man/man4/if_bridge.4#8 integrate .. //depot/projects/ia64/share/man/man4/iir.4#7 integrate .. //depot/projects/ia64/share/man/man4/ip.4#18 integrate .. //depot/projects/ia64/share/man/man4/ips.4#3 integrate .. //depot/projects/ia64/share/man/man4/isp.4#9 integrate .. //depot/projects/ia64/share/man/man4/ispfw.4#4 integrate .. //depot/projects/ia64/share/man/man4/kbdmux.4#4 integrate .. //depot/projects/ia64/share/man/man4/ktr.4#6 integrate .. //depot/projects/ia64/share/man/man4/lmc.4#6 integrate .. //depot/projects/ia64/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/ia64/share/man/man4/man4.alpha/linux.4#4 delete .. //depot/projects/ia64/share/man/man4/man4.alpha/osf1.4#4 delete .. //depot/projects/ia64/share/man/man4/man4.i386/Makefile#31 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/linux.4#6 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/lnc.4#9 delete .. //depot/projects/ia64/share/man/man4/man4.i386/padlock.4#3 integrate .. //depot/projects/ia64/share/man/man4/mlx.4#7 integrate .. //depot/projects/ia64/share/man/man4/mly.4#4 integrate .. //depot/projects/ia64/share/man/man4/mpt.4#6 integrate .. //depot/projects/ia64/share/man/man4/mxge.4#1 branch .. //depot/projects/ia64/share/man/man4/myri10ge.4#2 delete .. //depot/projects/ia64/share/man/man4/ncr.4#4 integrate .. //depot/projects/ia64/share/man/man4/ncv.4#4 integrate .. //depot/projects/ia64/share/man/man4/ng_etf.4#7 integrate .. //depot/projects/ia64/share/man/man4/nsp.4#4 integrate .. //depot/projects/ia64/share/man/man4/pcvt.4#8 delete .. //depot/projects/ia64/share/man/man4/pst.4#5 integrate .. //depot/projects/ia64/share/man/man4/sched_4bsd.4#3 integrate .. //depot/projects/ia64/share/man/man4/sched_core.4#1 branch .. //depot/projects/ia64/share/man/man4/sched_ule.4#3 integrate .. //depot/projects/ia64/share/man/man4/sio.4#13 integrate .. //depot/projects/ia64/share/man/man4/smp.4#10 integrate .. //depot/projects/ia64/share/man/man4/snd_csa.4#6 integrate .. //depot/projects/ia64/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/ia64/share/man/man4/snd_gusc.4#5 integrate .. //depot/projects/ia64/share/man/man4/snd_ich.4#7 integrate .. //depot/projects/ia64/share/man/man4/snd_sbc.4#7 integrate .. //depot/projects/ia64/share/man/man4/splash.4#5 integrate .. //depot/projects/ia64/share/man/man4/stg.4#5 integrate .. //depot/projects/ia64/share/man/man4/sym.4#7 integrate .. //depot/projects/ia64/share/man/man4/trm.4#6 integrate .. //depot/projects/ia64/share/man/man4/twa.4#6 integrate .. //depot/projects/ia64/share/man/man4/twe.4#9 integrate .. //depot/projects/ia64/share/man/man4/umodem.4#6 integrate .. //depot/projects/ia64/share/man/man4/uscanner.4#13 integrate .. //depot/projects/ia64/share/man/man4/uvisor.4#7 integrate .. //depot/projects/ia64/share/man/man4/vinum.4#16 integrate .. //depot/projects/ia64/share/man/man4/vkbd.4#4 integrate .. //depot/projects/ia64/share/man/man5/Makefile#26 integrate .. //depot/projects/ia64/share/man/man5/devfs.5#6 integrate .. //depot/projects/ia64/share/man/man5/ext2fs.5#1 branch .. //depot/projects/ia64/share/man/man5/linprocfs.5#7 integrate .. //depot/projects/ia64/share/man/man5/mailer.conf.5#5 integrate .. //depot/projects/ia64/share/man/man5/make.conf.5#59 integrate .. //depot/projects/ia64/share/man/man5/nsswitch.conf.5#8 integrate .. //depot/projects/ia64/share/man/man5/procfs.5#10 integrate .. //depot/projects/ia64/share/man/man5/rc.conf.5#73 integrate .. //depot/projects/ia64/share/man/man5/reiserfs.5#1 branch .. //depot/projects/ia64/share/man/man5/src.conf.5#3 integrate .. //depot/projects/ia64/share/man/man7/build.7#16 integrate .. //depot/projects/ia64/share/man/man7/hier.7#32 integrate .. //depot/projects/ia64/share/man/man8/rc.subr.8#8 integrate .. //depot/projects/ia64/share/man/man9/Makefile#60 integrate .. //depot/projects/ia64/share/man/man9/crypto.9#6 integrate .. //depot/projects/ia64/share/man/man9/device_get_sysctl.9#1 branch .. //depot/projects/ia64/share/man/man9/lock.9#7 integrate .. //depot/projects/ia64/share/man/man9/suser.9#10 integrate .. //depot/projects/ia64/share/man/man9/vflush.9#6 integrate .. //depot/projects/ia64/share/man/man9/vgone.9#5 integrate .. //depot/projects/ia64/share/man/man9/zero_copy.9#8 integrate .. //depot/projects/ia64/share/misc/bsd-family-tree#31 integrate .. //depot/projects/ia64/share/misc/iso3166#8 integrate .. //depot/projects/ia64/share/mk/bsd.README#12 integrate .. //depot/projects/ia64/share/mk/bsd.own.mk#14 integrate .. //depot/projects/ia64/share/monetdef/pt_PT.ISO8859-1.src#3 integrate .. //depot/projects/ia64/sys/Makefile#11 integrate .. //depot/projects/ia64/sys/amd64/amd64/busdma_machdep.c#19 integrate .. //depot/projects/ia64/sys/amd64/amd64/fpu.c#10 integrate .. //depot/projects/ia64/sys/amd64/amd64/initcpu.c#6 integrate .. //depot/projects/ia64/sys/amd64/amd64/machdep.c#38 integrate .. //depot/projects/ia64/sys/amd64/amd64/mp_machdep.c#23 integrate .. //depot/projects/ia64/sys/amd64/amd64/pmap.c#53 integrate .. //depot/projects/ia64/sys/amd64/amd64/trap.c#27 integrate .. //depot/projects/ia64/sys/amd64/conf/DEFAULTS#4 integrate .. //depot/projects/ia64/sys/amd64/conf/GENERIC#35 integrate .. //depot/projects/ia64/sys/amd64/conf/NOTES#19 integrate .. //depot/projects/ia64/sys/amd64/include/clock.h#7 integrate .. //depot/projects/ia64/sys/amd64/include/md_var.h#12 integrate .. //depot/projects/ia64/sys/amd64/include/mutex.h#3 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/ia64/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/ia64/sys/arm/arm/busdma_machdep.c#15 integrate .. //depot/projects/ia64/sys/arm/arm/elf_trampoline.c#4 integrate .. //depot/projects/ia64/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/ia64/sys/arm/arm/locore.S#11 integrate .. //depot/projects/ia64/sys/arm/arm/machdep.c#13 integrate .. //depot/projects/ia64/sys/arm/arm/pmap.c#19 integrate .. //depot/projects/ia64/sys/arm/arm/vm_machdep.c#13 integrate .. //depot/projects/ia64/sys/arm/at91/at91.c#3 integrate .. //depot/projects/ia64/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/at91_st.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/ia64/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/ia64/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/uart_bus_at91usart.c#3 integrate .. //depot/projects/ia64/sys/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/ia64/sys/arm/conf/IQ31244#8 integrate .. //depot/projects/ia64/sys/arm/conf/KB920X#2 integrate .. //depot/projects/ia64/sys/arm/conf/SIMICS#7 integrate .. //depot/projects/ia64/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/ia64/sys/arm/include/_types.h#7 integrate .. //depot/projects/ia64/sys/arm/include/atomic.h#12 integrate .. //depot/projects/ia64/sys/arm/include/cpuconf.h#5 integrate .. //depot/projects/ia64/sys/arm/include/cpufunc.h#6 integrate .. //depot/projects/ia64/sys/arm/include/pmap.h#14 integrate .. //depot/projects/ia64/sys/arm/sa11x0/assabet_machdep.c#10 integrate .. //depot/projects/ia64/sys/arm/sa11x0/sa11x0_io.c#6 integrate .. //depot/projects/ia64/sys/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/ia64/sys/arm/sa11x0/sa11x0_var.h#3 integrate .. //depot/projects/ia64/sys/arm/sa11x0/uart_cpu_sa1110.c#3 integrate .. //depot/projects/ia64/sys/arm/sa11x0/uart_dev_sa1110.c#4 integrate .. //depot/projects/ia64/sys/arm/xscale/i80321/i80321_space.c#5 integrate .. //depot/projects/ia64/sys/arm/xscale/i80321/iq31244_machdep.c#12 integrate .. //depot/projects/ia64/sys/boot/Makefile#17 integrate .. //depot/projects/ia64/sys/boot/forth/loader.conf#32 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biosdisk.c#12 integrate .. //depot/projects/ia64/sys/boot/pc98/Makefile#5 integrate .. //depot/projects/ia64/sys/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/ia64/sys/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/ia64/sys/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/ia64/sys/bsm/audit.h#3 integrate .. //depot/projects/ia64/sys/bsm/audit_record.h#2 integrate .. //depot/projects/ia64/sys/cam/cam_ccb.h#9 integrate .. //depot/projects/ia64/sys/cam/cam_debug.h#3 integrate .. //depot/projects/ia64/sys/cam/cam_periph.c#22 integrate .. //depot/projects/ia64/sys/cam/cam_xpt.c#30 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_all.h#8 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_target.c#20 integrate .. //depot/projects/ia64/sys/coda/cnode.h#11 integrate .. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_misc.c#21 integrate .. //depot/projects/ia64/sys/compat/linprocfs/linprocfs.c#41 integrate .. //depot/projects/ia64/sys/compat/linux/linux_stats.c#27 integrate .. //depot/projects/ia64/sys/compat/ndis/subr_hal.c#14 integrate .. //depot/projects/ia64/sys/compat/ndis/subr_ndis.c#19 integrate .. //depot/projects/ia64/sys/compat/ndis/subr_ntoskrnl.c#18 integrate .. //depot/projects/ia64/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/ia64/sys/conf/Makefile.arm#14 integrate .. //depot/projects/ia64/sys/conf/NOTES#102 integrate .. //depot/projects/ia64/sys/conf/files#142 integrate .. //depot/projects/ia64/sys/conf/files.amd64#37 integrate .. //depot/projects/ia64/sys/conf/files.arm#6 integrate .. //depot/projects/ia64/sys/conf/files.i386#76 integrate .. //depot/projects/ia64/sys/conf/files.pc98#64 integrate .. //depot/projects/ia64/sys/conf/files.powerpc#27 integrate .. //depot/projects/ia64/sys/conf/kern.mk#17 integrate .. //depot/projects/ia64/sys/conf/kern.post.mk#60 integrate .. //depot/projects/ia64/sys/conf/kmod.mk#52 integrate .. //depot/projects/ia64/sys/conf/options#95 integrate .. //depot/projects/ia64/sys/conf/options.arm#8 integrate .. //depot/projects/ia64/sys/conf/options.i386#41 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/COPYRIGHT#4 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/README#5 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah.h#8 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah_desc.h#4 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah_devid.h#5 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/freebsd/ah_if.m#4 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/freebsd/ah_osdep.c#8 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/freebsd/ah_osdep.h#6 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/i386-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sh4-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/x86_64-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/version.h#8 integrate .. //depot/projects/ia64/sys/contrib/dev/oltr/if_oltr.c#17 integrate .. //depot/projects/ia64/sys/contrib/pf/net/if_pfsync.c#13 integrate .. //depot/projects/ia64/sys/crypto/via/padlock.c#3 integrate .. //depot/projects/ia64/sys/ddb/db_sym.c#6 integrate .. //depot/projects/ia64/sys/dev/aac/aac_pci.c#37 integrate .. //depot/projects/ia64/sys/dev/acpi_support/acpi_panasonic.c#5 integrate .. //depot/projects/ia64/sys/dev/acpica/Osd/OsdSchedule.c#22 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi.c#68 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_battery.c#11 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_thermal.c#25 integrate .. //depot/projects/ia64/sys/dev/acpica/acpivar.h#40 integrate .. //depot/projects/ia64/sys/dev/ahb/ahb.c#13 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic79xx_osm.h#17 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7xxx_osm.h#19 integrate .. //depot/projects/ia64/sys/dev/an/if_an.c#38 integrate .. //depot/projects/ia64/sys/dev/arcmsr/arcmsr.c#5 integrate .. //depot/projects/ia64/sys/dev/arl/if_arl.c#7 integrate .. //depot/projects/ia64/sys/dev/arl/if_arl_isa.c#6 integrate .. //depot/projects/ia64/sys/dev/ata/ata-chipset.c#52 integrate .. //depot/projects/ia64/sys/dev/ath/if_ath.c#32 integrate .. //depot/projects/ia64/sys/dev/ath/if_ath_pci.c#14 integrate .. //depot/projects/ia64/sys/dev/ath/if_athvar.h#19 integrate .. //depot/projects/ia64/sys/dev/atkbdc/atkbd.c#4 integrate .. //depot/projects/ia64/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/awi/awi.c#21 integrate .. //depot/projects/ia64/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/ia64/sys/dev/bce/if_bcereg.h#3 integrate .. //depot/projects/ia64/sys/dev/bfe/if_bfe.c#17 integrate .. //depot/projects/ia64/sys/dev/bfe/if_bfereg.h#9 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#67 integrate .. //depot/projects/ia64/sys/dev/bge/if_bgereg.h#38 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_os.c#26 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus.c#27 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus_cis.c#26 integrate .. //depot/projects/ia64/sys/dev/ciss/ciss.c#45 integrate .. //depot/projects/ia64/sys/dev/cm/if_cm_isa.c#8 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6.c#14 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6var.h#5 integrate .. //depot/projects/ia64/sys/dev/cnw/if_cnw.c#17 integrate .. //depot/projects/ia64/sys/dev/cpufreq/ichss.c#2 integrate .. //depot/projects/ia64/sys/dev/ct/bshw_machdep.c#6 integrate .. //depot/projects/ia64/sys/dev/ctau/if_ct.c#14 integrate .. //depot/projects/ia64/sys/dev/cx/if_cx.c#15 integrate .. //depot/projects/ia64/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/ia64/sys/dev/dc/if_dc.c#6 integrate .. //depot/projects/ia64/sys/dev/dc/if_dcreg.h#5 integrate .. //depot/projects/ia64/sys/dev/dcons/dcons_os.c#6 integrate .. //depot/projects/ia64/sys/dev/digi/digi.c#23 integrate .. //depot/projects/ia64/sys/dev/dpt/dpt_scsi.c#16 integrate .. //depot/projects/ia64/sys/dev/drm/drm.h#10 integrate .. //depot/projects/ia64/sys/dev/drm/drm_scatter.c#3 integrate .. //depot/projects/ia64/sys/dev/drm/i915_drv.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/mga_drv.c#10 integrate .. //depot/projects/ia64/sys/dev/drm/r300_cmdbuf.c#4 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed.c#28 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_cbus.c#17 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_novell.c#5 integrate .. //depot/projects/ia64/sys/dev/ed/if_edvar.h#12 integrate .. //depot/projects/ia64/sys/dev/em/if_em.c#52 integrate .. //depot/projects/ia64/sys/dev/em/if_em_hw.c#19 integrate .. //depot/projects/ia64/sys/dev/fb/boot_font.c#7 integrate .. //depot/projects/ia64/sys/dev/fb/gfb.c#9 integrate .. //depot/projects/ia64/sys/dev/firewire/fwohci_pci.c#37 integrate .. //depot/projects/ia64/sys/dev/fxp/if_fxp.c#66 integrate .. //depot/projects/ia64/sys/dev/gem/if_gem.c#26 integrate .. //depot/projects/ia64/sys/dev/gfb/gfb_pci.c#15 integrate .. //depot/projects/ia64/sys/dev/hifn/hifn7751.c#28 integrate .. //depot/projects/ia64/sys/dev/hifn/hifn7751var.h#8 integrate .. //depot/projects/ia64/sys/dev/hme/if_hme.c#28 integrate .. //depot/projects/ia64/sys/dev/hptmv/entry.c#8 integrate .. //depot/projects/ia64/sys/dev/ic/ns16550.h#6 integrate .. //depot/projects/ia64/sys/dev/idt/idt.c#11 integrate .. //depot/projects/ia64/sys/dev/ie/if_ie_isa.c#6 integrate .. //depot/projects/ia64/sys/dev/iir/iir.c#15 integrate .. //depot/projects/ia64/sys/dev/iir/iir_pci.c#16 integrate .. //depot/projects/ia64/sys/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/ia64/sys/dev/ips/ips.c#13 integrate .. //depot/projects/ia64/sys/dev/ipw/if_ipw.c#8 integrate .. //depot/projects/ia64/sys/dev/ipw/if_ipwvar.h#5 integrate .. //depot/projects/ia64/sys/dev/isp/isp_freebsd.c#30 integrate .. //depot/projects/ia64/sys/dev/isp/isp_freebsd.h#25 integrate .. //depot/projects/ia64/sys/dev/isp/isp_pci.c#30 integrate .. //depot/projects/ia64/sys/dev/isp/isp_tpublic.h#8 integrate .. //depot/projects/ia64/sys/dev/isp/ispvar.h#22 integrate .. //depot/projects/ia64/sys/dev/iwi/if_iwi.c#8 integrate .. //depot/projects/ia64/sys/dev/ixgb/if_ixgb.h#7 integrate .. //depot/projects/ia64/sys/dev/ixgb/if_ixgb_osdep.h#4 integrate .. //depot/projects/ia64/sys/dev/le/am7990.c#2 integrate .. //depot/projects/ia64/sys/dev/le/am79900.c#2 integrate .. //depot/projects/ia64/sys/dev/le/if_le_cbus.c#1 branch .. //depot/projects/ia64/sys/dev/le/if_le_isa.c#1 branch .. //depot/projects/ia64/sys/dev/le/if_le_ledma.c#2 integrate .. //depot/projects/ia64/sys/dev/le/if_le_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/le/lance.c#2 integrate .. //depot/projects/ia64/sys/dev/le/lancereg.h#2 integrate .. //depot/projects/ia64/sys/dev/le/lancevar.h#2 integrate .. //depot/projects/ia64/sys/dev/lge/if_lge.c#29 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc.c#13 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc.h#3 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc.c#18 delete .. //depot/projects/ia64/sys/dev/lnc/if_lnc_cbus.c#11 delete .. //depot/projects/ia64/sys/dev/lnc/if_lnc_isa.c#10 delete .. //depot/projects/ia64/sys/dev/lnc/if_lnc_pci.c#14 delete .. //depot/projects/ia64/sys/dev/lnc/if_lncreg.h#2 delete .. //depot/projects/ia64/sys/dev/lnc/if_lncvar.h#5 delete .. //depot/projects/ia64/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi_ioctl.h#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi_linux.c#1 branch .. //depot/projects/ia64/sys/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfireg.h#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfivar.h#2 integrate .. //depot/projects/ia64/sys/dev/mii/brgphy.c#28 integrate .. //depot/projects/ia64/sys/dev/mii/ciphy.c#4 integrate .. //depot/projects/ia64/sys/dev/mii/e1000phy.c#10 integrate .. //depot/projects/ia64/sys/dev/mii/mii_physubr.c#11 integrate .. //depot/projects/ia64/sys/dev/mii/miivar.h#6 integrate .. //depot/projects/ia64/sys/dev/mii/nsgphy.c#14 integrate .. //depot/projects/ia64/sys/dev/mii/rgephy.c#5 integrate .. //depot/projects/ia64/sys/dev/mii/tdkphy.c#13 integrate .. //depot/projects/ia64/sys/dev/mii/ukphy_subr.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.c#13 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.h#12 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_cam.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_cam.h#3 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_debug.c#11 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_pci.c#22 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_raid.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_reg.h#3 integrate .. //depot/projects/ia64/sys/dev/mse/mse.c#6 integrate .. //depot/projects/ia64/sys/dev/mse/mse_cbus.c#5 integrate .. //depot/projects/ia64/sys/dev/mse/mse_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/ia64/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/ia64/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/ia64/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/ia64/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/ia64/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/ia64/sys/dev/my/if_my.c#25 integrate .. //depot/projects/ia64/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/if_myri10ge.c#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/ia64/sys/dev/ncv/ncr53c500.c#10 integrate .. //depot/projects/ia64/sys/dev/nge/if_nge.c#40 integrate .. //depot/projects/ia64/sys/dev/nsp/nsp.c#10 integrate .. //depot/projects/ia64/sys/dev/nve/if_nve.c#10 integrate .. //depot/projects/ia64/sys/dev/ofw/ofw_console.c#19 integrate .. //depot/projects/ia64/sys/dev/pbio/pbio.c#6 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb.c#50 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb_pci.c#9 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbbvar.h#17 integrate .. //depot/projects/ia64/sys/dev/pci/fixup_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/pci/pcireg.h#15 integrate .. //depot/projects/ia64/sys/dev/pdq/pdq_freebsd.h#13 integrate .. //depot/projects/ia64/sys/dev/pdq/pdqvar.h#10 integrate .. //depot/projects/ia64/sys/dev/ppbus/vpoio.c#5 integrate .. //depot/projects/ia64/sys/dev/puc/pucdata.c#34 integrate .. //depot/projects/ia64/sys/dev/ral/if_ral_pci.c#4 integrate .. //depot/projects/ia64/sys/dev/ral/rt2560.c#2 integrate .. //depot/projects/ia64/sys/dev/ral/rt2661.c#2 integrate .. //depot/projects/ia64/sys/dev/re/if_re.c#28 integrate .. //depot/projects/ia64/sys/dev/rr232x/os_bsd.h#2 integrate .. //depot/projects/ia64/sys/dev/safe/safe.c#10 integrate .. //depot/projects/ia64/sys/dev/safe/safevar.h#2 integrate .. //depot/projects/ia64/sys/dev/sbsh/if_sbsh.c#11 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#71 integrate .. //depot/projects/ia64/sys/dev/sk/if_sk.c#2 integrate .. //depot/projects/ia64/sys/dev/sk/if_skreg.h#3 integrate .. //depot/projects/ia64/sys/dev/sound/driver.c#7 integrate .. //depot/projects/ia64/sys/dev/sound/midi/midi.c#9 branch .. //depot/projects/ia64/sys/dev/sound/midi/midi.h#8 branch .. //depot/projects/ia64/sys/dev/sound/midi/midiq.h#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpu401.c#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpu401.h#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpu_if.m#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpufoi_if.m#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/sequencer.c#10 branch .. //depot/projects/ia64/sys/dev/sound/midi/sequencer.h#4 branch .. //depot/projects/ia64/sys/dev/sound/midi/synth_if.m#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/cmi.c#19 integrate .. //depot/projects/ia64/sys/dev/sound/pci/emu10k1.c#24 integrate .. //depot/projects/ia64/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/es137x.c#20 integrate .. //depot/projects/ia64/sys/dev/sound/pci/ich.c#35 integrate .. //depot/projects/ia64/sys/dev/sound/pci/maestro.c#15 integrate .. //depot/projects/ia64/sys/dev/sound/pci/via8233.c#20 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/feeder_rate.c#14 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/sound.c#23 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/sound.h#18 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/vchan.c#15 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30.c#11 integrate .. //depot/projects/ia64/sys/dev/syscons/apm/apm_saver.c#6 integrate .. //depot/projects/ia64/sys/dev/syscons/scvesactl.c#6 integrate .. //depot/projects/ia64/sys/dev/syscons/syscons.c#41 integrate .. //depot/projects/ia64/sys/dev/trm/trm.c#25 integrate .. //depot/projects/ia64/sys/dev/tx/if_tx.c#27 integrate .. //depot/projects/ia64/sys/dev/txp/if_txp.c#25 integrate .. //depot/projects/ia64/sys/dev/uart/uart.h#5 integrate .. //depot/projects/ia64/sys/dev/uart/uart_dbg.c#3 integrate .. //depot/projects/ia64/sys/dev/uart/uart_dev_ns8250.c#12 integrate .. //depot/projects/ia64/sys/dev/uart/uart_tty.c#14 integrate .. //depot/projects/ia64/sys/dev/ubsec/ubsec.c#27 integrate .. //depot/projects/ia64/sys/dev/ubsec/ubsecvar.h#8 integrate .. //depot/projects/ia64/sys/dev/usb/ehci.c#15 integrate .. //depot/projects/ia64/sys/dev/usb/ehci_pci.c#19 integrate .. //depot/projects/ia64/sys/dev/usb/ehcivar.h#10 integrate .. //depot/projects/ia64/sys/dev/usb/if_axe.c#20 integrate .. //depot/projects/ia64/sys/dev/usb/if_axereg.h#8 integrate .. //depot/projects/ia64/sys/dev/usb/if_ural.c#8 integrate .. //depot/projects/ia64/sys/dev/usb/ohci.c#33 integrate .. //depot/projects/ia64/sys/dev/usb/ohci_pci.c#18 integrate .. //depot/projects/ia64/sys/dev/usb/ohcireg.h#8 integrate .. //depot/projects/ia64/sys/dev/usb/ohcivar.h#15 integrate .. //depot/projects/ia64/sys/dev/usb/sl811hs.c#3 integrate .. //depot/projects/ia64/sys/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/ia64/sys/dev/usb/ugen.c#30 integrate .. //depot/projects/ia64/sys/dev/usb/uhci.c#32 integrate .. //depot/projects/ia64/sys/dev/usb/uhci_pci.c#16 integrate .. //depot/projects/ia64/sys/dev/usb/uhcivar.h#13 integrate .. //depot/projects/ia64/sys/dev/usb/uhid.c#26 integrate .. //depot/projects/ia64/sys/dev/usb/umodem.c#18 integrate .. //depot/projects/ia64/sys/dev/usb/uplcom.c#24 integrate .. //depot/projects/ia64/sys/dev/usb/usb.c#27 integrate .. //depot/projects/ia64/sys/dev/usb/usb_mem.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/usb_subr.c#27 integrate .. //depot/projects/ia64/sys/dev/usb/usbdevs#74 integrate .. //depot/projects/ia64/sys/dev/usb/usbdi.c#21 integrate .. //depot/projects/ia64/sys/dev/usb/usbdivar.h#14 integrate .. //depot/projects/ia64/sys/dev/usb/uscanner.c#27 integrate .. //depot/projects/ia64/sys/dev/usb/uvisor.c#17 integrate .. //depot/projects/ia64/sys/dev/wds/wd7000.c#7 integrate .. //depot/projects/ia64/sys/dev/wi/if_wi.c#64 integrate .. //depot/projects/ia64/sys/dev/wi/if_wi_pci.c#23 integrate .. //depot/projects/ia64/sys/dev/wl/if_wl.c#19 integrate .. //depot/projects/ia64/sys/dev/zs/zs.c#22 integrate .. //depot/projects/ia64/sys/doc/subsys/Dependencies#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-cam#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-geom#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-kern#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-linux#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-vm#1 branch .. //depot/projects/ia64/sys/doc/subsys/Makefile#1 branch .. //depot/projects/ia64/sys/doc/subsys/README#1 branch .. //depot/projects/ia64/sys/doc/subsys/common-Doxyfile#1 branch .. //depot/projects/ia64/sys/doc/subsys/notreviewed.dox#1 branch .. //depot/projects/ia64/sys/fs/fdescfs/fdesc_vfsops.c#20 integrate .. //depot/projects/ia64/sys/fs/msdosfs/msdosfs_vfsops.c#40 integrate .. //depot/projects/ia64/sys/fs/ntfs/ntfs_vfsops.c#26 integrate .. //depot/projects/ia64/sys/fs/nullfs/null_vfsops.c#21 integrate .. //depot/projects/ia64/sys/fs/nwfs/nwfs_io.c#19 integrate .. //depot/projects/ia64/sys/fs/procfs/procfs.c#10 integrate .. //depot/projects/ia64/sys/fs/pseudofs/pseudofs.c#16 integrate .. //depot/projects/ia64/sys/fs/pseudofs/pseudofs.h#17 integrate .. //depot/projects/ia64/sys/fs/smbfs/smbfs_io.c#22 integrate .. //depot/projects/ia64/sys/fs/smbfs/smbfs_subr.c#8 integrate .. //depot/projects/ia64/sys/fs/smbfs/smbfs_vnops.c#31 integrate .. //depot/projects/ia64/sys/fs/udf/udf_vfsops.c#25 integrate .. //depot/projects/ia64/sys/gdb/gdb.h#3 integrate .. //depot/projects/ia64/sys/gdb/gdb_cons.c#2 integrate .. //depot/projects/ia64/sys/gdb/gdb_main.c#6 integrate .. //depot/projects/ia64/sys/gdb/gdb_packet.c#3 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli.c#7 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli.h#3 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli_ctl.c#4 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/ia64/sys/geom/eli/g_eli_key.c#3 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/ia64/sys/geom/geom.h#48 integrate .. //depot/projects/ia64/sys/geom/geom_bsd.c#46 integrate .. //depot/projects/ia64/sys/geom/geom_dev.c#54 integrate .. //depot/projects/ia64/sys/geom/geom_gpt.c#31 integrate .. //depot/projects/ia64/sys/geom/geom_io.c#43 integrate .. //depot/projects/ia64/sys/gnu/fs/ext2fs/ext2_vfsops.c#4 integrate .. //depot/projects/ia64/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#3 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#2 delete .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#3 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 01:02:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3CDBE16A510; Thu, 22 Jun 2006 01:02:04 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CF28216A479 for ; Thu, 22 Jun 2006 01:02:03 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F130F43D4C for ; Thu, 22 Jun 2006 01:02:02 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M122va066394 for ; Thu, 22 Jun 2006 01:02:02 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M10lpJ065600 for perforce@freebsd.org; Thu, 22 Jun 2006 01:00:47 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 01:00:47 GMT Message-Id: <200606220100.k5M10lpJ065600@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 99788 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 01:02:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=99788 Change 99788 by marcel@marcel_nfs on 2006/06/22 01:00:01 IFC @99784 Affected files ... .. //depot/projects/ia64/MAINTAINERS#53 integrate .. //depot/projects/ia64/Makefile#49 integrate .. //depot/projects/ia64/Makefile.inc1#110 integrate .. //depot/projects/ia64/ObsoleteFiles.inc#6 integrate .. //depot/projects/ia64/README#6 integrate .. //depot/projects/ia64/UPDATING#87 integrate .. //depot/projects/ia64/bin/setfacl/setfacl.1#9 integrate .. //depot/projects/ia64/bin/setfacl/setfacl.c#9 integrate .. //depot/projects/ia64/bin/sh/cd.c#10 integrate .. //depot/projects/ia64/bin/sh/eval.c#16 integrate .. //depot/projects/ia64/bin/sh/sh.1#36 integrate .. //depot/projects/ia64/bin/sh/var.c#16 integrate .. //depot/projects/ia64/bin/sh/var.h#7 integrate .. //depot/projects/ia64/contrib/binutils/bfd/elf64-sparc.c#8 integrate .. //depot/projects/ia64/contrib/bsnmp/NEWS#9 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmpdef/gensnmpdef.1#5 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmpdef/gensnmpdef.c#3 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmptree/gensnmptree.1#7 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmptree/gensnmptree.c#10 integrate .. //depot/projects/ia64/contrib/file/ChangeLog#3 integrate .. //depot/projects/ia64/contrib/file/FREEBSD-upgrade#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/adventure#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/amigaos#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/animation#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/apple#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/archive#6 integrate .. //depot/projects/ia64/contrib/file/Magdir/audio#6 integrate .. //depot/projects/ia64/contrib/file/Magdir/basis#1 branch .. //depot/projects/ia64/contrib/file/Magdir/bflt#1 branch .. //depot/projects/ia64/contrib/file/Magdir/bout#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/ia64/contrib/file/Magdir/c64#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/cad#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/commands#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/compress#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/console#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/ia64/contrib/file/Magdir/ctags#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/database#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/diff#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/digital#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/dump#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/elf#6 integrate .. //depot/projects/ia64/contrib/file/Magdir/filesystems#7 integrate .. //depot/projects/ia64/contrib/file/Magdir/flash#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/gnu#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/iff#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/images#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/java#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/linux#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/lisp#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/mach#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/macintosh#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/mail.news#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/maple#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/msdos#5 integrate .. //depot/projects/ia64/contrib/file/Magdir/mup#1 branch .. //depot/projects/ia64/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/perl#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/printer#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/psion#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/python#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/riff#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/scientific#1 branch .. //depot/projects/ia64/contrib/file/Magdir/sgi#3 integrate .. //depot/projects/ia64/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/sql#2 integrate .. //depot/projects/ia64/contrib/file/Magdir/varied.out#4 integrate .. //depot/projects/ia64/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/ia64/contrib/file/Makefile.am#7 integrate .. //depot/projects/ia64/contrib/file/Makefile.in#7 integrate .. //depot/projects/ia64/contrib/file/aclocal.m4#6 integrate .. //depot/projects/ia64/contrib/file/apprentice.c#6 integrate .. //depot/projects/ia64/contrib/file/ascmagic.c#6 integrate .. //depot/projects/ia64/contrib/file/compress.c#5 integrate .. //depot/projects/ia64/contrib/file/config.h.in#7 integrate .. //depot/projects/ia64/contrib/file/configure#7 integrate .. //depot/projects/ia64/contrib/file/configure.in#7 integrate .. //depot/projects/ia64/contrib/file/file.c#7 integrate .. //depot/projects/ia64/contrib/file/file.h#6 integrate .. //depot/projects/ia64/contrib/file/file.man#6 integrate .. //depot/projects/ia64/contrib/file/fsmagic.c#5 integrate .. //depot/projects/ia64/contrib/file/funcs.c#3 integrate .. //depot/projects/ia64/contrib/file/libmagic.man#2 integrate .. //depot/projects/ia64/contrib/file/magic.c#3 integrate .. //depot/projects/ia64/contrib/file/magic.man#6 integrate .. //depot/projects/ia64/contrib/file/magic.mime#6 integrate .. //depot/projects/ia64/contrib/file/magic2mime#3 integrate .. //depot/projects/ia64/contrib/file/patchlevel.h#7 integrate .. //depot/projects/ia64/contrib/file/print.c#6 integrate .. //depot/projects/ia64/contrib/file/readelf.c#7 integrate .. //depot/projects/ia64/contrib/file/readelf.h#5 integrate .. //depot/projects/ia64/contrib/file/softmagic.c#7 integrate .. //depot/projects/ia64/contrib/netcat/atomicio.c#2 integrate .. //depot/projects/ia64/contrib/netcat/atomicio.h#1 branch .. //depot/projects/ia64/contrib/netcat/nc.1#4 integrate .. //depot/projects/ia64/contrib/netcat/netcat.c#2 integrate .. //depot/projects/ia64/contrib/netcat/socks.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/ia64/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/README#2 integrate .. //depot/projects/ia64/contrib/openbsm/TODO#2 integrate .. //depot/projects/ia64/contrib/openbsm/VERSION#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/auditd/auditd.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/ia64/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/audit.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/ia64/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/libbsm.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/configure#2 integrate .. //depot/projects/ia64/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/ia64/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/ia64/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/ia64/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_audit.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_io.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_token.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_wrappers.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/ia64/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/ia64/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/ia64/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/ia64/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/ia64/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/ia64/contrib/pf/man/pfsync.4#8 integrate .. //depot/projects/ia64/contrib/sendmail/FREEBSD-upgrade#23 integrate .. //depot/projects/ia64/contrib/sendmail/PGPKEYS#10 integrate .. //depot/projects/ia64/contrib/sendmail/RELEASE_NOTES#17 integrate .. //depot/projects/ia64/contrib/sendmail/cf/README#16 integrate .. //depot/projects/ia64/contrib/sendmail/cf/cf/submit.cf#16 integrate .. //depot/projects/ia64/contrib/sendmail/cf/cf/submit.mc#8 integrate .. //depot/projects/ia64/contrib/sendmail/cf/feature/dnsbl.m4#7 integrate .. //depot/projects/ia64/contrib/sendmail/cf/feature/enhdnsbl.m4#5 integrate .. //depot/projects/ia64/contrib/sendmail/cf/m4/proto.m4#16 integrate .. //depot/projects/ia64/contrib/sendmail/cf/m4/version.m4#17 integrate .. //depot/projects/ia64/contrib/sendmail/include/libmilter/mfapi.h#11 integrate .. //depot/projects/ia64/contrib/sendmail/libmilter/docs/xxfi_header.html#4 integrate .. //depot/projects/ia64/contrib/sendmail/libmilter/engine.c#12 integrate .. //depot/projects/ia64/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/ia64/contrib/sendmail/src/README#16 integrate .. //depot/projects/ia64/contrib/sendmail/src/bf.c#9 integrate .. //depot/projects/ia64/contrib/sendmail/src/collect.c#14 integrate .. //depot/projects/ia64/contrib/sendmail/src/conf.c#19 integrate .. //depot/projects/ia64/contrib/sendmail/src/daemon.c#15 integrate .. //depot/projects/ia64/contrib/sendmail/src/deliver.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/domain.c#12 integrate .. //depot/projects/ia64/contrib/sendmail/src/envelope.c#10 integrate .. //depot/projects/ia64/contrib/sendmail/src/headers.c#14 integrate .. //depot/projects/ia64/contrib/sendmail/src/helpfile#8 integrate .. //depot/projects/ia64/contrib/sendmail/src/main.c#15 integrate .. //depot/projects/ia64/contrib/sendmail/src/map.c#14 integrate .. //depot/projects/ia64/contrib/sendmail/src/mci.c#15 integrate .. //depot/projects/ia64/contrib/sendmail/src/mime.c#11 integrate .. //depot/projects/ia64/contrib/sendmail/src/parseaddr.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/queue.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/savemail.c#11 integrate .. //depot/projects/ia64/contrib/sendmail/src/sendmail.h#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/sfsasl.c#13 integrate .. //depot/projects/ia64/contrib/sendmail/src/sfsasl.h#6 integrate .. //depot/projects/ia64/contrib/sendmail/src/srvrsmtp.c#17 integrate .. //depot/projects/ia64/contrib/sendmail/src/tls.c#13 integrate .. //depot/projects/ia64/contrib/sendmail/src/util.c#13 integrate .. //depot/projects/ia64/contrib/sendmail/src/version.c#17 integrate .. //depot/projects/ia64/contrib/tcpdump/tcpdump.1#7 integrate .. //depot/projects/ia64/contrib/top/top.X#8 integrate .. //depot/projects/ia64/contrib/traceroute/traceroute.8#6 integrate .. //depot/projects/ia64/contrib/traceroute/traceroute.c#9 integrate .. //depot/projects/ia64/crypto/openssh/config.h#11 integrate .. //depot/projects/ia64/crypto/openssh/loginrec.c#12 integrate .. //depot/projects/ia64/crypto/openssh/ssh_namespace.h#1 branch .. //depot/projects/ia64/etc/bluetooth/hcsecd.conf#3 integrate .. //depot/projects/ia64/etc/defaults/rc.conf#70 integrate .. //depot/projects/ia64/etc/devd.conf#24 integrate .. //depot/projects/ia64/etc/hosts.allow#5 integrate .. //depot/projects/ia64/etc/mtree/BSD.usr.dist#40 integrate .. //depot/projects/ia64/etc/netstart#8 integrate .. //depot/projects/ia64/etc/periodic/daily/470.status-named#7 integrate .. //depot/projects/ia64/etc/rc.d/Makefile#40 integrate .. //depot/projects/ia64/etc/rc.d/abi#7 integrate .. //depot/projects/ia64/etc/rc.d/auditd#2 integrate .. //depot/projects/ia64/etc/rc.d/bridge#1 branch .. //depot/projects/ia64/etc/rc.d/cached#2 integrate .. //depot/projects/ia64/etc/rc.d/devd#9 integrate .. //depot/projects/ia64/etc/rc.d/isdnd#13 integrate .. //depot/projects/ia64/etc/rc.d/jail#20 integrate .. //depot/projects/ia64/etc/rc.d/ldconfig#14 integrate .. //depot/projects/ia64/etc/rc.d/mdconfig#1 branch .. //depot/projects/ia64/etc/rc.d/mdconfig2#1 branch .. //depot/projects/ia64/etc/rc.d/moused#9 integrate .. //depot/projects/ia64/etc/rc.d/netif#14 integrate .. //depot/projects/ia64/etc/rc.d/pcvt#6 delete .. //depot/projects/ia64/etc/rc.d/pf#7 integrate .. //depot/projects/ia64/etc/rc.d/syscons#11 integrate .. //depot/projects/ia64/etc/rc.d/sysctl#10 integrate .. //depot/projects/ia64/etc/rc.subr#29 integrate .. //depot/projects/ia64/etc/sendmail/freebsd.mc#12 integrate .. //depot/projects/ia64/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/ia64/games/fortune/datfiles/fortunes#57 integrate .. //depot/projects/ia64/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/ia64/include/arpa/nameser.h#4 integrate .. //depot/projects/ia64/include/glob.h#4 integrate .. //depot/projects/ia64/include/netdb.h#15 integrate .. //depot/projects/ia64/include/res_update.h#2 integrate .. //depot/projects/ia64/include/resolv.h#10 integrate .. //depot/projects/ia64/kerberos5/lib/libroken/Makefile#7 integrate .. //depot/projects/ia64/lib/csu/common/crtbegin.c#3 delete .. //depot/projects/ia64/lib/csu/common/crtend.c#2 delete .. //depot/projects/ia64/lib/libatm/Makefile#8 integrate .. //depot/projects/ia64/lib/libbsm/Makefile#2 integrate .. //depot/projects/ia64/lib/libc/Makefile#23 integrate .. //depot/projects/ia64/lib/libc/arm/SYS.h#3 integrate .. //depot/projects/ia64/lib/libc/gen/getgrent.c#13 integrate .. //depot/projects/ia64/lib/libc/gen/gethostname.c#5 integrate .. //depot/projects/ia64/lib/libc/gen/glob.3#9 integrate .. //depot/projects/ia64/lib/libc/gen/glob.c#7 integrate .. //depot/projects/ia64/lib/libc/gen/signal.3#10 integrate .. //depot/projects/ia64/lib/libc/i386/gen/_ctx_start.S#4 integrate .. //depot/projects/ia64/lib/libc/include/isc/list.h#1 branch .. //depot/projects/ia64/lib/libc/nameser/Symbol.map#2 integrate .. //depot/projects/ia64/lib/libc/nameser/ns_samedomain.c#2 integrate .. //depot/projects/ia64/lib/libc/net/Makefile.inc#14 integrate .. //depot/projects/ia64/lib/libc/net/Symbol.map#3 integrate .. //depot/projects/ia64/lib/libc/net/gai_strerror.3#4 integrate .. //depot/projects/ia64/lib/libc/net/gai_strerror.c#2 integrate .. //depot/projects/ia64/lib/libc/net/gethostnamadr.c#9 integrate .. //depot/projects/ia64/lib/libc/net/getnameinfo.c#10 integrate .. //depot/projects/ia64/lib/libc/net/res_mkupdate.c#6 delete .. //depot/projects/ia64/lib/libc/net/res_update.c#5 delete .. //depot/projects/ia64/lib/libc/resolv/Makefile.inc#2 integrate .. //depot/projects/ia64/lib/libc/resolv/Symbol.map#2 integrate .. //depot/projects/ia64/lib/libc/resolv/h_errno.c#2 integrate .. //depot/projects/ia64/lib/libc/resolv/res_findzonecut.c#1 branch .. //depot/projects/ia64/lib/libc/resolv/res_mkupdate.c#1 branch .. //depot/projects/ia64/lib/libc/resolv/res_state.c#3 integrate .. //depot/projects/ia64/lib/libc/resolv/res_update.c#1 branch .. //depot/projects/ia64/lib/libc/stdlib/a64l.c#2 integrate .. //depot/projects/ia64/lib/libc/stdlib/malloc.c#32 integrate .. //depot/projects/ia64/lib/libc/stdlib/strtol.3#8 integrate .. //depot/projects/ia64/lib/libc/stdlib/strtoul.3#9 integrate .. //depot/projects/ia64/lib/libc/string/strlcpy.c#7 integrate .. //depot/projects/ia64/lib/libc/sys/chflags.2#8 integrate .. //depot/projects/ia64/lib/libc/sys/mincore.2#9 integrate .. //depot/projects/ia64/lib/libc/sys/stat.2#14 integrate .. //depot/projects/ia64/lib/libc/sys/truncate.2#6 integrate .. //depot/projects/ia64/lib/libc/sys/wait.2#10 integrate .. //depot/projects/ia64/lib/libfetch/ftp.c#17 integrate .. //depot/projects/ia64/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/ia64/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/ia64/lib/libmagic/Makefile#7 integrate .. //depot/projects/ia64/lib/libmagic/config.h#3 integrate .. //depot/projects/ia64/lib/libpam/modules/pam_ssh/Makefile#12 integrate .. //depot/projects/ia64/lib/libpthread/pthread.map#17 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#39 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_sig.c#32 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_sigaction.c#9 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_symbols.c#4 integrate .. //depot/projects/ia64/lib/libsdp/sdp.h#5 integrate .. //depot/projects/ia64/lib/libsdp/util.c#6 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_mutex.c#26 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_private.h#26 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_spec.c#4 integrate .. //depot/projects/ia64/lib/libthread_db/libpthread_db.c#6 integrate .. //depot/projects/ia64/lib/libthread_db/libpthread_db.h#3 integrate .. //depot/projects/ia64/lib/libthread_db/libthr_db.c#7 integrate .. //depot/projects/ia64/lib/libutil/Makefile#14 integrate .. //depot/projects/ia64/lib/libutil/kld.c#2 integrate .. //depot/projects/ia64/lib/libutil/login_class.3#6 integrate .. //depot/projects/ia64/libexec/ftpd/Makefile#13 integrate .. //depot/projects/ia64/libexec/ftpd/ftpcmd.y#21 integrate .. //depot/projects/ia64/release/Makefile#97 integrate .. //depot/projects/ia64/release/doc/README#4 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/Makefile#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/Makefile#4 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/article.sgml#3 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#37 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#97 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#9 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/Makefile#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/alpha/Makefile#2 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/alpha/article.sgml#3 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/common/install.sgml#18 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/common/layout.sgml#7 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/Makefile#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/alpha/Makefile#2 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/alpha/article.sgml#4 delete .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#159 integrate .. //depot/projects/ia64/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#26 integrate .. //depot/projects/ia64/release/doc/ru_RU.KOI8-R/hardware/Makefile#2 integrate .. //depot/projects/ia64/release/doc/ru_RU.KOI8-R/hardware/common/dev.sgml#13 integrate .. //depot/projects/ia64/release/doc/share/examples/Makefile.relnotesng#10 integrate .. //depot/projects/ia64/release/doc/share/misc/dev.archlist.txt#18 integrate .. //depot/projects/ia64/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#8 integrate .. //depot/projects/ia64/release/i386/mkisoimages.sh#9 integrate .. //depot/projects/ia64/release/pc98/fixit-small_crunch.conf#7 integrate .. //depot/projects/ia64/release/picobsd/build/picobsd#11 integrate .. //depot/projects/ia64/sbin/Makefile#49 integrate .. //depot/projects/ia64/sbin/adjkerntz/adjkerntz.c#6 integrate .. //depot/projects/ia64/sbin/devfs/devfs.c#4 integrate .. //depot/projects/ia64/sbin/dhclient/dhclient.c#4 integrate .. //depot/projects/ia64/sbin/fdisk/fdisk.c#26 integrate .. //depot/projects/ia64/sbin/ffsinfo/ffsinfo.8#11 integrate .. //depot/projects/ia64/sbin/fsdb/fsdb.8#11 integrate .. //depot/projects/ia64/sbin/fsdb/fsdb.c#14 integrate .. //depot/projects/ia64/sbin/geom/class/eli/geli.8#4 integrate .. //depot/projects/ia64/sbin/geom/class/eli/geom_eli.c#6 integrate .. //depot/projects/ia64/sbin/ggate/ggatec/ggatec.8#6 integrate .. //depot/projects/ia64/sbin/ifconfig/Makefile#11 integrate .. //depot/projects/ia64/sbin/ifconfig/ifconfig.8#37 integrate .. //depot/projects/ia64/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/ia64/sbin/ifconfig/ifpfsync.c#3 integrate .. //depot/projects/ia64/sbin/init/init.c#12 integrate .. //depot/projects/ia64/sbin/ipfw/ipfw.8#52 integrate .. //depot/projects/ia64/sbin/ipfw/ipfw2.c#51 integrate .. //depot/projects/ia64/sbin/mount/mount.8#25 integrate .. //depot/projects/ia64/sbin/mount/mount.c#26 integrate .. //depot/projects/ia64/sbin/mount_msdosfs/mount_msdosfs.c#14 integrate .. //depot/projects/ia64/sbin/mount_std/mount_std.8#10 integrate .. //depot/projects/ia64/sbin/rcorder/rcorder.c#6 integrate .. //depot/projects/ia64/sbin/setkey/setkey.8#3 integrate .. //depot/projects/ia64/secure/lib/libssh/Makefile#20 integrate .. //depot/projects/ia64/secure/libexec/sftp-server/Makefile#12 integrate .. //depot/projects/ia64/secure/libexec/ssh-keysign/Makefile#6 integrate .. //depot/projects/ia64/secure/usr.bin/scp/Makefile#10 integrate .. //depot/projects/ia64/secure/usr.bin/sftp/Makefile#12 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-add/Makefile#9 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-agent/Makefile#9 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-keygen/Makefile#9 integrate .. //depot/projects/ia64/secure/usr.bin/ssh-keyscan/Makefile#8 integrate .. //depot/projects/ia64/secure/usr.bin/ssh/Makefile#17 integrate .. //depot/projects/ia64/secure/usr.sbin/sshd/Makefile#24 integrate .. //depot/projects/ia64/share/examples/diskless/clone_root#4 integrate .. //depot/projects/ia64/share/examples/etc/README.examples#6 integrate .. //depot/projects/ia64/share/examples/kld/cdev/module/cdevmod.c#5 integrate .. //depot/projects/ia64/share/examples/mdoc/example.4#6 integrate .. //depot/projects/ia64/share/man/man4/Makefile#94 integrate .. //depot/projects/ia64/share/man/man4/aac.4#12 integrate .. //depot/projects/ia64/share/man/man4/acpi.4#30 integrate .. //depot/projects/ia64/share/man/man4/acpi_dock.4#1 branch .. //depot/projects/ia64/share/man/man4/adv.4#4 integrate .. //depot/projects/ia64/share/man/man4/adw.4#4 integrate .. //depot/projects/ia64/share/man/man4/aha.4#9 integrate .. //depot/projects/ia64/share/man/man4/ahb.4#5 integrate .. //depot/projects/ia64/share/man/man4/ahc.4#8 integrate .. //depot/projects/ia64/share/man/man4/ahd.4#6 integrate .. //depot/projects/ia64/share/man/man4/altq.4#9 integrate .. //depot/projects/ia64/share/man/man4/amd.4#3 integrate .. //depot/projects/ia64/share/man/man4/amr.4#14 integrate .. //depot/projects/ia64/share/man/man4/arcmsr.4#2 integrate .. //depot/projects/ia64/share/man/man4/atkbd.4#7 integrate .. //depot/projects/ia64/share/man/man4/audit.4#2 integrate .. //depot/projects/ia64/share/man/man4/auditpipe.4#1 branch .. //depot/projects/ia64/share/man/man4/bge.4#18 integrate .. //depot/projects/ia64/share/man/man4/bt.4#5 integrate .. //depot/projects/ia64/share/man/man4/carp.4#5 integrate .. //depot/projects/ia64/share/man/man4/ciss.4#8 integrate .. //depot/projects/ia64/share/man/man4/cpufreq.4#6 integrate .. //depot/projects/ia64/share/man/man4/dc.4#15 integrate .. //depot/projects/ia64/share/man/man4/ddb.4#11 integrate .. //depot/projects/ia64/share/man/man4/dpt.4#8 integrate .. //depot/projects/ia64/share/man/man4/esp.4#4 integrate .. //depot/projects/ia64/share/man/man4/fxp.4#14 integrate .. //depot/projects/ia64/share/man/man4/geom.4#14 integrate .. //depot/projects/ia64/share/man/man4/hptmv.4#5 integrate .. //depot/projects/ia64/share/man/man4/ida.4#5 integrate .. //depot/projects/ia64/share/man/man4/if_bridge.4#8 integrate .. //depot/projects/ia64/share/man/man4/iir.4#7 integrate .. //depot/projects/ia64/share/man/man4/ip.4#18 integrate .. //depot/projects/ia64/share/man/man4/ips.4#3 integrate .. //depot/projects/ia64/share/man/man4/isp.4#9 integrate .. //depot/projects/ia64/share/man/man4/ispfw.4#4 integrate .. //depot/projects/ia64/share/man/man4/kbdmux.4#4 integrate .. //depot/projects/ia64/share/man/man4/ktr.4#6 integrate .. //depot/projects/ia64/share/man/man4/lmc.4#6 integrate .. //depot/projects/ia64/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/ia64/share/man/man4/man4.alpha/linux.4#4 delete .. //depot/projects/ia64/share/man/man4/man4.alpha/osf1.4#4 delete .. //depot/projects/ia64/share/man/man4/man4.i386/Makefile#31 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/linux.4#6 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/lnc.4#9 delete .. //depot/projects/ia64/share/man/man4/man4.i386/padlock.4#3 integrate .. //depot/projects/ia64/share/man/man4/mlx.4#7 integrate .. //depot/projects/ia64/share/man/man4/mly.4#4 integrate .. //depot/projects/ia64/share/man/man4/mpt.4#6 integrate .. //depot/projects/ia64/share/man/man4/mxge.4#1 branch .. //depot/projects/ia64/share/man/man4/myri10ge.4#2 delete .. //depot/projects/ia64/share/man/man4/ncr.4#4 integrate .. //depot/projects/ia64/share/man/man4/ncv.4#4 integrate .. //depot/projects/ia64/share/man/man4/ng_etf.4#7 integrate .. //depot/projects/ia64/share/man/man4/nsp.4#4 integrate .. //depot/projects/ia64/share/man/man4/pcvt.4#8 delete .. //depot/projects/ia64/share/man/man4/pst.4#5 integrate .. //depot/projects/ia64/share/man/man4/sched_4bsd.4#3 integrate .. //depot/projects/ia64/share/man/man4/sched_core.4#1 branch .. //depot/projects/ia64/share/man/man4/sched_ule.4#3 integrate .. //depot/projects/ia64/share/man/man4/sio.4#13 integrate .. //depot/projects/ia64/share/man/man4/smp.4#10 integrate .. //depot/projects/ia64/share/man/man4/snd_csa.4#6 integrate .. //depot/projects/ia64/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/ia64/share/man/man4/snd_gusc.4#5 integrate .. //depot/projects/ia64/share/man/man4/snd_ich.4#7 integrate .. //depot/projects/ia64/share/man/man4/snd_sbc.4#7 integrate .. //depot/projects/ia64/share/man/man4/splash.4#5 integrate .. //depot/projects/ia64/share/man/man4/stg.4#5 integrate .. //depot/projects/ia64/share/man/man4/sym.4#7 integrate .. //depot/projects/ia64/share/man/man4/trm.4#6 integrate .. //depot/projects/ia64/share/man/man4/twa.4#6 integrate .. //depot/projects/ia64/share/man/man4/twe.4#9 integrate .. //depot/projects/ia64/share/man/man4/umodem.4#6 integrate .. //depot/projects/ia64/share/man/man4/uscanner.4#13 integrate .. //depot/projects/ia64/share/man/man4/uvisor.4#7 integrate .. //depot/projects/ia64/share/man/man4/vinum.4#16 integrate .. //depot/projects/ia64/share/man/man4/vkbd.4#4 integrate .. //depot/projects/ia64/share/man/man5/Makefile#26 integrate .. //depot/projects/ia64/share/man/man5/devfs.5#6 integrate .. //depot/projects/ia64/share/man/man5/ext2fs.5#1 branch .. //depot/projects/ia64/share/man/man5/linprocfs.5#7 integrate .. //depot/projects/ia64/share/man/man5/mailer.conf.5#5 integrate .. //depot/projects/ia64/share/man/man5/make.conf.5#59 integrate .. //depot/projects/ia64/share/man/man5/nsswitch.conf.5#8 integrate .. //depot/projects/ia64/share/man/man5/procfs.5#10 integrate .. //depot/projects/ia64/share/man/man5/rc.conf.5#73 integrate .. //depot/projects/ia64/share/man/man5/reiserfs.5#1 branch .. //depot/projects/ia64/share/man/man5/src.conf.5#3 integrate .. //depot/projects/ia64/share/man/man7/build.7#16 integrate .. //depot/projects/ia64/share/man/man7/hier.7#32 integrate .. //depot/projects/ia64/share/man/man8/rc.subr.8#8 integrate .. //depot/projects/ia64/share/man/man9/Makefile#60 integrate .. //depot/projects/ia64/share/man/man9/crypto.9#6 integrate .. //depot/projects/ia64/share/man/man9/device_get_sysctl.9#1 branch .. //depot/projects/ia64/share/man/man9/lock.9#7 integrate .. //depot/projects/ia64/share/man/man9/suser.9#10 integrate .. //depot/projects/ia64/share/man/man9/vflush.9#6 integrate .. //depot/projects/ia64/share/man/man9/vgone.9#5 integrate .. //depot/projects/ia64/share/man/man9/zero_copy.9#8 integrate .. //depot/projects/ia64/share/misc/bsd-family-tree#31 integrate .. //depot/projects/ia64/share/misc/iso3166#8 integrate .. //depot/projects/ia64/share/mk/bsd.README#12 integrate .. //depot/projects/ia64/share/mk/bsd.own.mk#14 integrate .. //depot/projects/ia64/share/monetdef/pt_PT.ISO8859-1.src#3 integrate .. //depot/projects/ia64/sys/Makefile#11 integrate .. //depot/projects/ia64/sys/amd64/amd64/busdma_machdep.c#19 integrate .. //depot/projects/ia64/sys/amd64/amd64/fpu.c#10 integrate .. //depot/projects/ia64/sys/amd64/amd64/initcpu.c#6 integrate .. //depot/projects/ia64/sys/amd64/amd64/machdep.c#38 integrate .. //depot/projects/ia64/sys/amd64/amd64/mp_machdep.c#23 integrate .. //depot/projects/ia64/sys/amd64/amd64/pmap.c#53 integrate .. //depot/projects/ia64/sys/amd64/amd64/trap.c#27 integrate .. //depot/projects/ia64/sys/amd64/conf/DEFAULTS#4 integrate .. //depot/projects/ia64/sys/amd64/conf/GENERIC#35 integrate .. //depot/projects/ia64/sys/amd64/conf/NOTES#19 integrate .. //depot/projects/ia64/sys/amd64/include/clock.h#7 integrate .. //depot/projects/ia64/sys/amd64/include/md_var.h#12 integrate .. //depot/projects/ia64/sys/amd64/include/mutex.h#3 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/ia64/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/ia64/sys/arm/arm/busdma_machdep.c#15 integrate .. //depot/projects/ia64/sys/arm/arm/elf_trampoline.c#4 integrate .. //depot/projects/ia64/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/ia64/sys/arm/arm/locore.S#11 integrate .. //depot/projects/ia64/sys/arm/arm/machdep.c#13 integrate .. //depot/projects/ia64/sys/arm/arm/pmap.c#19 integrate .. //depot/projects/ia64/sys/arm/arm/vm_machdep.c#13 integrate .. //depot/projects/ia64/sys/arm/at91/at91.c#3 integrate .. //depot/projects/ia64/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/at91_st.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/ia64/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/ia64/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/uart_bus_at91usart.c#3 integrate .. //depot/projects/ia64/sys/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/ia64/sys/arm/conf/IQ31244#8 integrate .. //depot/projects/ia64/sys/arm/conf/KB920X#2 integrate .. //depot/projects/ia64/sys/arm/conf/SIMICS#7 integrate .. //depot/projects/ia64/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/ia64/sys/arm/include/_types.h#7 integrate .. //depot/projects/ia64/sys/arm/include/atomic.h#12 integrate .. //depot/projects/ia64/sys/arm/include/cpuconf.h#5 integrate .. //depot/projects/ia64/sys/arm/include/cpufunc.h#6 integrate .. //depot/projects/ia64/sys/arm/include/pmap.h#14 integrate .. //depot/projects/ia64/sys/arm/sa11x0/assabet_machdep.c#10 integrate .. //depot/projects/ia64/sys/arm/sa11x0/sa11x0_io.c#6 integrate .. //depot/projects/ia64/sys/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/ia64/sys/arm/sa11x0/sa11x0_var.h#3 integrate .. //depot/projects/ia64/sys/arm/sa11x0/uart_cpu_sa1110.c#3 integrate .. //depot/projects/ia64/sys/arm/sa11x0/uart_dev_sa1110.c#4 integrate .. //depot/projects/ia64/sys/arm/xscale/i80321/i80321_space.c#5 integrate .. //depot/projects/ia64/sys/arm/xscale/i80321/iq31244_machdep.c#12 integrate .. //depot/projects/ia64/sys/boot/Makefile#17 integrate .. //depot/projects/ia64/sys/boot/forth/loader.conf#32 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biosdisk.c#12 integrate .. //depot/projects/ia64/sys/boot/pc98/Makefile#5 integrate .. //depot/projects/ia64/sys/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/ia64/sys/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/ia64/sys/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/ia64/sys/bsm/audit.h#3 integrate .. //depot/projects/ia64/sys/bsm/audit_record.h#2 integrate .. //depot/projects/ia64/sys/cam/cam_ccb.h#9 integrate .. //depot/projects/ia64/sys/cam/cam_debug.h#3 integrate .. //depot/projects/ia64/sys/cam/cam_periph.c#22 integrate .. //depot/projects/ia64/sys/cam/cam_xpt.c#30 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_all.h#8 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_target.c#20 integrate .. //depot/projects/ia64/sys/coda/cnode.h#11 integrate .. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_misc.c#21 integrate .. //depot/projects/ia64/sys/compat/linprocfs/linprocfs.c#41 integrate .. //depot/projects/ia64/sys/compat/linux/linux_stats.c#27 integrate .. //depot/projects/ia64/sys/compat/ndis/subr_hal.c#14 integrate .. //depot/projects/ia64/sys/compat/ndis/subr_ndis.c#19 integrate .. //depot/projects/ia64/sys/compat/ndis/subr_ntoskrnl.c#18 integrate .. //depot/projects/ia64/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/ia64/sys/conf/Makefile.arm#14 integrate .. //depot/projects/ia64/sys/conf/NOTES#102 integrate .. //depot/projects/ia64/sys/conf/files#142 integrate .. //depot/projects/ia64/sys/conf/files.amd64#37 integrate .. //depot/projects/ia64/sys/conf/files.arm#6 integrate .. //depot/projects/ia64/sys/conf/files.i386#76 integrate .. //depot/projects/ia64/sys/conf/files.pc98#64 integrate .. //depot/projects/ia64/sys/conf/files.powerpc#27 integrate .. //depot/projects/ia64/sys/conf/kern.mk#17 integrate .. //depot/projects/ia64/sys/conf/kern.post.mk#60 integrate .. //depot/projects/ia64/sys/conf/kmod.mk#52 integrate .. //depot/projects/ia64/sys/conf/options#95 integrate .. //depot/projects/ia64/sys/conf/options.arm#8 integrate .. //depot/projects/ia64/sys/conf/options.i386#41 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/COPYRIGHT#4 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/README#5 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah.h#8 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah_desc.h#4 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah_devid.h#5 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/freebsd/ah_if.m#4 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/freebsd/ah_osdep.c#8 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/freebsd/ah_osdep.h#6 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/i386-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sh4-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/x86_64-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-be-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-le-elf.inc#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#3 integrate .. //depot/projects/ia64/sys/contrib/dev/ath/version.h#8 integrate .. //depot/projects/ia64/sys/contrib/dev/oltr/if_oltr.c#17 integrate .. //depot/projects/ia64/sys/contrib/pf/net/if_pfsync.c#13 integrate .. //depot/projects/ia64/sys/crypto/via/padlock.c#3 integrate .. //depot/projects/ia64/sys/ddb/db_sym.c#6 integrate .. //depot/projects/ia64/sys/dev/aac/aac_pci.c#37 integrate .. //depot/projects/ia64/sys/dev/acpi_support/acpi_panasonic.c#5 integrate .. //depot/projects/ia64/sys/dev/acpica/Osd/OsdSchedule.c#22 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi.c#68 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_battery.c#11 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_thermal.c#25 integrate .. //depot/projects/ia64/sys/dev/acpica/acpivar.h#40 integrate .. //depot/projects/ia64/sys/dev/ahb/ahb.c#13 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic79xx_osm.h#17 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7xxx_osm.h#19 integrate .. //depot/projects/ia64/sys/dev/an/if_an.c#38 integrate .. //depot/projects/ia64/sys/dev/arcmsr/arcmsr.c#5 integrate .. //depot/projects/ia64/sys/dev/arl/if_arl.c#7 integrate .. //depot/projects/ia64/sys/dev/arl/if_arl_isa.c#6 integrate .. //depot/projects/ia64/sys/dev/ata/ata-chipset.c#52 integrate .. //depot/projects/ia64/sys/dev/ath/if_ath.c#32 integrate .. //depot/projects/ia64/sys/dev/ath/if_ath_pci.c#14 integrate .. //depot/projects/ia64/sys/dev/ath/if_athvar.h#19 integrate .. //depot/projects/ia64/sys/dev/atkbdc/atkbd.c#4 integrate .. //depot/projects/ia64/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/awi/awi.c#21 integrate .. //depot/projects/ia64/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/ia64/sys/dev/bce/if_bcereg.h#3 integrate .. //depot/projects/ia64/sys/dev/bfe/if_bfe.c#17 integrate .. //depot/projects/ia64/sys/dev/bfe/if_bfereg.h#9 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#67 integrate .. //depot/projects/ia64/sys/dev/bge/if_bgereg.h#38 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_os.c#26 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus.c#27 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus_cis.c#26 integrate .. //depot/projects/ia64/sys/dev/ciss/ciss.c#45 integrate .. //depot/projects/ia64/sys/dev/cm/if_cm_isa.c#8 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6.c#14 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6var.h#5 integrate .. //depot/projects/ia64/sys/dev/cnw/if_cnw.c#17 integrate .. //depot/projects/ia64/sys/dev/cpufreq/ichss.c#2 integrate .. //depot/projects/ia64/sys/dev/ct/bshw_machdep.c#6 integrate .. //depot/projects/ia64/sys/dev/ctau/if_ct.c#14 integrate .. //depot/projects/ia64/sys/dev/cx/if_cx.c#15 integrate .. //depot/projects/ia64/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/ia64/sys/dev/dc/if_dc.c#6 integrate .. //depot/projects/ia64/sys/dev/dc/if_dcreg.h#5 integrate .. //depot/projects/ia64/sys/dev/dcons/dcons_os.c#6 integrate .. //depot/projects/ia64/sys/dev/digi/digi.c#23 integrate .. //depot/projects/ia64/sys/dev/dpt/dpt_scsi.c#16 integrate .. //depot/projects/ia64/sys/dev/drm/drm.h#10 integrate .. //depot/projects/ia64/sys/dev/drm/drm_scatter.c#3 integrate .. //depot/projects/ia64/sys/dev/drm/i915_drv.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/mga_drv.c#10 integrate .. //depot/projects/ia64/sys/dev/drm/r300_cmdbuf.c#4 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed.c#28 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_cbus.c#17 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_novell.c#5 integrate .. //depot/projects/ia64/sys/dev/ed/if_edvar.h#12 integrate .. //depot/projects/ia64/sys/dev/em/if_em.c#52 integrate .. //depot/projects/ia64/sys/dev/em/if_em_hw.c#19 integrate .. //depot/projects/ia64/sys/dev/fb/boot_font.c#7 integrate .. //depot/projects/ia64/sys/dev/fb/gfb.c#9 integrate .. //depot/projects/ia64/sys/dev/firewire/fwohci_pci.c#37 integrate .. //depot/projects/ia64/sys/dev/fxp/if_fxp.c#66 integrate .. //depot/projects/ia64/sys/dev/gem/if_gem.c#26 integrate .. //depot/projects/ia64/sys/dev/gfb/gfb_pci.c#15 integrate .. //depot/projects/ia64/sys/dev/hifn/hifn7751.c#28 integrate .. //depot/projects/ia64/sys/dev/hifn/hifn7751var.h#8 integrate .. //depot/projects/ia64/sys/dev/hme/if_hme.c#28 integrate .. //depot/projects/ia64/sys/dev/hptmv/entry.c#8 integrate .. //depot/projects/ia64/sys/dev/ic/ns16550.h#6 integrate .. //depot/projects/ia64/sys/dev/idt/idt.c#11 integrate .. //depot/projects/ia64/sys/dev/ie/if_ie_isa.c#6 integrate .. //depot/projects/ia64/sys/dev/iir/iir.c#15 integrate .. //depot/projects/ia64/sys/dev/iir/iir_pci.c#16 integrate .. //depot/projects/ia64/sys/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/ia64/sys/dev/ips/ips.c#13 integrate .. //depot/projects/ia64/sys/dev/ipw/if_ipw.c#8 integrate .. //depot/projects/ia64/sys/dev/ipw/if_ipwvar.h#5 integrate .. //depot/projects/ia64/sys/dev/isp/isp_freebsd.c#30 integrate .. //depot/projects/ia64/sys/dev/isp/isp_freebsd.h#25 integrate .. //depot/projects/ia64/sys/dev/isp/isp_pci.c#30 integrate .. //depot/projects/ia64/sys/dev/isp/isp_tpublic.h#8 integrate .. //depot/projects/ia64/sys/dev/isp/ispvar.h#22 integrate .. //depot/projects/ia64/sys/dev/iwi/if_iwi.c#8 integrate .. //depot/projects/ia64/sys/dev/ixgb/if_ixgb.h#7 integrate .. //depot/projects/ia64/sys/dev/ixgb/if_ixgb_osdep.h#4 integrate .. //depot/projects/ia64/sys/dev/le/am7990.c#2 integrate .. //depot/projects/ia64/sys/dev/le/am79900.c#2 integrate .. //depot/projects/ia64/sys/dev/le/if_le_cbus.c#1 branch .. //depot/projects/ia64/sys/dev/le/if_le_isa.c#1 branch .. //depot/projects/ia64/sys/dev/le/if_le_ledma.c#2 integrate .. //depot/projects/ia64/sys/dev/le/if_le_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/le/lance.c#2 integrate .. //depot/projects/ia64/sys/dev/le/lancereg.h#2 integrate .. //depot/projects/ia64/sys/dev/le/lancevar.h#2 integrate .. //depot/projects/ia64/sys/dev/lge/if_lge.c#29 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc.c#13 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc.h#3 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc.c#18 delete .. //depot/projects/ia64/sys/dev/lnc/if_lnc_cbus.c#11 delete .. //depot/projects/ia64/sys/dev/lnc/if_lnc_isa.c#10 delete .. //depot/projects/ia64/sys/dev/lnc/if_lnc_pci.c#14 delete .. //depot/projects/ia64/sys/dev/lnc/if_lncreg.h#2 delete .. //depot/projects/ia64/sys/dev/lnc/if_lncvar.h#5 delete .. //depot/projects/ia64/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi_ioctl.h#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi_linux.c#1 branch .. //depot/projects/ia64/sys/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfireg.h#2 integrate .. //depot/projects/ia64/sys/dev/mfi/mfivar.h#2 integrate .. //depot/projects/ia64/sys/dev/mii/brgphy.c#28 integrate .. //depot/projects/ia64/sys/dev/mii/ciphy.c#4 integrate .. //depot/projects/ia64/sys/dev/mii/e1000phy.c#10 integrate .. //depot/projects/ia64/sys/dev/mii/mii_physubr.c#11 integrate .. //depot/projects/ia64/sys/dev/mii/miivar.h#6 integrate .. //depot/projects/ia64/sys/dev/mii/nsgphy.c#14 integrate .. //depot/projects/ia64/sys/dev/mii/rgephy.c#5 integrate .. //depot/projects/ia64/sys/dev/mii/tdkphy.c#13 integrate .. //depot/projects/ia64/sys/dev/mii/ukphy_subr.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.c#13 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.h#12 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_cam.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_cam.h#3 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_debug.c#11 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_pci.c#22 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_raid.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_reg.h#3 integrate .. //depot/projects/ia64/sys/dev/mse/mse.c#6 integrate .. //depot/projects/ia64/sys/dev/mse/mse_cbus.c#5 integrate .. //depot/projects/ia64/sys/dev/mse/mse_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/ia64/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/ia64/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/ia64/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/ia64/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/ia64/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/ia64/sys/dev/my/if_my.c#25 integrate .. //depot/projects/ia64/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/if_myri10ge.c#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/ia64/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/ia64/sys/dev/ncv/ncr53c500.c#10 integrate .. //depot/projects/ia64/sys/dev/nge/if_nge.c#40 integrate .. //depot/projects/ia64/sys/dev/nsp/nsp.c#10 integrate .. //depot/projects/ia64/sys/dev/nve/if_nve.c#10 integrate .. //depot/projects/ia64/sys/dev/ofw/ofw_console.c#19 integrate .. //depot/projects/ia64/sys/dev/pbio/pbio.c#6 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb.c#50 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb_pci.c#9 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbbvar.h#17 integrate .. //depot/projects/ia64/sys/dev/pci/fixup_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/pci/pcireg.h#15 integrate .. //depot/projects/ia64/sys/dev/pdq/pdq_freebsd.h#13 integrate .. //depot/projects/ia64/sys/dev/pdq/pdqvar.h#10 integrate .. //depot/projects/ia64/sys/dev/ppbus/vpoio.c#5 integrate .. //depot/projects/ia64/sys/dev/puc/pucdata.c#34 integrate .. //depot/projects/ia64/sys/dev/ral/if_ral_pci.c#4 integrate .. //depot/projects/ia64/sys/dev/ral/rt2560.c#2 integrate .. //depot/projects/ia64/sys/dev/ral/rt2661.c#2 integrate .. //depot/projects/ia64/sys/dev/re/if_re.c#28 integrate .. //depot/projects/ia64/sys/dev/rr232x/os_bsd.h#2 integrate .. //depot/projects/ia64/sys/dev/safe/safe.c#10 integrate .. //depot/projects/ia64/sys/dev/safe/safevar.h#2 integrate .. //depot/projects/ia64/sys/dev/sbsh/if_sbsh.c#11 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#71 integrate .. //depot/projects/ia64/sys/dev/sk/if_sk.c#2 integrate .. //depot/projects/ia64/sys/dev/sk/if_skreg.h#3 integrate .. //depot/projects/ia64/sys/dev/sound/driver.c#7 integrate .. //depot/projects/ia64/sys/dev/sound/midi/midi.c#9 branch .. //depot/projects/ia64/sys/dev/sound/midi/midi.h#8 branch .. //depot/projects/ia64/sys/dev/sound/midi/midiq.h#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpu401.c#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpu401.h#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpu_if.m#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/mpufoi_if.m#1 branch .. //depot/projects/ia64/sys/dev/sound/midi/sequencer.c#10 branch .. //depot/projects/ia64/sys/dev/sound/midi/sequencer.h#4 branch .. //depot/projects/ia64/sys/dev/sound/midi/synth_if.m#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/cmi.c#19 integrate .. //depot/projects/ia64/sys/dev/sound/pci/emu10k1.c#24 integrate .. //depot/projects/ia64/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/ia64/sys/dev/sound/pci/es137x.c#20 integrate .. //depot/projects/ia64/sys/dev/sound/pci/ich.c#35 integrate .. //depot/projects/ia64/sys/dev/sound/pci/maestro.c#15 integrate .. //depot/projects/ia64/sys/dev/sound/pci/via8233.c#20 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/feeder_rate.c#14 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/sound.c#23 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/sound.h#18 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/vchan.c#15 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30.c#11 integrate .. //depot/projects/ia64/sys/dev/syscons/apm/apm_saver.c#6 integrate .. //depot/projects/ia64/sys/dev/syscons/scvesactl.c#6 integrate .. //depot/projects/ia64/sys/dev/syscons/syscons.c#41 integrate .. //depot/projects/ia64/sys/dev/trm/trm.c#25 integrate .. //depot/projects/ia64/sys/dev/tx/if_tx.c#27 integrate .. //depot/projects/ia64/sys/dev/txp/if_txp.c#25 integrate .. //depot/projects/ia64/sys/dev/uart/uart.h#5 integrate .. //depot/projects/ia64/sys/dev/uart/uart_dbg.c#3 integrate .. //depot/projects/ia64/sys/dev/uart/uart_dev_ns8250.c#12 integrate .. //depot/projects/ia64/sys/dev/uart/uart_tty.c#14 integrate .. //depot/projects/ia64/sys/dev/ubsec/ubsec.c#27 integrate .. //depot/projects/ia64/sys/dev/ubsec/ubsecvar.h#8 integrate .. //depot/projects/ia64/sys/dev/usb/ehci.c#15 integrate .. //depot/projects/ia64/sys/dev/usb/ehci_pci.c#19 integrate .. //depot/projects/ia64/sys/dev/usb/ehcivar.h#10 integrate .. //depot/projects/ia64/sys/dev/usb/if_axe.c#20 integrate .. //depot/projects/ia64/sys/dev/usb/if_axereg.h#8 integrate .. //depot/projects/ia64/sys/dev/usb/if_ural.c#8 integrate .. //depot/projects/ia64/sys/dev/usb/ohci.c#33 integrate .. //depot/projects/ia64/sys/dev/usb/ohci_pci.c#18 integrate .. //depot/projects/ia64/sys/dev/usb/ohcireg.h#8 integrate .. //depot/projects/ia64/sys/dev/usb/ohcivar.h#15 integrate .. //depot/projects/ia64/sys/dev/usb/sl811hs.c#3 integrate .. //depot/projects/ia64/sys/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/ia64/sys/dev/usb/ugen.c#30 integrate .. //depot/projects/ia64/sys/dev/usb/uhci.c#32 integrate .. //depot/projects/ia64/sys/dev/usb/uhci_pci.c#16 integrate .. //depot/projects/ia64/sys/dev/usb/uhcivar.h#13 integrate .. //depot/projects/ia64/sys/dev/usb/uhid.c#26 integrate .. //depot/projects/ia64/sys/dev/usb/umodem.c#18 integrate .. //depot/projects/ia64/sys/dev/usb/uplcom.c#24 integrate .. //depot/projects/ia64/sys/dev/usb/usb.c#27 integrate .. //depot/projects/ia64/sys/dev/usb/usb_mem.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/usb_subr.c#27 integrate .. //depot/projects/ia64/sys/dev/usb/usbdevs#74 integrate .. //depot/projects/ia64/sys/dev/usb/usbdi.c#21 integrate .. //depot/projects/ia64/sys/dev/usb/usbdivar.h#14 integrate .. //depot/projects/ia64/sys/dev/usb/uscanner.c#27 integrate .. //depot/projects/ia64/sys/dev/usb/uvisor.c#17 integrate .. //depot/projects/ia64/sys/dev/wds/wd7000.c#7 integrate .. //depot/projects/ia64/sys/dev/wi/if_wi.c#64 integrate .. //depot/projects/ia64/sys/dev/wi/if_wi_pci.c#23 integrate .. //depot/projects/ia64/sys/dev/wl/if_wl.c#19 integrate .. //depot/projects/ia64/sys/dev/zs/zs.c#22 integrate .. //depot/projects/ia64/sys/doc/subsys/Dependencies#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-cam#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-geom#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-kern#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-linux#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/ia64/sys/doc/subsys/Doxyfile-vm#1 branch .. //depot/projects/ia64/sys/doc/subsys/Makefile#1 branch .. //depot/projects/ia64/sys/doc/subsys/README#1 branch .. //depot/projects/ia64/sys/doc/subsys/common-Doxyfile#1 branch .. //depot/projects/ia64/sys/doc/subsys/notreviewed.dox#1 branch .. //depot/projects/ia64/sys/fs/fdescfs/fdesc_vfsops.c#20 integrate .. //depot/projects/ia64/sys/fs/msdosfs/msdosfs_vfsops.c#40 integrate .. //depot/projects/ia64/sys/fs/ntfs/ntfs_vfsops.c#26 integrate .. //depot/projects/ia64/sys/fs/nullfs/null_vfsops.c#21 integrate .. //depot/projects/ia64/sys/fs/nwfs/nwfs_io.c#19 integrate .. //depot/projects/ia64/sys/fs/procfs/procfs.c#10 integrate .. //depot/projects/ia64/sys/fs/pseudofs/pseudofs.c#16 integrate .. //depot/projects/ia64/sys/fs/pseudofs/pseudofs.h#17 integrate .. //depot/projects/ia64/sys/fs/smbfs/smbfs_io.c#22 integrate .. //depot/projects/ia64/sys/fs/smbfs/smbfs_subr.c#8 integrate .. //depot/projects/ia64/sys/fs/smbfs/smbfs_vnops.c#31 integrate .. //depot/projects/ia64/sys/fs/udf/udf_vfsops.c#25 integrate .. //depot/projects/ia64/sys/gdb/gdb.h#3 integrate .. //depot/projects/ia64/sys/gdb/gdb_cons.c#2 integrate .. //depot/projects/ia64/sys/gdb/gdb_main.c#6 integrate .. //depot/projects/ia64/sys/gdb/gdb_packet.c#3 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli.c#7 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli.h#3 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli_ctl.c#4 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/ia64/sys/geom/eli/g_eli_key.c#3 integrate .. //depot/projects/ia64/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/ia64/sys/geom/geom.h#48 integrate .. //depot/projects/ia64/sys/geom/geom_bsd.c#46 integrate .. //depot/projects/ia64/sys/geom/geom_dev.c#54 integrate .. //depot/projects/ia64/sys/geom/geom_gpt.c#31 integrate .. //depot/projects/ia64/sys/geom/geom_io.c#43 integrate .. //depot/projects/ia64/sys/gnu/fs/ext2fs/ext2_vfsops.c#4 integrate .. //depot/projects/ia64/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#3 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#2 delete .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#3 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/ia64/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 01:47:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1E6FE16A47D; Thu, 22 Jun 2006 01:47:03 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E887916A47A for ; Thu, 22 Jun 2006 01:47:02 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 30A6243D45 for ; Thu, 22 Jun 2006 01:47:02 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M1l2NV084916 for ; Thu, 22 Jun 2006 01:47:02 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M1jhQI084854 for perforce@freebsd.org; Thu, 22 Jun 2006 01:45:43 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 01:45:43 GMT Message-Id: <200606220145.k5M1jhQI084854@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 99794 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 01:47:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=99794 Change 99794 by marcel@marcel_nfs on 2006/06/22 01:44:42 IFC @99784 Affected files ... .. //depot/projects/busdma/Makefile#2 integrate .. //depot/projects/busdma/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/busdma/amd64/amd64/fpu.c#2 integrate .. //depot/projects/busdma/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/busdma/amd64/amd64/machdep.c#3 integrate .. //depot/projects/busdma/amd64/amd64/mp_machdep.c#2 integrate .. //depot/projects/busdma/amd64/amd64/pmap.c#2 integrate .. //depot/projects/busdma/amd64/amd64/trap.c#2 integrate .. //depot/projects/busdma/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/amd64/conf/GENERIC#3 integrate .. //depot/projects/busdma/amd64/conf/NOTES#3 integrate .. //depot/projects/busdma/amd64/include/clock.h#2 integrate .. //depot/projects/busdma/amd64/include/md_var.h#2 integrate .. //depot/projects/busdma/amd64/include/mutex.h#2 integrate .. //depot/projects/busdma/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/busdma/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/busdma/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/busdma/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/busdma/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/busdma/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/busdma/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/busdma/arm/arm/inckern.S#2 integrate .. //depot/projects/busdma/arm/arm/locore.S#2 integrate .. //depot/projects/busdma/arm/arm/machdep.c#3 integrate .. //depot/projects/busdma/arm/arm/pmap.c#2 integrate .. //depot/projects/busdma/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/busdma/arm/at91/at91.c#2 integrate .. //depot/projects/busdma/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/busdma/arm/at91/at91_st.c#2 integrate .. //depot/projects/busdma/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/busdma/arm/at91/if_ate.c#2 integrate .. //depot/projects/busdma/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/busdma/arm/at91/uart_bus_at91usart.c#3 integrate .. //depot/projects/busdma/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/busdma/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/busdma/arm/conf/IQ31244#2 integrate .. //depot/projects/busdma/arm/conf/KB920X#2 integrate .. //depot/projects/busdma/arm/conf/SIMICS#2 integrate .. //depot/projects/busdma/arm/conf/SKYEYE#2 integrate .. //depot/projects/busdma/arm/include/_types.h#2 integrate .. //depot/projects/busdma/arm/include/atomic.h#2 integrate .. //depot/projects/busdma/arm/include/cpuconf.h#2 integrate .. //depot/projects/busdma/arm/include/cpufunc.h#2 integrate .. //depot/projects/busdma/arm/include/pmap.h#2 integrate .. //depot/projects/busdma/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/busdma/arm/sa11x0/sa11x0_io.c#2 integrate .. //depot/projects/busdma/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/busdma/arm/sa11x0/sa11x0_var.h#2 integrate .. //depot/projects/busdma/arm/sa11x0/uart_cpu_sa1110.c#2 integrate .. //depot/projects/busdma/arm/sa11x0/uart_dev_sa1110.c#2 integrate .. //depot/projects/busdma/arm/xscale/i80321/i80321_space.c#2 integrate .. //depot/projects/busdma/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/busdma/boot/Makefile#2 integrate .. //depot/projects/busdma/boot/common/Makefile.inc#2 integrate .. //depot/projects/busdma/boot/common/load_elf.c#2 integrate .. //depot/projects/busdma/boot/common/loader.8#2 integrate .. //depot/projects/busdma/boot/efi/libefi/bootinfo.c#2 integrate .. //depot/projects/busdma/boot/ficl/Makefile#2 integrate .. //depot/projects/busdma/boot/ficl/alpha/sysdep.c#2 delete .. //depot/projects/busdma/boot/ficl/alpha/sysdep.h#2 delete .. //depot/projects/busdma/boot/ficl/loader.c#2 integrate .. //depot/projects/busdma/boot/forth/loader.4th#2 integrate .. //depot/projects/busdma/boot/forth/loader.conf#2 integrate .. //depot/projects/busdma/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/busdma/boot/ia64/ski/bootinfo.c#2 integrate .. //depot/projects/busdma/boot/ia64/ski/conf.c#2 integrate .. //depot/projects/busdma/boot/pc98/Makefile#2 integrate .. //depot/projects/busdma/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/busdma/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/busdma/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/busdma/boot/powerpc/loader/conf.c#2 integrate .. //depot/projects/busdma/bsm/audit.h#2 integrate .. //depot/projects/busdma/bsm/audit_record.h#2 integrate .. //depot/projects/busdma/cam/cam_ccb.h#2 integrate .. //depot/projects/busdma/cam/cam_debug.h#2 integrate .. //depot/projects/busdma/cam/cam_periph.c#2 integrate .. //depot/projects/busdma/cam/cam_xpt.c#2 integrate .. //depot/projects/busdma/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/busdma/cam/scsi/scsi_target.c#2 integrate .. //depot/projects/busdma/coda/cnode.h#2 integrate .. //depot/projects/busdma/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/busdma/compat/linprocfs/linprocfs.c#3 integrate .. //depot/projects/busdma/compat/linux/linux_stats.c#3 integrate .. //depot/projects/busdma/compat/ndis/subr_hal.c#2 integrate .. //depot/projects/busdma/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/busdma/compat/ndis/subr_ntoskrnl.c#2 integrate .. //depot/projects/busdma/compat/ndis/winx32_wrap.S#2 integrate .. //depot/projects/busdma/conf/Makefile.arm#2 integrate .. //depot/projects/busdma/conf/NOTES#3 integrate .. //depot/projects/busdma/conf/files#3 integrate .. //depot/projects/busdma/conf/files.amd64#3 integrate .. //depot/projects/busdma/conf/files.arm#2 integrate .. //depot/projects/busdma/conf/files.i386#3 integrate .. //depot/projects/busdma/conf/files.pc98#3 integrate .. //depot/projects/busdma/conf/files.powerpc#2 integrate .. //depot/projects/busdma/conf/kern.mk#3 integrate .. //depot/projects/busdma/conf/kern.post.mk#2 integrate .. //depot/projects/busdma/conf/kmod.mk#2 integrate .. //depot/projects/busdma/conf/options#3 integrate .. //depot/projects/busdma/conf/options.arm#2 integrate .. //depot/projects/busdma/conf/options.i386#3 integrate .. //depot/projects/busdma/contrib/dev/ath/COPYRIGHT#2 integrate .. //depot/projects/busdma/contrib/dev/ath/README#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah_desc.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/freebsd/ah_if.m#2 integrate .. //depot/projects/busdma/contrib/dev/ath/freebsd/ah_osdep.c#2 integrate .. //depot/projects/busdma/contrib/dev/ath/freebsd/ah_osdep.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/arm9-le-thumb-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/i386-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/i386-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-eabi.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-le-eabi.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sh4-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/x86_64-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/x86_64-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/version.h#2 integrate .. //depot/projects/busdma/contrib/dev/oltr/if_oltr.c#2 integrate .. //depot/projects/busdma/contrib/pf/net/if_pfsync.c#2 integrate .. //depot/projects/busdma/contrib/pf/net/pf_ioctl.c#2 integrate .. //depot/projects/busdma/crypto/via/padlock.c#2 integrate .. //depot/projects/busdma/ddb/db_sym.c#2 integrate .. //depot/projects/busdma/dev/aac/aac_pci.c#2 integrate .. //depot/projects/busdma/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/busdma/dev/acpica/Osd/OsdSchedule.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpi.c#3 integrate .. //depot/projects/busdma/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpivar.h#2 integrate .. //depot/projects/busdma/dev/ahb/ahb.c#2 integrate .. //depot/projects/busdma/dev/aic7xxx/aic79xx_osm.h#2 integrate .. //depot/projects/busdma/dev/aic7xxx/aic7xxx_osm.h#2 integrate .. //depot/projects/busdma/dev/an/if_an.c#2 integrate .. //depot/projects/busdma/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/busdma/dev/arl/if_arl.c#2 integrate .. //depot/projects/busdma/dev/arl/if_arl_isa.c#2 integrate .. //depot/projects/busdma/dev/asr/asr.c#2 integrate .. //depot/projects/busdma/dev/ata/ata-all.c#2 integrate .. //depot/projects/busdma/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/busdma/dev/ata/ata-pci.c#2 integrate .. //depot/projects/busdma/dev/ath/if_ath.c#3 integrate .. //depot/projects/busdma/dev/ath/if_ath_pci.c#3 integrate .. //depot/projects/busdma/dev/ath/if_athvar.h#3 integrate .. //depot/projects/busdma/dev/atkbdc/atkbd.c#2 integrate .. //depot/projects/busdma/dev/atkbdc/atkbdc.c#2 integrate .. //depot/projects/busdma/dev/atkbdc/atkbdc_isa.c#2 integrate .. //depot/projects/busdma/dev/awi/awi.c#2 integrate .. //depot/projects/busdma/dev/bce/if_bce.c#2 integrate .. //depot/projects/busdma/dev/bce/if_bcereg.h#3 integrate .. //depot/projects/busdma/dev/bfe/if_bfe.c#3 integrate .. //depot/projects/busdma/dev/bfe/if_bfereg.h#3 integrate .. //depot/projects/busdma/dev/bge/if_bge.c#2 integrate .. //depot/projects/busdma/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/busdma/dev/bktr/bktr_os.c#2 integrate .. //depot/projects/busdma/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/busdma/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/busdma/dev/ciss/ciss.c#2 integrate .. //depot/projects/busdma/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/busdma/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/busdma/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/busdma/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/busdma/dev/cnw/if_cnw.c#2 integrate .. //depot/projects/busdma/dev/cpufreq/ichss.c#2 integrate .. //depot/projects/busdma/dev/ct/bshw_machdep.c#2 integrate .. //depot/projects/busdma/dev/ctau/if_ct.c#2 integrate .. //depot/projects/busdma/dev/cx/if_cx.c#2 integrate .. //depot/projects/busdma/dev/dc/dcphy.c#2 integrate .. //depot/projects/busdma/dev/dc/if_dc.c#2 integrate .. //depot/projects/busdma/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/busdma/dev/dcons/dcons_os.c#2 integrate .. //depot/projects/busdma/dev/de/if_de.c#2 integrate .. //depot/projects/busdma/dev/digi/digi.c#2 integrate .. //depot/projects/busdma/dev/dpt/dpt_scsi.c#2 integrate .. //depot/projects/busdma/dev/drm/drm.h#2 integrate .. //depot/projects/busdma/dev/drm/drm_scatter.c#2 integrate .. //depot/projects/busdma/dev/drm/i915_drv.c#2 integrate .. //depot/projects/busdma/dev/drm/mga_drv.c#2 integrate .. //depot/projects/busdma/dev/drm/r300_cmdbuf.c#2 integrate .. //depot/projects/busdma/dev/ed/if_ed.c#2 integrate .. //depot/projects/busdma/dev/ed/if_ed_cbus.c#2 integrate .. //depot/projects/busdma/dev/ed/if_ed_novell.c#2 integrate .. //depot/projects/busdma/dev/ed/if_edvar.h#2 integrate .. //depot/projects/busdma/dev/em/if_em.c#2 integrate .. //depot/projects/busdma/dev/em/if_em_hw.c#2 integrate .. //depot/projects/busdma/dev/fb/boot_font.c#2 integrate .. //depot/projects/busdma/dev/fb/gfb.c#2 integrate .. //depot/projects/busdma/dev/fb/tga.c#2 delete .. //depot/projects/busdma/dev/fb/tga.h#2 delete .. //depot/projects/busdma/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/busdma/dev/fxp/if_fxp.c#2 integrate .. //depot/projects/busdma/dev/gem/if_gem.c#2 integrate .. //depot/projects/busdma/dev/gfb/gfb_pci.c#2 integrate .. //depot/projects/busdma/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/busdma/dev/hifn/hifn7751var.h#2 integrate .. //depot/projects/busdma/dev/hme/if_hme.c#2 integrate .. //depot/projects/busdma/dev/hptmv/entry.c#2 integrate .. //depot/projects/busdma/dev/ic/ns16550.h#2 integrate .. //depot/projects/busdma/dev/idt/idt.c#2 integrate .. //depot/projects/busdma/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/busdma/dev/iir/iir.c#2 integrate .. //depot/projects/busdma/dev/iir/iir_pci.c#2 integrate .. //depot/projects/busdma/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/busdma/dev/ips/ips.c#2 integrate .. //depot/projects/busdma/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/busdma/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/busdma/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/busdma/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/busdma/dev/isp/isp_pci.c#2 integrate .. //depot/projects/busdma/dev/isp/isp_tpublic.h#2 integrate .. //depot/projects/busdma/dev/isp/ispvar.h#2 integrate .. //depot/projects/busdma/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/busdma/dev/ixgb/if_ixgb.h#2 integrate .. //depot/projects/busdma/dev/ixgb/if_ixgb_osdep.h#2 integrate .. //depot/projects/busdma/dev/le/am7990.c#2 integrate .. //depot/projects/busdma/dev/le/am79900.c#2 integrate .. //depot/projects/busdma/dev/le/if_le_cbus.c#1 branch .. //depot/projects/busdma/dev/le/if_le_isa.c#1 branch .. //depot/projects/busdma/dev/le/if_le_ledma.c#2 integrate .. //depot/projects/busdma/dev/le/if_le_pci.c#2 integrate .. //depot/projects/busdma/dev/le/lance.c#2 integrate .. //depot/projects/busdma/dev/le/lancereg.h#2 integrate .. //depot/projects/busdma/dev/le/lancevar.h#2 integrate .. //depot/projects/busdma/dev/lge/if_lge.c#2 integrate .. //depot/projects/busdma/dev/lge/if_lgereg.h#2 integrate .. //depot/projects/busdma/dev/lmc/if_lmc.c#2 integrate .. //depot/projects/busdma/dev/lmc/if_lmc.h#2 integrate .. //depot/projects/busdma/dev/lnc/if_lnc.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lnc_cbus.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lnc_isa.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lnc_pci.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lncreg.h#2 delete .. //depot/projects/busdma/dev/lnc/if_lncvar.h#2 delete .. //depot/projects/busdma/dev/mfi/mfi.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfi_ioctl.h#2 integrate .. //depot/projects/busdma/dev/mfi/mfi_linux.c#1 branch .. //depot/projects/busdma/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfireg.h#2 integrate .. //depot/projects/busdma/dev/mfi/mfivar.h#2 integrate .. //depot/projects/busdma/dev/mii/brgphy.c#2 integrate .. //depot/projects/busdma/dev/mii/ciphy.c#2 integrate .. //depot/projects/busdma/dev/mii/e1000phy.c#2 integrate .. //depot/projects/busdma/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/busdma/dev/mii/miivar.h#2 integrate .. //depot/projects/busdma/dev/mii/nsgphy.c#2 integrate .. //depot/projects/busdma/dev/mii/rgephy.c#2 integrate .. //depot/projects/busdma/dev/mii/tdkphy.c#2 integrate .. //depot/projects/busdma/dev/mii/ukphy_subr.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt.h#3 integrate .. //depot/projects/busdma/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/busdma/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_pci.c#3 integrate .. //depot/projects/busdma/dev/mpt/mpt_raid.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_reg.h#2 integrate .. //depot/projects/busdma/dev/mse/mse.c#2 integrate .. //depot/projects/busdma/dev/mse/mse_cbus.c#2 integrate .. //depot/projects/busdma/dev/mse/mse_isa.c#2 integrate .. //depot/projects/busdma/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/busdma/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/busdma/dev/mxge/if_mxge.c#1 branch .. //depot/projects/busdma/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/busdma/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/busdma/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/busdma/dev/my/if_my.c#2 integrate .. //depot/projects/busdma/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/busdma/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/busdma/dev/myri10ge/if_myri10ge.c#2 delete .. //depot/projects/busdma/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/busdma/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/busdma/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/busdma/dev/ncv/ncr53c500.c#2 integrate .. //depot/projects/busdma/dev/nge/if_nge.c#2 integrate .. //depot/projects/busdma/dev/nge/if_ngereg.h#2 integrate .. //depot/projects/busdma/dev/nsp/nsp.c#2 integrate .. //depot/projects/busdma/dev/nve/if_nve.c#2 integrate .. //depot/projects/busdma/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/busdma/dev/pbio/pbio.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbb.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbb_isa.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbbvar.h#2 integrate .. //depot/projects/busdma/dev/pci/fixup_pci.c#2 integrate .. //depot/projects/busdma/dev/pci/pcireg.h#2 integrate .. //depot/projects/busdma/dev/pdq/pdq_freebsd.h#2 integrate .. //depot/projects/busdma/dev/pdq/pdqvar.h#2 integrate .. //depot/projects/busdma/dev/ppbus/vpoio.c#2 integrate .. //depot/projects/busdma/dev/ppc/ppc.c#2 integrate .. //depot/projects/busdma/dev/puc/pucdata.c#2 integrate .. //depot/projects/busdma/dev/ral/if_ral_pci.c#2 integrate .. //depot/projects/busdma/dev/ral/rt2560.c#2 integrate .. //depot/projects/busdma/dev/ral/rt2661.c#2 integrate .. //depot/projects/busdma/dev/re/if_re.c#2 integrate .. //depot/projects/busdma/dev/rr232x/os_bsd.h#2 integrate .. //depot/projects/busdma/dev/safe/safe.c#2 integrate .. //depot/projects/busdma/dev/safe/safevar.h#2 integrate .. //depot/projects/busdma/dev/sbsh/if_sbsh.c#2 integrate .. //depot/projects/busdma/dev/sio/sio.c#2 integrate .. //depot/projects/busdma/dev/sk/if_sk.c#2 integrate .. //depot/projects/busdma/dev/sk/if_skreg.h#2 integrate .. //depot/projects/busdma/dev/sound/driver.c#2 integrate .. //depot/projects/busdma/dev/sound/isa/es1888.c#2 delete .. //depot/projects/busdma/dev/sound/isa/gusc.c#2 integrate .. //depot/projects/busdma/dev/sound/midi/midi.c#1 branch .. //depot/projects/busdma/dev/sound/midi/midi.h#1 branch .. //depot/projects/busdma/dev/sound/midi/midiq.h#1 branch .. //depot/projects/busdma/dev/sound/midi/mpu401.c#1 branch .. //depot/projects/busdma/dev/sound/midi/mpu401.h#1 branch .. //depot/projects/busdma/dev/sound/midi/mpu_if.m#1 branch .. //depot/projects/busdma/dev/sound/midi/mpufoi_if.m#1 branch .. //depot/projects/busdma/dev/sound/midi/sequencer.c#1 branch .. //depot/projects/busdma/dev/sound/midi/sequencer.h#1 branch .. //depot/projects/busdma/dev/sound/midi/synth_if.m#1 branch .. //depot/projects/busdma/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/busdma/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/busdma/dev/sound/pci/cmi.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/envy24.c#1 branch .. //depot/projects/busdma/dev/sound/pci/envy24.h#1 branch .. //depot/projects/busdma/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/ich.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/via8233.c#2 integrate .. //depot/projects/busdma/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/busdma/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/busdma/dev/sound/pcm/sound.h#2 integrate .. //depot/projects/busdma/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/busdma/dev/stg/tmc18c30.c#2 integrate .. //depot/projects/busdma/dev/sym/sym_hipd.c#2 integrate .. //depot/projects/busdma/dev/syscons/apm/apm_saver.c#2 integrate .. //depot/projects/busdma/dev/syscons/scterm-sc.c#2 integrate .. //depot/projects/busdma/dev/syscons/scvesactl.c#2 integrate .. //depot/projects/busdma/dev/syscons/scvgarndr.c#2 integrate .. //depot/projects/busdma/dev/syscons/syscons.c#2 integrate .. //depot/projects/busdma/dev/syscons/syscons.h#2 integrate .. //depot/projects/busdma/dev/trm/trm.c#2 integrate .. //depot/projects/busdma/dev/tx/if_tx.c#2 integrate .. //depot/projects/busdma/dev/txp/if_txp.c#2 integrate .. //depot/projects/busdma/dev/uart/uart.h#2 integrate .. //depot/projects/busdma/dev/uart/uart_dbg.c#2 integrate .. //depot/projects/busdma/dev/uart/uart_dev_ns8250.c#2 integrate .. //depot/projects/busdma/dev/uart/uart_dev_z8530.c#2 integrate .. //depot/projects/busdma/dev/uart/uart_tty.c#2 integrate .. //depot/projects/busdma/dev/ubsec/ubsec.c#2 integrate .. //depot/projects/busdma/dev/ubsec/ubsecvar.h#2 integrate .. //depot/projects/busdma/dev/usb/ehci.c#2 integrate .. //depot/projects/busdma/dev/usb/ehci_pci.c#2 integrate .. //depot/projects/busdma/dev/usb/ehcivar.h#2 integrate .. //depot/projects/busdma/dev/usb/if_axe.c#2 integrate .. //depot/projects/busdma/dev/usb/if_axereg.h#2 integrate .. //depot/projects/busdma/dev/usb/if_ural.c#2 integrate .. //depot/projects/busdma/dev/usb/ohci.c#2 integrate .. //depot/projects/busdma/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/busdma/dev/usb/ohcireg.h#2 integrate .. //depot/projects/busdma/dev/usb/ohcivar.h#2 integrate .. //depot/projects/busdma/dev/usb/sl811hs.c#2 integrate .. //depot/projects/busdma/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/busdma/dev/usb/ugen.c#2 integrate .. //depot/projects/busdma/dev/usb/uhci.c#2 integrate .. //depot/projects/busdma/dev/usb/uhci_pci.c#2 integrate .. //depot/projects/busdma/dev/usb/uhcivar.h#2 integrate .. //depot/projects/busdma/dev/usb/uhid.c#2 integrate .. //depot/projects/busdma/dev/usb/umodem.c#2 integrate .. //depot/projects/busdma/dev/usb/uplcom.c#2 integrate .. //depot/projects/busdma/dev/usb/usb.c#2 integrate .. //depot/projects/busdma/dev/usb/usb_mem.c#2 integrate .. //depot/projects/busdma/dev/usb/usb_subr.c#2 integrate .. //depot/projects/busdma/dev/usb/usbdevs#2 integrate .. //depot/projects/busdma/dev/usb/usbdi.c#2 integrate .. //depot/projects/busdma/dev/usb/usbdivar.h#2 integrate .. //depot/projects/busdma/dev/usb/uscanner.c#2 integrate .. //depot/projects/busdma/dev/usb/uvisor.c#2 integrate .. //depot/projects/busdma/dev/wds/wd7000.c#2 integrate .. //depot/projects/busdma/dev/wi/if_wi.c#2 integrate .. //depot/projects/busdma/dev/wi/if_wi_pci.c#2 integrate .. //depot/projects/busdma/dev/wl/if_wl.c#2 integrate .. //depot/projects/busdma/dev/zs/zs.c#2 integrate .. //depot/projects/busdma/doc/subsys/Dependencies#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-cam#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-geom#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-kern#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-linux#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-vm#1 branch .. //depot/projects/busdma/doc/subsys/Makefile#1 branch .. //depot/projects/busdma/doc/subsys/README#1 branch .. //depot/projects/busdma/doc/subsys/common-Doxyfile#1 branch .. //depot/projects/busdma/doc/subsys/notreviewed.dox#1 branch .. //depot/projects/busdma/fs/fdescfs/fdesc_vfsops.c#2 integrate .. //depot/projects/busdma/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/busdma/fs/ntfs/ntfs_vfsops.c#2 integrate .. //depot/projects/busdma/fs/nullfs/null_vfsops.c#2 integrate .. //depot/projects/busdma/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/busdma/fs/procfs/procfs.c#2 integrate .. //depot/projects/busdma/fs/pseudofs/pseudofs.c#2 integrate .. //depot/projects/busdma/fs/pseudofs/pseudofs.h#2 integrate .. //depot/projects/busdma/fs/smbfs/smbfs_io.c#2 integrate .. //depot/projects/busdma/fs/smbfs/smbfs_subr.c#2 integrate .. //depot/projects/busdma/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/busdma/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/busdma/gdb/gdb.h#2 integrate .. //depot/projects/busdma/gdb/gdb_cons.c#2 integrate .. //depot/projects/busdma/gdb/gdb_main.c#2 integrate .. //depot/projects/busdma/gdb/gdb_packet.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli.h#2 integrate .. //depot/projects/busdma/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/busdma/geom/eli/g_eli_key.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/busdma/geom/geom.h#2 integrate .. //depot/projects/busdma/geom/geom_bsd.c#2 integrate .. //depot/projects/busdma/geom/geom_dev.c#2 integrate .. //depot/projects/busdma/geom/geom_gpt.c#2 integrate .. //depot/projects/busdma/geom/geom_io.c#2 integrate .. //depot/projects/busdma/gnu/fs/ext2fs/ext2_vfsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/reiserfs/reiserfs_vfsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_iget.c#2 delete .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_mountops.c#3 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_trace.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/busdma/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iomap.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/busdma/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/busdma/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_vfsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_vnodeops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/busdma/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/busdma/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/busdma/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/busdma/i386/bios/apm.c#2 integrate .. //depot/projects/busdma/i386/bios/apm.h#2 integrate .. //depot/projects/busdma/i386/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/i386/conf/GENERIC#2 integrate .. //depot/projects/busdma/i386/conf/GENERIC.hints#2 integrate .. //depot/projects/busdma/i386/conf/NOTES#3 integrate .. //depot/projects/busdma/i386/conf/PAE#3 integrate .. //depot/projects/busdma/i386/conf/XBOX#2 integrate .. //depot/projects/busdma/i386/cpufreq/powernow.c#2 integrate .. //depot/projects/busdma/i386/i386/busdma_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/db_trace.c#2 integrate .. //depot/projects/busdma/i386/i386/identcpu.c#2 integrate .. //depot/projects/busdma/i386/i386/initcpu.c#2 integrate .. //depot/projects/busdma/i386/i386/machdep.c#3 integrate .. //depot/projects/busdma/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/mp_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/pmap.c#2 integrate .. //depot/projects/busdma/i386/i386/ptrace_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/trap.c#2 integrate .. //depot/projects/busdma/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/busdma/i386/include/clock.h#2 integrate .. //depot/projects/busdma/i386/include/md_var.h#2 integrate .. //depot/projects/busdma/i386/include/mutex.h#2 integrate .. //depot/projects/busdma/i386/include/npx.h#2 integrate .. //depot/projects/busdma/i386/include/pcpu.h#2 integrate .. //depot/projects/busdma/i386/include/pcvt_ioctl.h#2 delete .. //depot/projects/busdma/i386/include/privatespace.h#2 integrate .. //depot/projects/busdma/i386/include/specialreg.h#2 integrate .. //depot/projects/busdma/i386/isa/npx.c#2 integrate .. //depot/projects/busdma/i386/isa/pcvt/pcvt_conf.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_drv.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_ext.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_hdr.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_kbd.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_kbd.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_out.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_sup.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_tbl.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_vtf.c#2 delete .. //depot/projects/busdma/i386/isa/spic.c#2 integrate .. //depot/projects/busdma/i386/linux/linux_dummy.c#3 integrate .. //depot/projects/busdma/i386/linux/linux_proto.h#3 integrate .. //depot/projects/busdma/i386/linux/linux_syscall.h#3 integrate .. //depot/projects/busdma/i386/linux/linux_sysent.c#3 integrate .. //depot/projects/busdma/i386/linux/syscalls.master#3 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_card.c#2 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_isa.c#2 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_lli.c#2 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_pci.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_isac.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_l1.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_l1fsm.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_pci.c#2 integrate .. //depot/projects/busdma/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/ia64/conf/GENERIC#2 integrate .. //depot/projects/busdma/ia64/conf/NOTES#2 integrate .. //depot/projects/busdma/ia64/conf/SKI#2 integrate .. //depot/projects/busdma/ia64/ia64/busdma_machdep.c#2 integrate .. //depot/projects/busdma/ia64/ia64/mp_machdep.c#2 integrate .. //depot/projects/busdma/ia64/ia64/pmap.c#2 integrate .. //depot/projects/busdma/ia64/ia64/ssc.c#2 integrate .. //depot/projects/busdma/ia64/ia64/trap.c#2 integrate .. //depot/projects/busdma/ia64/ia64/vm_machdep.c#2 integrate .. //depot/projects/busdma/isa/isa_common.c#2 integrate .. //depot/projects/busdma/isa/isa_common.h#2 integrate .. //depot/projects/busdma/isofs/cd9660/cd9660_vfsops.c#2 integrate .. //depot/projects/busdma/kern/init_main.c#2 integrate .. //depot/projects/busdma/kern/kern_acct.c#2 integrate .. //depot/projects/busdma/kern/kern_clock.c#2 integrate .. //depot/projects/busdma/kern/kern_conf.c#2 integrate .. //depot/projects/busdma/kern/kern_event.c#2 integrate .. //depot/projects/busdma/kern/kern_exec.c#3 integrate .. //depot/projects/busdma/kern/kern_exit.c#2 integrate .. //depot/projects/busdma/kern/kern_linker.c#2 integrate .. //depot/projects/busdma/kern/kern_mbuf.c#2 integrate .. //depot/projects/busdma/kern/kern_module.c#2 integrate .. //depot/projects/busdma/kern/kern_mutex.c#2 integrate .. //depot/projects/busdma/kern/kern_sig.c#3 integrate .. //depot/projects/busdma/kern/kern_switch.c#2 integrate .. //depot/projects/busdma/kern/kern_synch.c#2 integrate .. //depot/projects/busdma/kern/kern_sysctl.c#2 integrate .. //depot/projects/busdma/kern/kern_tc.c#2 integrate .. //depot/projects/busdma/kern/kern_umtx.c#3 integrate .. //depot/projects/busdma/kern/link_elf.c#2 integrate .. //depot/projects/busdma/kern/link_elf_obj.c#2 integrate .. //depot/projects/busdma/kern/sched_4bsd.c#2 integrate .. //depot/projects/busdma/kern/sched_core.c#1 branch .. //depot/projects/busdma/kern/sched_ule.c#2 integrate .. //depot/projects/busdma/kern/subr_bus.c#2 integrate .. //depot/projects/busdma/kern/subr_disk.c#2 integrate .. //depot/projects/busdma/kern/subr_firmware.c#2 integrate .. //depot/projects/busdma/kern/subr_kdb.c#2 integrate .. //depot/projects/busdma/kern/subr_rman.c#2 integrate .. //depot/projects/busdma/kern/subr_stack.c#2 integrate .. //depot/projects/busdma/kern/subr_taskqueue.c#2 integrate .. //depot/projects/busdma/kern/sys_pipe.c#2 integrate .. //depot/projects/busdma/kern/sysv_msg.c#2 integrate .. //depot/projects/busdma/kern/sysv_sem.c#2 integrate .. //depot/projects/busdma/kern/sysv_shm.c#2 integrate .. //depot/projects/busdma/kern/tty_cons.c#3 integrate .. //depot/projects/busdma/kern/uipc_mbuf.c#2 integrate .. //depot/projects/busdma/kern/uipc_socket.c#2 integrate .. //depot/projects/busdma/kern/uipc_socket2.c#2 integrate .. //depot/projects/busdma/kern/uipc_syscalls.c#2 integrate .. //depot/projects/busdma/kern/uipc_usrreq.c#2 integrate .. //depot/projects/busdma/kern/vfs_aio.c#3 integrate .. //depot/projects/busdma/kern/vfs_cache.c#2 integrate .. //depot/projects/busdma/kern/vfs_init.c#2 integrate .. //depot/projects/busdma/kern/vfs_mount.c#2 integrate .. //depot/projects/busdma/kern/vfs_subr.c#2 integrate .. //depot/projects/busdma/kern/vfs_syscalls.c#2 integrate .. //depot/projects/busdma/kern/vfs_vnops.c#2 integrate .. //depot/projects/busdma/kern/vnode_if.src#2 integrate .. //depot/projects/busdma/modules/Makefile#3 integrate .. //depot/projects/busdma/modules/acpi/acpi/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_asus/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_panasonic/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_toshiba/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_video/Makefile#2 integrate .. //depot/projects/busdma/modules/ath_hal/Makefile#3 integrate .. //depot/projects/busdma/modules/cpufreq/Makefile#2 integrate .. //depot/projects/busdma/modules/fdc/Makefile#2 integrate .. //depot/projects/busdma/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/busdma/modules/geom/geom_eli/Makefile#2 integrate .. //depot/projects/busdma/modules/if_bridge/Makefile#2 integrate .. //depot/projects/busdma/modules/ip6fw/Makefile#2 delete .. //depot/projects/busdma/modules/le/Makefile#2 integrate .. //depot/projects/busdma/modules/lnc/Makefile#2 delete .. //depot/projects/busdma/modules/mfi/Makefile#2 integrate .. //depot/projects/busdma/modules/mfi/mfi_linux/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/busdma/modules/myri10ge/Makefile#2 delete .. //depot/projects/busdma/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/busdma/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/busdma/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/busdma/modules/ppc/Makefile#1 branch .. //depot/projects/busdma/modules/sound/driver/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/busdma/modules/sound/driver/cmi/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/driver/emu10k1/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/busdma/modules/sound/driver/ess/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/sound/Makefile#2 integrate .. //depot/projects/busdma/modules/xfs/Makefile#2 integrate .. //depot/projects/busdma/net/bpf.c#3 integrate .. //depot/projects/busdma/net/bpf.h#2 integrate .. //depot/projects/busdma/net/bpf_filter.c#2 integrate .. //depot/projects/busdma/net/bpfdesc.h#2 integrate .. //depot/projects/busdma/net/if.c#2 integrate .. //depot/projects/busdma/net/if.h#2 integrate .. //depot/projects/busdma/net/if_bridge.c#2 integrate .. //depot/projects/busdma/net/if_clone.c#2 integrate .. //depot/projects/busdma/net/if_disc.c#2 integrate .. //depot/projects/busdma/net/if_faith.c#2 integrate .. //depot/projects/busdma/net/if_fwsubr.c#2 integrate .. //depot/projects/busdma/net/if_gif.c#2 integrate .. //depot/projects/busdma/net/if_gre.c#3 integrate .. //depot/projects/busdma/net/if_loop.c#2 integrate .. //depot/projects/busdma/net/if_media.h#2 integrate .. //depot/projects/busdma/net/if_sl.c#2 integrate .. //depot/projects/busdma/net/if_stf.c#2 integrate .. //depot/projects/busdma/net/if_tap.c#2 integrate .. //depot/projects/busdma/net/if_tun.c#2 integrate .. //depot/projects/busdma/net/if_var.h#2 integrate .. //depot/projects/busdma/net/if_vlan.c#2 integrate .. //depot/projects/busdma/net/net_osdep.h#2 integrate .. //depot/projects/busdma/net/raw_cb.c#2 integrate .. //depot/projects/busdma/net/raw_usrreq.c#2 integrate .. //depot/projects/busdma/net/route.c#3 integrate .. //depot/projects/busdma/net80211/ieee80211_freebsd.c#2 integrate .. //depot/projects/busdma/net80211/ieee80211_input.c#2 integrate .. //depot/projects/busdma/net80211/ieee80211_node.c#2 integrate .. //depot/projects/busdma/netatalk/COPYRIGHT#2 integrate .. //depot/projects/busdma/netgraph/atm/uni/ng_uni_cust.h#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/include/ng_btsocket.h#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/include/ng_hci.h#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#2 integrate .. //depot/projects/busdma/netgraph/netgraph.h#2 integrate .. //depot/projects/busdma/netgraph/ng_base.c#2 integrate .. //depot/projects/busdma/netgraph/ng_iface.c#2 integrate .. //depot/projects/busdma/netgraph/ng_socket.c#2 integrate .. //depot/projects/busdma/netinet/if_ether.c#2 integrate .. //depot/projects/busdma/netinet/in.h#2 integrate .. //depot/projects/busdma/netinet/in_pcb.c#2 integrate .. //depot/projects/busdma/netinet/ip_carp.c#2 integrate .. //depot/projects/busdma/netinet/ip_dummynet.c#2 integrate .. //depot/projects/busdma/netinet/ip_fw.h#2 integrate .. //depot/projects/busdma/netinet/ip_fw2.c#3 integrate .. //depot/projects/busdma/netinet/ip_fw_pfil.c#2 integrate .. //depot/projects/busdma/netinet/ip_gre.c#2 integrate .. //depot/projects/busdma/netinet/ip_input.c#3 integrate .. //depot/projects/busdma/netinet/ip_mroute.c#2 integrate .. //depot/projects/busdma/netinet/ip_output.c#2 integrate .. //depot/projects/busdma/netinet/ip_var.h#2 integrate .. //depot/projects/busdma/netinet/raw_ip.c#2 integrate .. //depot/projects/busdma/netinet/tcp_input.c#2 integrate .. //depot/projects/busdma/netinet/tcp_seq.h#2 integrate .. //depot/projects/busdma/netinet/tcp_syncache.c#2 integrate .. //depot/projects/busdma/netinet/tcp_timer.c#3 integrate .. //depot/projects/busdma/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/busdma/netinet/tcp_var.h#2 integrate .. //depot/projects/busdma/netinet/udp_usrreq.c#3 integrate .. //depot/projects/busdma/netinet6/in6.c#2 integrate .. //depot/projects/busdma/netinet6/in6_src.c#2 integrate .. //depot/projects/busdma/netinet6/ip6_forward.c#3 integrate .. //depot/projects/busdma/netinet6/ip6_fw.c#2 delete .. //depot/projects/busdma/netinet6/ip6_fw.h#2 delete .. //depot/projects/busdma/netinet6/ip6_input.c#2 integrate .. //depot/projects/busdma/netinet6/ip6_output.c#2 integrate .. //depot/projects/busdma/netinet6/nd6.c#2 integrate .. //depot/projects/busdma/netinet6/udp6_usrreq.c#2 integrate .. //depot/projects/busdma/netipsec/ipsec.c#2 integrate .. //depot/projects/busdma/netipsec/ipsec_input.c#2 integrate .. //depot/projects/busdma/netipsec/key.c#2 integrate .. //depot/projects/busdma/netipsec/xform_ah.c#2 integrate .. //depot/projects/busdma/netipsec/xform_esp.c#2 integrate .. //depot/projects/busdma/nfs4client/nfs4_dev.c#2 integrate .. //depot/projects/busdma/nfs4client/nfs4_vfsops.c#2 integrate .. //depot/projects/busdma/nfs4client/nfs4_vnops.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs.h#2 integrate .. //depot/projects/busdma/nfsclient/nfs_bio.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_nfsiod.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_node.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_socket.c#3 integrate .. //depot/projects/busdma/nfsclient/nfs_subs.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/busdma/nfsclient/nfsmount.h#2 integrate .. //depot/projects/busdma/nfsclient/nfsnode.h#2 integrate .. //depot/projects/busdma/nfsserver/nfs_serv.c#2 integrate .. //depot/projects/busdma/nfsserver/nfs_srvsubs.c#2 integrate .. //depot/projects/busdma/opencrypto/criov.c#2 integrate .. //depot/projects/busdma/opencrypto/crypto.c#2 integrate .. //depot/projects/busdma/opencrypto/cryptodev.c#2 integrate .. //depot/projects/busdma/opencrypto/cryptodev.h#2 integrate .. //depot/projects/busdma/opencrypto/cryptosoft.c#2 integrate .. //depot/projects/busdma/opencrypto/cryptosoft.h#2 integrate .. //depot/projects/busdma/opencrypto/xform.c#2 integrate .. //depot/projects/busdma/opencrypto/xform.h#2 integrate .. //depot/projects/busdma/pc98/cbus/fdc.c#3 integrate .. //depot/projects/busdma/pc98/cbus/olpt.c#2 integrate .. //depot/projects/busdma/pc98/cbus/sio.c#2 integrate .. //depot/projects/busdma/pc98/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/pc98/conf/GENERIC#3 integrate .. //depot/projects/busdma/pc98/conf/GENERIC.hints#2 integrate .. //depot/projects/busdma/pc98/conf/NOTES#3 integrate .. //depot/projects/busdma/pc98/include/pcvt_ioctl.h#2 delete .. //depot/projects/busdma/pc98/pc98/canbus.c#2 integrate .. //depot/projects/busdma/pc98/pc98/machdep.c#3 integrate .. //depot/projects/busdma/pci/agp.c#2 integrate .. //depot/projects/busdma/pci/agp_amd64.c#2 integrate .. //depot/projects/busdma/pci/agp_i810.c#2 integrate .. //depot/projects/busdma/pci/agp_sis.c#2 integrate .. //depot/projects/busdma/pci/amdpm.c#2 integrate .. //depot/projects/busdma/pci/amdsmb.c#2 integrate .. //depot/projects/busdma/pci/if_pcn.c#2 integrate .. //depot/projects/busdma/pci/if_pcnreg.h#2 integrate .. //depot/projects/busdma/pci/if_rlreg.h#2 integrate .. //depot/projects/busdma/pci/if_sfreg.h#2 integrate .. //depot/projects/busdma/pci/if_stereg.h#2 integrate .. //depot/projects/busdma/pci/if_tl.c#2 integrate .. //depot/projects/busdma/pci/if_tlreg.h#2 integrate .. //depot/projects/busdma/pci/if_vrreg.h#2 integrate .. //depot/projects/busdma/pci/if_wbreg.h#2 integrate .. //depot/projects/busdma/pci/ncr.c#2 integrate .. //depot/projects/busdma/pci/nfsmb.c#2 integrate .. //depot/projects/busdma/pci/viapm.c#2 integrate .. //depot/projects/busdma/posix4/ksched.c#2 integrate .. //depot/projects/busdma/posix4/p1003_1b.c#2 integrate .. //depot/projects/busdma/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/powerpc/conf/GENERIC#2 integrate .. //depot/projects/busdma/powerpc/powerpc/clock.c#3 integrate .. //depot/projects/busdma/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/busdma/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/mp_machdep.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/pmap_dispatch.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/busdma/security/audit/audit.c#2 integrate .. //depot/projects/busdma/security/audit/audit_arg.c#2 integrate .. //depot/projects/busdma/security/audit/audit_bsm.c#2 integrate .. //depot/projects/busdma/security/audit/audit_bsm_klib.c#2 integrate .. //depot/projects/busdma/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/busdma/security/audit/audit_ioctl.h#2 integrate .. //depot/projects/busdma/security/audit/audit_pipe.c#2 integrate .. //depot/projects/busdma/security/audit/audit_private.h#2 integrate .. //depot/projects/busdma/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/busdma/security/audit/audit_trigger.c#2 integrate .. //depot/projects/busdma/security/audit/audit_worker.c#2 integrate .. //depot/projects/busdma/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/sparc64/conf/GENERIC#2 integrate .. //depot/projects/busdma/sparc64/include/_bus.h#2 integrate .. //depot/projects/busdma/sparc64/include/bus.h#2 integrate .. //depot/projects/busdma/sparc64/include/pmap.h#2 integrate .. //depot/projects/busdma/sparc64/isa/isa.c#2 integrate .. //depot/projects/busdma/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/busdma/sparc64/sparc64/pmap.c#2 integrate .. //depot/projects/busdma/sparc64/sparc64/prof_machdep.c#2 integrate .. //depot/projects/busdma/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/busdma/sys/_timeval.h#2 integrate .. //depot/projects/busdma/sys/conf.h#2 integrate .. //depot/projects/busdma/sys/cons.h#2 integrate .. //depot/projects/busdma/sys/disklabel.h#2 integrate .. //depot/projects/busdma/sys/elf64.h#2 integrate .. //depot/projects/busdma/sys/elf_common.h#2 integrate .. //depot/projects/busdma/sys/file.h#2 integrate .. //depot/projects/busdma/sys/firmware.h#2 integrate .. //depot/projects/busdma/sys/kernel.h#2 integrate .. //depot/projects/busdma/sys/linker.h#2 integrate .. //depot/projects/busdma/sys/mutex.h#2 integrate .. //depot/projects/busdma/sys/param.h#2 integrate .. //depot/projects/busdma/sys/proc.h#2 integrate .. //depot/projects/busdma/sys/protosw.h#2 integrate .. //depot/projects/busdma/sys/queue.h#2 integrate .. //depot/projects/busdma/sys/rman.h#2 integrate .. //depot/projects/busdma/sys/sched.h#2 integrate .. //depot/projects/busdma/sys/signal.h#2 integrate .. //depot/projects/busdma/sys/socketvar.h#2 integrate .. //depot/projects/busdma/sys/sockio.h#2 integrate .. //depot/projects/busdma/sys/sx.h#2 integrate .. //depot/projects/busdma/sys/syscallsubr.h#2 integrate .. //depot/projects/busdma/sys/sysctl.h#2 integrate .. //depot/projects/busdma/sys/ucontext.h#2 integrate .. //depot/projects/busdma/sys/user.h#2 integrate .. //depot/projects/busdma/tools/fw_stub.awk#2 integrate .. //depot/projects/busdma/tools/vnode_if.awk#2 integrate .. //depot/projects/busdma/ufs/ffs/ffs_snapshot.c#3 integrate .. //depot/projects/busdma/ufs/ffs/ffs_softdep.c#3 integrate .. //depot/projects/busdma/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/busdma/ufs/ufs/dinode.h#2 integrate .. //depot/projects/busdma/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/busdma/vm/pmap.h#2 integrate .. //depot/projects/busdma/vm/uma_core.c#2 integrate .. //depot/projects/busdma/vm/vm_extern.h#2 integrate .. //depot/projects/busdma/vm/vm_fault.c#2 integrate .. //depot/projects/busdma/vm/vm_glue.c#2 integrate .. //depot/projects/busdma/vm/vm_map.c#2 integrate .. //depot/projects/busdma/vm/vm_map.h#2 integrate .. //depot/projects/busdma/vm/vm_meter.c#2 integrate .. //depot/projects/busdma/vm/vm_mmap.c#2 integrate .. //depot/projects/busdma/vm/vm_page.c#2 integrate Differences ... ==== //depot/projects/busdma/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.35 2006/03/17 18:54:34 ru Exp $ +# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ .include @@ -11,10 +11,10 @@ # Directories to include in cscope name file and TAGS. CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ - isofs kern libkern modules net netatalk netatm netgraph \ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 01:47:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7DCB916A539; Thu, 22 Jun 2006 01:47:03 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EBD8716A47B for ; Thu, 22 Jun 2006 01:47:02 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 30D9243D48 for ; Thu, 22 Jun 2006 01:47:02 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M1l2Id084917 for ; Thu, 22 Jun 2006 01:47:02 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M1jhJi084853 for perforce@freebsd.org; Thu, 22 Jun 2006 01:45:43 GMT (envelope-from marcel@freebsd.org) Date: Thu, 22 Jun 2006 01:45:43 GMT Message-Id: <200606220145.k5M1jhJi084853@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 99794 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 01:47:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=99794 Change 99794 by marcel@marcel_nfs on 2006/06/22 01:44:42 IFC @99784 Affected files ... .. //depot/projects/busdma/Makefile#2 integrate .. //depot/projects/busdma/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/busdma/amd64/amd64/fpu.c#2 integrate .. //depot/projects/busdma/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/busdma/amd64/amd64/machdep.c#3 integrate .. //depot/projects/busdma/amd64/amd64/mp_machdep.c#2 integrate .. //depot/projects/busdma/amd64/amd64/pmap.c#2 integrate .. //depot/projects/busdma/amd64/amd64/trap.c#2 integrate .. //depot/projects/busdma/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/amd64/conf/GENERIC#3 integrate .. //depot/projects/busdma/amd64/conf/NOTES#3 integrate .. //depot/projects/busdma/amd64/include/clock.h#2 integrate .. //depot/projects/busdma/amd64/include/md_var.h#2 integrate .. //depot/projects/busdma/amd64/include/mutex.h#2 integrate .. //depot/projects/busdma/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/busdma/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/busdma/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/busdma/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/busdma/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/busdma/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/busdma/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/busdma/arm/arm/inckern.S#2 integrate .. //depot/projects/busdma/arm/arm/locore.S#2 integrate .. //depot/projects/busdma/arm/arm/machdep.c#3 integrate .. //depot/projects/busdma/arm/arm/pmap.c#2 integrate .. //depot/projects/busdma/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/busdma/arm/at91/at91.c#2 integrate .. //depot/projects/busdma/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/busdma/arm/at91/at91_st.c#2 integrate .. //depot/projects/busdma/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/busdma/arm/at91/if_ate.c#2 integrate .. //depot/projects/busdma/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/busdma/arm/at91/uart_bus_at91usart.c#3 integrate .. //depot/projects/busdma/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/busdma/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/busdma/arm/conf/IQ31244#2 integrate .. //depot/projects/busdma/arm/conf/KB920X#2 integrate .. //depot/projects/busdma/arm/conf/SIMICS#2 integrate .. //depot/projects/busdma/arm/conf/SKYEYE#2 integrate .. //depot/projects/busdma/arm/include/_types.h#2 integrate .. //depot/projects/busdma/arm/include/atomic.h#2 integrate .. //depot/projects/busdma/arm/include/cpuconf.h#2 integrate .. //depot/projects/busdma/arm/include/cpufunc.h#2 integrate .. //depot/projects/busdma/arm/include/pmap.h#2 integrate .. //depot/projects/busdma/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/busdma/arm/sa11x0/sa11x0_io.c#2 integrate .. //depot/projects/busdma/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/busdma/arm/sa11x0/sa11x0_var.h#2 integrate .. //depot/projects/busdma/arm/sa11x0/uart_cpu_sa1110.c#2 integrate .. //depot/projects/busdma/arm/sa11x0/uart_dev_sa1110.c#2 integrate .. //depot/projects/busdma/arm/xscale/i80321/i80321_space.c#2 integrate .. //depot/projects/busdma/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/busdma/boot/Makefile#2 integrate .. //depot/projects/busdma/boot/common/Makefile.inc#2 integrate .. //depot/projects/busdma/boot/common/load_elf.c#2 integrate .. //depot/projects/busdma/boot/common/loader.8#2 integrate .. //depot/projects/busdma/boot/efi/libefi/bootinfo.c#2 integrate .. //depot/projects/busdma/boot/ficl/Makefile#2 integrate .. //depot/projects/busdma/boot/ficl/alpha/sysdep.c#2 delete .. //depot/projects/busdma/boot/ficl/alpha/sysdep.h#2 delete .. //depot/projects/busdma/boot/ficl/loader.c#2 integrate .. //depot/projects/busdma/boot/forth/loader.4th#2 integrate .. //depot/projects/busdma/boot/forth/loader.conf#2 integrate .. //depot/projects/busdma/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/busdma/boot/ia64/ski/bootinfo.c#2 integrate .. //depot/projects/busdma/boot/ia64/ski/conf.c#2 integrate .. //depot/projects/busdma/boot/pc98/Makefile#2 integrate .. //depot/projects/busdma/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/busdma/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/busdma/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/busdma/boot/powerpc/loader/conf.c#2 integrate .. //depot/projects/busdma/bsm/audit.h#2 integrate .. //depot/projects/busdma/bsm/audit_record.h#2 integrate .. //depot/projects/busdma/cam/cam_ccb.h#2 integrate .. //depot/projects/busdma/cam/cam_debug.h#2 integrate .. //depot/projects/busdma/cam/cam_periph.c#2 integrate .. //depot/projects/busdma/cam/cam_xpt.c#2 integrate .. //depot/projects/busdma/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/busdma/cam/scsi/scsi_target.c#2 integrate .. //depot/projects/busdma/coda/cnode.h#2 integrate .. //depot/projects/busdma/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/busdma/compat/linprocfs/linprocfs.c#3 integrate .. //depot/projects/busdma/compat/linux/linux_stats.c#3 integrate .. //depot/projects/busdma/compat/ndis/subr_hal.c#2 integrate .. //depot/projects/busdma/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/busdma/compat/ndis/subr_ntoskrnl.c#2 integrate .. //depot/projects/busdma/compat/ndis/winx32_wrap.S#2 integrate .. //depot/projects/busdma/conf/Makefile.arm#2 integrate .. //depot/projects/busdma/conf/NOTES#3 integrate .. //depot/projects/busdma/conf/files#3 integrate .. //depot/projects/busdma/conf/files.amd64#3 integrate .. //depot/projects/busdma/conf/files.arm#2 integrate .. //depot/projects/busdma/conf/files.i386#3 integrate .. //depot/projects/busdma/conf/files.pc98#3 integrate .. //depot/projects/busdma/conf/files.powerpc#2 integrate .. //depot/projects/busdma/conf/kern.mk#3 integrate .. //depot/projects/busdma/conf/kern.post.mk#2 integrate .. //depot/projects/busdma/conf/kmod.mk#2 integrate .. //depot/projects/busdma/conf/options#3 integrate .. //depot/projects/busdma/conf/options.arm#2 integrate .. //depot/projects/busdma/conf/options.i386#3 integrate .. //depot/projects/busdma/contrib/dev/ath/COPYRIGHT#2 integrate .. //depot/projects/busdma/contrib/dev/ath/README#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah_desc.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/freebsd/ah_if.m#2 integrate .. //depot/projects/busdma/contrib/dev/ath/freebsd/ah_osdep.c#2 integrate .. //depot/projects/busdma/contrib/dev/ath/freebsd/ah_osdep.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/arm9-le-thumb-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/i386-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/i386-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-eabi.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-le-eabi.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sh4-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/busdma/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/x86_64-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/x86_64-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-be-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-le-elf.inc#2 integrate .. //depot/projects/busdma/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#2 integrate .. //depot/projects/busdma/contrib/dev/ath/version.h#2 integrate .. //depot/projects/busdma/contrib/dev/oltr/if_oltr.c#2 integrate .. //depot/projects/busdma/contrib/pf/net/if_pfsync.c#2 integrate .. //depot/projects/busdma/contrib/pf/net/pf_ioctl.c#2 integrate .. //depot/projects/busdma/crypto/via/padlock.c#2 integrate .. //depot/projects/busdma/ddb/db_sym.c#2 integrate .. //depot/projects/busdma/dev/aac/aac_pci.c#2 integrate .. //depot/projects/busdma/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/busdma/dev/acpica/Osd/OsdSchedule.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpi.c#3 integrate .. //depot/projects/busdma/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/busdma/dev/acpica/acpivar.h#2 integrate .. //depot/projects/busdma/dev/ahb/ahb.c#2 integrate .. //depot/projects/busdma/dev/aic7xxx/aic79xx_osm.h#2 integrate .. //depot/projects/busdma/dev/aic7xxx/aic7xxx_osm.h#2 integrate .. //depot/projects/busdma/dev/an/if_an.c#2 integrate .. //depot/projects/busdma/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/busdma/dev/arl/if_arl.c#2 integrate .. //depot/projects/busdma/dev/arl/if_arl_isa.c#2 integrate .. //depot/projects/busdma/dev/asr/asr.c#2 integrate .. //depot/projects/busdma/dev/ata/ata-all.c#2 integrate .. //depot/projects/busdma/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/busdma/dev/ata/ata-pci.c#2 integrate .. //depot/projects/busdma/dev/ath/if_ath.c#3 integrate .. //depot/projects/busdma/dev/ath/if_ath_pci.c#3 integrate .. //depot/projects/busdma/dev/ath/if_athvar.h#3 integrate .. //depot/projects/busdma/dev/atkbdc/atkbd.c#2 integrate .. //depot/projects/busdma/dev/atkbdc/atkbdc.c#2 integrate .. //depot/projects/busdma/dev/atkbdc/atkbdc_isa.c#2 integrate .. //depot/projects/busdma/dev/awi/awi.c#2 integrate .. //depot/projects/busdma/dev/bce/if_bce.c#2 integrate .. //depot/projects/busdma/dev/bce/if_bcereg.h#3 integrate .. //depot/projects/busdma/dev/bfe/if_bfe.c#3 integrate .. //depot/projects/busdma/dev/bfe/if_bfereg.h#3 integrate .. //depot/projects/busdma/dev/bge/if_bge.c#2 integrate .. //depot/projects/busdma/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/busdma/dev/bktr/bktr_os.c#2 integrate .. //depot/projects/busdma/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/busdma/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/busdma/dev/ciss/ciss.c#2 integrate .. //depot/projects/busdma/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/busdma/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/busdma/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/busdma/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/busdma/dev/cnw/if_cnw.c#2 integrate .. //depot/projects/busdma/dev/cpufreq/ichss.c#2 integrate .. //depot/projects/busdma/dev/ct/bshw_machdep.c#2 integrate .. //depot/projects/busdma/dev/ctau/if_ct.c#2 integrate .. //depot/projects/busdma/dev/cx/if_cx.c#2 integrate .. //depot/projects/busdma/dev/dc/dcphy.c#2 integrate .. //depot/projects/busdma/dev/dc/if_dc.c#2 integrate .. //depot/projects/busdma/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/busdma/dev/dcons/dcons_os.c#2 integrate .. //depot/projects/busdma/dev/de/if_de.c#2 integrate .. //depot/projects/busdma/dev/digi/digi.c#2 integrate .. //depot/projects/busdma/dev/dpt/dpt_scsi.c#2 integrate .. //depot/projects/busdma/dev/drm/drm.h#2 integrate .. //depot/projects/busdma/dev/drm/drm_scatter.c#2 integrate .. //depot/projects/busdma/dev/drm/i915_drv.c#2 integrate .. //depot/projects/busdma/dev/drm/mga_drv.c#2 integrate .. //depot/projects/busdma/dev/drm/r300_cmdbuf.c#2 integrate .. //depot/projects/busdma/dev/ed/if_ed.c#2 integrate .. //depot/projects/busdma/dev/ed/if_ed_cbus.c#2 integrate .. //depot/projects/busdma/dev/ed/if_ed_novell.c#2 integrate .. //depot/projects/busdma/dev/ed/if_edvar.h#2 integrate .. //depot/projects/busdma/dev/em/if_em.c#2 integrate .. //depot/projects/busdma/dev/em/if_em_hw.c#2 integrate .. //depot/projects/busdma/dev/fb/boot_font.c#2 integrate .. //depot/projects/busdma/dev/fb/gfb.c#2 integrate .. //depot/projects/busdma/dev/fb/tga.c#2 delete .. //depot/projects/busdma/dev/fb/tga.h#2 delete .. //depot/projects/busdma/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/busdma/dev/fxp/if_fxp.c#2 integrate .. //depot/projects/busdma/dev/gem/if_gem.c#2 integrate .. //depot/projects/busdma/dev/gfb/gfb_pci.c#2 integrate .. //depot/projects/busdma/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/busdma/dev/hifn/hifn7751var.h#2 integrate .. //depot/projects/busdma/dev/hme/if_hme.c#2 integrate .. //depot/projects/busdma/dev/hptmv/entry.c#2 integrate .. //depot/projects/busdma/dev/ic/ns16550.h#2 integrate .. //depot/projects/busdma/dev/idt/idt.c#2 integrate .. //depot/projects/busdma/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/busdma/dev/iir/iir.c#2 integrate .. //depot/projects/busdma/dev/iir/iir_pci.c#2 integrate .. //depot/projects/busdma/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/busdma/dev/ips/ips.c#2 integrate .. //depot/projects/busdma/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/busdma/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/busdma/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/busdma/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/busdma/dev/isp/isp_pci.c#2 integrate .. //depot/projects/busdma/dev/isp/isp_tpublic.h#2 integrate .. //depot/projects/busdma/dev/isp/ispvar.h#2 integrate .. //depot/projects/busdma/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/busdma/dev/ixgb/if_ixgb.h#2 integrate .. //depot/projects/busdma/dev/ixgb/if_ixgb_osdep.h#2 integrate .. //depot/projects/busdma/dev/le/am7990.c#2 integrate .. //depot/projects/busdma/dev/le/am79900.c#2 integrate .. //depot/projects/busdma/dev/le/if_le_cbus.c#1 branch .. //depot/projects/busdma/dev/le/if_le_isa.c#1 branch .. //depot/projects/busdma/dev/le/if_le_ledma.c#2 integrate .. //depot/projects/busdma/dev/le/if_le_pci.c#2 integrate .. //depot/projects/busdma/dev/le/lance.c#2 integrate .. //depot/projects/busdma/dev/le/lancereg.h#2 integrate .. //depot/projects/busdma/dev/le/lancevar.h#2 integrate .. //depot/projects/busdma/dev/lge/if_lge.c#2 integrate .. //depot/projects/busdma/dev/lge/if_lgereg.h#2 integrate .. //depot/projects/busdma/dev/lmc/if_lmc.c#2 integrate .. //depot/projects/busdma/dev/lmc/if_lmc.h#2 integrate .. //depot/projects/busdma/dev/lnc/if_lnc.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lnc_cbus.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lnc_isa.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lnc_pci.c#2 delete .. //depot/projects/busdma/dev/lnc/if_lncreg.h#2 delete .. //depot/projects/busdma/dev/lnc/if_lncvar.h#2 delete .. //depot/projects/busdma/dev/mfi/mfi.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfi_ioctl.h#2 integrate .. //depot/projects/busdma/dev/mfi/mfi_linux.c#1 branch .. //depot/projects/busdma/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfireg.h#2 integrate .. //depot/projects/busdma/dev/mfi/mfivar.h#2 integrate .. //depot/projects/busdma/dev/mii/brgphy.c#2 integrate .. //depot/projects/busdma/dev/mii/ciphy.c#2 integrate .. //depot/projects/busdma/dev/mii/e1000phy.c#2 integrate .. //depot/projects/busdma/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/busdma/dev/mii/miivar.h#2 integrate .. //depot/projects/busdma/dev/mii/nsgphy.c#2 integrate .. //depot/projects/busdma/dev/mii/rgephy.c#2 integrate .. //depot/projects/busdma/dev/mii/tdkphy.c#2 integrate .. //depot/projects/busdma/dev/mii/ukphy_subr.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt.h#3 integrate .. //depot/projects/busdma/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/busdma/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_pci.c#3 integrate .. //depot/projects/busdma/dev/mpt/mpt_raid.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/busdma/dev/mpt/mpt_reg.h#2 integrate .. //depot/projects/busdma/dev/mse/mse.c#2 integrate .. //depot/projects/busdma/dev/mse/mse_cbus.c#2 integrate .. //depot/projects/busdma/dev/mse/mse_isa.c#2 integrate .. //depot/projects/busdma/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/busdma/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/busdma/dev/mxge/if_mxge.c#1 branch .. //depot/projects/busdma/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/busdma/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/busdma/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/busdma/dev/my/if_my.c#2 integrate .. //depot/projects/busdma/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/busdma/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/busdma/dev/myri10ge/if_myri10ge.c#2 delete .. //depot/projects/busdma/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/busdma/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/busdma/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/busdma/dev/ncv/ncr53c500.c#2 integrate .. //depot/projects/busdma/dev/nge/if_nge.c#2 integrate .. //depot/projects/busdma/dev/nge/if_ngereg.h#2 integrate .. //depot/projects/busdma/dev/nsp/nsp.c#2 integrate .. //depot/projects/busdma/dev/nve/if_nve.c#2 integrate .. //depot/projects/busdma/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/busdma/dev/pbio/pbio.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbb.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbb_isa.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/busdma/dev/pccbb/pccbbvar.h#2 integrate .. //depot/projects/busdma/dev/pci/fixup_pci.c#2 integrate .. //depot/projects/busdma/dev/pci/pcireg.h#2 integrate .. //depot/projects/busdma/dev/pdq/pdq_freebsd.h#2 integrate .. //depot/projects/busdma/dev/pdq/pdqvar.h#2 integrate .. //depot/projects/busdma/dev/ppbus/vpoio.c#2 integrate .. //depot/projects/busdma/dev/ppc/ppc.c#2 integrate .. //depot/projects/busdma/dev/puc/pucdata.c#2 integrate .. //depot/projects/busdma/dev/ral/if_ral_pci.c#2 integrate .. //depot/projects/busdma/dev/ral/rt2560.c#2 integrate .. //depot/projects/busdma/dev/ral/rt2661.c#2 integrate .. //depot/projects/busdma/dev/re/if_re.c#2 integrate .. //depot/projects/busdma/dev/rr232x/os_bsd.h#2 integrate .. //depot/projects/busdma/dev/safe/safe.c#2 integrate .. //depot/projects/busdma/dev/safe/safevar.h#2 integrate .. //depot/projects/busdma/dev/sbsh/if_sbsh.c#2 integrate .. //depot/projects/busdma/dev/sio/sio.c#2 integrate .. //depot/projects/busdma/dev/sk/if_sk.c#2 integrate .. //depot/projects/busdma/dev/sk/if_skreg.h#2 integrate .. //depot/projects/busdma/dev/sound/driver.c#2 integrate .. //depot/projects/busdma/dev/sound/isa/es1888.c#2 delete .. //depot/projects/busdma/dev/sound/isa/gusc.c#2 integrate .. //depot/projects/busdma/dev/sound/midi/midi.c#1 branch .. //depot/projects/busdma/dev/sound/midi/midi.h#1 branch .. //depot/projects/busdma/dev/sound/midi/midiq.h#1 branch .. //depot/projects/busdma/dev/sound/midi/mpu401.c#1 branch .. //depot/projects/busdma/dev/sound/midi/mpu401.h#1 branch .. //depot/projects/busdma/dev/sound/midi/mpu_if.m#1 branch .. //depot/projects/busdma/dev/sound/midi/mpufoi_if.m#1 branch .. //depot/projects/busdma/dev/sound/midi/sequencer.c#1 branch .. //depot/projects/busdma/dev/sound/midi/sequencer.h#1 branch .. //depot/projects/busdma/dev/sound/midi/synth_if.m#1 branch .. //depot/projects/busdma/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/busdma/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/busdma/dev/sound/pci/cmi.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/envy24.c#1 branch .. //depot/projects/busdma/dev/sound/pci/envy24.h#1 branch .. //depot/projects/busdma/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/ich.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/busdma/dev/sound/pci/via8233.c#2 integrate .. //depot/projects/busdma/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/busdma/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/busdma/dev/sound/pcm/sound.h#2 integrate .. //depot/projects/busdma/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/busdma/dev/stg/tmc18c30.c#2 integrate .. //depot/projects/busdma/dev/sym/sym_hipd.c#2 integrate .. //depot/projects/busdma/dev/syscons/apm/apm_saver.c#2 integrate .. //depot/projects/busdma/dev/syscons/scterm-sc.c#2 integrate .. //depot/projects/busdma/dev/syscons/scvesactl.c#2 integrate .. //depot/projects/busdma/dev/syscons/scvgarndr.c#2 integrate .. //depot/projects/busdma/dev/syscons/syscons.c#2 integrate .. //depot/projects/busdma/dev/syscons/syscons.h#2 integrate .. //depot/projects/busdma/dev/trm/trm.c#2 integrate .. //depot/projects/busdma/dev/tx/if_tx.c#2 integrate .. //depot/projects/busdma/dev/txp/if_txp.c#2 integrate .. //depot/projects/busdma/dev/uart/uart.h#2 integrate .. //depot/projects/busdma/dev/uart/uart_dbg.c#2 integrate .. //depot/projects/busdma/dev/uart/uart_dev_ns8250.c#2 integrate .. //depot/projects/busdma/dev/uart/uart_dev_z8530.c#2 integrate .. //depot/projects/busdma/dev/uart/uart_tty.c#2 integrate .. //depot/projects/busdma/dev/ubsec/ubsec.c#2 integrate .. //depot/projects/busdma/dev/ubsec/ubsecvar.h#2 integrate .. //depot/projects/busdma/dev/usb/ehci.c#2 integrate .. //depot/projects/busdma/dev/usb/ehci_pci.c#2 integrate .. //depot/projects/busdma/dev/usb/ehcivar.h#2 integrate .. //depot/projects/busdma/dev/usb/if_axe.c#2 integrate .. //depot/projects/busdma/dev/usb/if_axereg.h#2 integrate .. //depot/projects/busdma/dev/usb/if_ural.c#2 integrate .. //depot/projects/busdma/dev/usb/ohci.c#2 integrate .. //depot/projects/busdma/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/busdma/dev/usb/ohcireg.h#2 integrate .. //depot/projects/busdma/dev/usb/ohcivar.h#2 integrate .. //depot/projects/busdma/dev/usb/sl811hs.c#2 integrate .. //depot/projects/busdma/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/busdma/dev/usb/ugen.c#2 integrate .. //depot/projects/busdma/dev/usb/uhci.c#2 integrate .. //depot/projects/busdma/dev/usb/uhci_pci.c#2 integrate .. //depot/projects/busdma/dev/usb/uhcivar.h#2 integrate .. //depot/projects/busdma/dev/usb/uhid.c#2 integrate .. //depot/projects/busdma/dev/usb/umodem.c#2 integrate .. //depot/projects/busdma/dev/usb/uplcom.c#2 integrate .. //depot/projects/busdma/dev/usb/usb.c#2 integrate .. //depot/projects/busdma/dev/usb/usb_mem.c#2 integrate .. //depot/projects/busdma/dev/usb/usb_subr.c#2 integrate .. //depot/projects/busdma/dev/usb/usbdevs#2 integrate .. //depot/projects/busdma/dev/usb/usbdi.c#2 integrate .. //depot/projects/busdma/dev/usb/usbdivar.h#2 integrate .. //depot/projects/busdma/dev/usb/uscanner.c#2 integrate .. //depot/projects/busdma/dev/usb/uvisor.c#2 integrate .. //depot/projects/busdma/dev/wds/wd7000.c#2 integrate .. //depot/projects/busdma/dev/wi/if_wi.c#2 integrate .. //depot/projects/busdma/dev/wi/if_wi_pci.c#2 integrate .. //depot/projects/busdma/dev/wl/if_wl.c#2 integrate .. //depot/projects/busdma/dev/zs/zs.c#2 integrate .. //depot/projects/busdma/doc/subsys/Dependencies#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-cam#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-geom#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-kern#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-linux#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/busdma/doc/subsys/Doxyfile-vm#1 branch .. //depot/projects/busdma/doc/subsys/Makefile#1 branch .. //depot/projects/busdma/doc/subsys/README#1 branch .. //depot/projects/busdma/doc/subsys/common-Doxyfile#1 branch .. //depot/projects/busdma/doc/subsys/notreviewed.dox#1 branch .. //depot/projects/busdma/fs/fdescfs/fdesc_vfsops.c#2 integrate .. //depot/projects/busdma/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/busdma/fs/ntfs/ntfs_vfsops.c#2 integrate .. //depot/projects/busdma/fs/nullfs/null_vfsops.c#2 integrate .. //depot/projects/busdma/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/busdma/fs/procfs/procfs.c#2 integrate .. //depot/projects/busdma/fs/pseudofs/pseudofs.c#2 integrate .. //depot/projects/busdma/fs/pseudofs/pseudofs.h#2 integrate .. //depot/projects/busdma/fs/smbfs/smbfs_io.c#2 integrate .. //depot/projects/busdma/fs/smbfs/smbfs_subr.c#2 integrate .. //depot/projects/busdma/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/busdma/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/busdma/gdb/gdb.h#2 integrate .. //depot/projects/busdma/gdb/gdb_cons.c#2 integrate .. //depot/projects/busdma/gdb/gdb_main.c#2 integrate .. //depot/projects/busdma/gdb/gdb_packet.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli.h#2 integrate .. //depot/projects/busdma/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/busdma/geom/eli/g_eli_key.c#2 integrate .. //depot/projects/busdma/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/busdma/geom/geom.h#2 integrate .. //depot/projects/busdma/geom/geom_bsd.c#2 integrate .. //depot/projects/busdma/geom/geom_dev.c#2 integrate .. //depot/projects/busdma/geom/geom_gpt.c#2 integrate .. //depot/projects/busdma/geom/geom_io.c#2 integrate .. //depot/projects/busdma/gnu/fs/ext2fs/ext2_vfsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/reiserfs/reiserfs_vfsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_iget.c#2 delete .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_mountops.c#3 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_trace.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/busdma/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iomap.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/busdma/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/busdma/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_vfsops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfs_vnodeops.c#2 integrate .. //depot/projects/busdma/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/busdma/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/busdma/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/busdma/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/busdma/i386/bios/apm.c#2 integrate .. //depot/projects/busdma/i386/bios/apm.h#2 integrate .. //depot/projects/busdma/i386/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/i386/conf/GENERIC#2 integrate .. //depot/projects/busdma/i386/conf/GENERIC.hints#2 integrate .. //depot/projects/busdma/i386/conf/NOTES#3 integrate .. //depot/projects/busdma/i386/conf/PAE#3 integrate .. //depot/projects/busdma/i386/conf/XBOX#2 integrate .. //depot/projects/busdma/i386/cpufreq/powernow.c#2 integrate .. //depot/projects/busdma/i386/i386/busdma_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/db_trace.c#2 integrate .. //depot/projects/busdma/i386/i386/identcpu.c#2 integrate .. //depot/projects/busdma/i386/i386/initcpu.c#2 integrate .. //depot/projects/busdma/i386/i386/machdep.c#3 integrate .. //depot/projects/busdma/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/mp_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/pmap.c#2 integrate .. //depot/projects/busdma/i386/i386/ptrace_machdep.c#2 integrate .. //depot/projects/busdma/i386/i386/trap.c#2 integrate .. //depot/projects/busdma/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/busdma/i386/include/clock.h#2 integrate .. //depot/projects/busdma/i386/include/md_var.h#2 integrate .. //depot/projects/busdma/i386/include/mutex.h#2 integrate .. //depot/projects/busdma/i386/include/npx.h#2 integrate .. //depot/projects/busdma/i386/include/pcpu.h#2 integrate .. //depot/projects/busdma/i386/include/pcvt_ioctl.h#2 delete .. //depot/projects/busdma/i386/include/privatespace.h#2 integrate .. //depot/projects/busdma/i386/include/specialreg.h#2 integrate .. //depot/projects/busdma/i386/isa/npx.c#2 integrate .. //depot/projects/busdma/i386/isa/pcvt/pcvt_conf.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_drv.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_ext.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_hdr.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_kbd.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_kbd.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_out.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_sup.c#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_tbl.h#2 delete .. //depot/projects/busdma/i386/isa/pcvt/pcvt_vtf.c#2 delete .. //depot/projects/busdma/i386/isa/spic.c#2 integrate .. //depot/projects/busdma/i386/linux/linux_dummy.c#3 integrate .. //depot/projects/busdma/i386/linux/linux_proto.h#3 integrate .. //depot/projects/busdma/i386/linux/linux_syscall.h#3 integrate .. //depot/projects/busdma/i386/linux/linux_sysent.c#3 integrate .. //depot/projects/busdma/i386/linux/syscalls.master#3 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_card.c#2 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_isa.c#2 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_lli.c#2 integrate .. //depot/projects/busdma/i4b/capi/iavc/iavc_pci.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_isac.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_l1.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_l1fsm.c#2 integrate .. //depot/projects/busdma/i4b/layer1/itjc/i4b_itjc_pci.c#2 integrate .. //depot/projects/busdma/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/ia64/conf/GENERIC#2 integrate .. //depot/projects/busdma/ia64/conf/NOTES#2 integrate .. //depot/projects/busdma/ia64/conf/SKI#2 integrate .. //depot/projects/busdma/ia64/ia64/busdma_machdep.c#2 integrate .. //depot/projects/busdma/ia64/ia64/mp_machdep.c#2 integrate .. //depot/projects/busdma/ia64/ia64/pmap.c#2 integrate .. //depot/projects/busdma/ia64/ia64/ssc.c#2 integrate .. //depot/projects/busdma/ia64/ia64/trap.c#2 integrate .. //depot/projects/busdma/ia64/ia64/vm_machdep.c#2 integrate .. //depot/projects/busdma/isa/isa_common.c#2 integrate .. //depot/projects/busdma/isa/isa_common.h#2 integrate .. //depot/projects/busdma/isofs/cd9660/cd9660_vfsops.c#2 integrate .. //depot/projects/busdma/kern/init_main.c#2 integrate .. //depot/projects/busdma/kern/kern_acct.c#2 integrate .. //depot/projects/busdma/kern/kern_clock.c#2 integrate .. //depot/projects/busdma/kern/kern_conf.c#2 integrate .. //depot/projects/busdma/kern/kern_event.c#2 integrate .. //depot/projects/busdma/kern/kern_exec.c#3 integrate .. //depot/projects/busdma/kern/kern_exit.c#2 integrate .. //depot/projects/busdma/kern/kern_linker.c#2 integrate .. //depot/projects/busdma/kern/kern_mbuf.c#2 integrate .. //depot/projects/busdma/kern/kern_module.c#2 integrate .. //depot/projects/busdma/kern/kern_mutex.c#2 integrate .. //depot/projects/busdma/kern/kern_sig.c#3 integrate .. //depot/projects/busdma/kern/kern_switch.c#2 integrate .. //depot/projects/busdma/kern/kern_synch.c#2 integrate .. //depot/projects/busdma/kern/kern_sysctl.c#2 integrate .. //depot/projects/busdma/kern/kern_tc.c#2 integrate .. //depot/projects/busdma/kern/kern_umtx.c#3 integrate .. //depot/projects/busdma/kern/link_elf.c#2 integrate .. //depot/projects/busdma/kern/link_elf_obj.c#2 integrate .. //depot/projects/busdma/kern/sched_4bsd.c#2 integrate .. //depot/projects/busdma/kern/sched_core.c#1 branch .. //depot/projects/busdma/kern/sched_ule.c#2 integrate .. //depot/projects/busdma/kern/subr_bus.c#2 integrate .. //depot/projects/busdma/kern/subr_disk.c#2 integrate .. //depot/projects/busdma/kern/subr_firmware.c#2 integrate .. //depot/projects/busdma/kern/subr_kdb.c#2 integrate .. //depot/projects/busdma/kern/subr_rman.c#2 integrate .. //depot/projects/busdma/kern/subr_stack.c#2 integrate .. //depot/projects/busdma/kern/subr_taskqueue.c#2 integrate .. //depot/projects/busdma/kern/sys_pipe.c#2 integrate .. //depot/projects/busdma/kern/sysv_msg.c#2 integrate .. //depot/projects/busdma/kern/sysv_sem.c#2 integrate .. //depot/projects/busdma/kern/sysv_shm.c#2 integrate .. //depot/projects/busdma/kern/tty_cons.c#3 integrate .. //depot/projects/busdma/kern/uipc_mbuf.c#2 integrate .. //depot/projects/busdma/kern/uipc_socket.c#2 integrate .. //depot/projects/busdma/kern/uipc_socket2.c#2 integrate .. //depot/projects/busdma/kern/uipc_syscalls.c#2 integrate .. //depot/projects/busdma/kern/uipc_usrreq.c#2 integrate .. //depot/projects/busdma/kern/vfs_aio.c#3 integrate .. //depot/projects/busdma/kern/vfs_cache.c#2 integrate .. //depot/projects/busdma/kern/vfs_init.c#2 integrate .. //depot/projects/busdma/kern/vfs_mount.c#2 integrate .. //depot/projects/busdma/kern/vfs_subr.c#2 integrate .. //depot/projects/busdma/kern/vfs_syscalls.c#2 integrate .. //depot/projects/busdma/kern/vfs_vnops.c#2 integrate .. //depot/projects/busdma/kern/vnode_if.src#2 integrate .. //depot/projects/busdma/modules/Makefile#3 integrate .. //depot/projects/busdma/modules/acpi/acpi/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_asus/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_panasonic/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_toshiba/Makefile#2 integrate .. //depot/projects/busdma/modules/acpi/acpi_video/Makefile#2 integrate .. //depot/projects/busdma/modules/ath_hal/Makefile#3 integrate .. //depot/projects/busdma/modules/cpufreq/Makefile#2 integrate .. //depot/projects/busdma/modules/fdc/Makefile#2 integrate .. //depot/projects/busdma/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/busdma/modules/geom/geom_eli/Makefile#2 integrate .. //depot/projects/busdma/modules/if_bridge/Makefile#2 integrate .. //depot/projects/busdma/modules/ip6fw/Makefile#2 delete .. //depot/projects/busdma/modules/le/Makefile#2 integrate .. //depot/projects/busdma/modules/lnc/Makefile#2 delete .. //depot/projects/busdma/modules/mfi/Makefile#2 integrate .. //depot/projects/busdma/modules/mfi/mfi_linux/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/busdma/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/busdma/modules/myri10ge/Makefile#2 delete .. //depot/projects/busdma/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/busdma/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/busdma/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/busdma/modules/ppc/Makefile#1 branch .. //depot/projects/busdma/modules/sound/driver/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/busdma/modules/sound/driver/cmi/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/driver/emu10k1/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/busdma/modules/sound/driver/ess/Makefile#2 integrate .. //depot/projects/busdma/modules/sound/sound/Makefile#2 integrate .. //depot/projects/busdma/modules/xfs/Makefile#2 integrate .. //depot/projects/busdma/net/bpf.c#3 integrate .. //depot/projects/busdma/net/bpf.h#2 integrate .. //depot/projects/busdma/net/bpf_filter.c#2 integrate .. //depot/projects/busdma/net/bpfdesc.h#2 integrate .. //depot/projects/busdma/net/if.c#2 integrate .. //depot/projects/busdma/net/if.h#2 integrate .. //depot/projects/busdma/net/if_bridge.c#2 integrate .. //depot/projects/busdma/net/if_clone.c#2 integrate .. //depot/projects/busdma/net/if_disc.c#2 integrate .. //depot/projects/busdma/net/if_faith.c#2 integrate .. //depot/projects/busdma/net/if_fwsubr.c#2 integrate .. //depot/projects/busdma/net/if_gif.c#2 integrate .. //depot/projects/busdma/net/if_gre.c#3 integrate .. //depot/projects/busdma/net/if_loop.c#2 integrate .. //depot/projects/busdma/net/if_media.h#2 integrate .. //depot/projects/busdma/net/if_sl.c#2 integrate .. //depot/projects/busdma/net/if_stf.c#2 integrate .. //depot/projects/busdma/net/if_tap.c#2 integrate .. //depot/projects/busdma/net/if_tun.c#2 integrate .. //depot/projects/busdma/net/if_var.h#2 integrate .. //depot/projects/busdma/net/if_vlan.c#2 integrate .. //depot/projects/busdma/net/net_osdep.h#2 integrate .. //depot/projects/busdma/net/raw_cb.c#2 integrate .. //depot/projects/busdma/net/raw_usrreq.c#2 integrate .. //depot/projects/busdma/net/route.c#3 integrate .. //depot/projects/busdma/net80211/ieee80211_freebsd.c#2 integrate .. //depot/projects/busdma/net80211/ieee80211_input.c#2 integrate .. //depot/projects/busdma/net80211/ieee80211_node.c#2 integrate .. //depot/projects/busdma/netatalk/COPYRIGHT#2 integrate .. //depot/projects/busdma/netgraph/atm/uni/ng_uni_cust.h#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/include/ng_btsocket.h#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/include/ng_hci.h#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#2 integrate .. //depot/projects/busdma/netgraph/netgraph.h#2 integrate .. //depot/projects/busdma/netgraph/ng_base.c#2 integrate .. //depot/projects/busdma/netgraph/ng_iface.c#2 integrate .. //depot/projects/busdma/netgraph/ng_socket.c#2 integrate .. //depot/projects/busdma/netinet/if_ether.c#2 integrate .. //depot/projects/busdma/netinet/in.h#2 integrate .. //depot/projects/busdma/netinet/in_pcb.c#2 integrate .. //depot/projects/busdma/netinet/ip_carp.c#2 integrate .. //depot/projects/busdma/netinet/ip_dummynet.c#2 integrate .. //depot/projects/busdma/netinet/ip_fw.h#2 integrate .. //depot/projects/busdma/netinet/ip_fw2.c#3 integrate .. //depot/projects/busdma/netinet/ip_fw_pfil.c#2 integrate .. //depot/projects/busdma/netinet/ip_gre.c#2 integrate .. //depot/projects/busdma/netinet/ip_input.c#3 integrate .. //depot/projects/busdma/netinet/ip_mroute.c#2 integrate .. //depot/projects/busdma/netinet/ip_output.c#2 integrate .. //depot/projects/busdma/netinet/ip_var.h#2 integrate .. //depot/projects/busdma/netinet/raw_ip.c#2 integrate .. //depot/projects/busdma/netinet/tcp_input.c#2 integrate .. //depot/projects/busdma/netinet/tcp_seq.h#2 integrate .. //depot/projects/busdma/netinet/tcp_syncache.c#2 integrate .. //depot/projects/busdma/netinet/tcp_timer.c#3 integrate .. //depot/projects/busdma/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/busdma/netinet/tcp_var.h#2 integrate .. //depot/projects/busdma/netinet/udp_usrreq.c#3 integrate .. //depot/projects/busdma/netinet6/in6.c#2 integrate .. //depot/projects/busdma/netinet6/in6_src.c#2 integrate .. //depot/projects/busdma/netinet6/ip6_forward.c#3 integrate .. //depot/projects/busdma/netinet6/ip6_fw.c#2 delete .. //depot/projects/busdma/netinet6/ip6_fw.h#2 delete .. //depot/projects/busdma/netinet6/ip6_input.c#2 integrate .. //depot/projects/busdma/netinet6/ip6_output.c#2 integrate .. //depot/projects/busdma/netinet6/nd6.c#2 integrate .. //depot/projects/busdma/netinet6/udp6_usrreq.c#2 integrate .. //depot/projects/busdma/netipsec/ipsec.c#2 integrate .. //depot/projects/busdma/netipsec/ipsec_input.c#2 integrate .. //depot/projects/busdma/netipsec/key.c#2 integrate .. //depot/projects/busdma/netipsec/xform_ah.c#2 integrate .. //depot/projects/busdma/netipsec/xform_esp.c#2 integrate .. //depot/projects/busdma/nfs4client/nfs4_dev.c#2 integrate .. //depot/projects/busdma/nfs4client/nfs4_vfsops.c#2 integrate .. //depot/projects/busdma/nfs4client/nfs4_vnops.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs.h#2 integrate .. //depot/projects/busdma/nfsclient/nfs_bio.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_nfsiod.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_node.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_socket.c#3 integrate .. //depot/projects/busdma/nfsclient/nfs_subs.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/busdma/nfsclient/nfsmount.h#2 integrate .. //depot/projects/busdma/nfsclient/nfsnode.h#2 integrate .. //depot/projects/busdma/nfsserver/nfs_serv.c#2 integrate .. //depot/projects/busdma/nfsserver/nfs_srvsubs.c#2 integrate .. //depot/projects/busdma/opencrypto/criov.c#2 integrate .. //depot/projects/busdma/opencrypto/crypto.c#2 integrate .. //depot/projects/busdma/opencrypto/cryptodev.c#2 integrate .. //depot/projects/busdma/opencrypto/cryptodev.h#2 integrate .. //depot/projects/busdma/opencrypto/cryptosoft.c#2 integrate .. //depot/projects/busdma/opencrypto/cryptosoft.h#2 integrate .. //depot/projects/busdma/opencrypto/xform.c#2 integrate .. //depot/projects/busdma/opencrypto/xform.h#2 integrate .. //depot/projects/busdma/pc98/cbus/fdc.c#3 integrate .. //depot/projects/busdma/pc98/cbus/olpt.c#2 integrate .. //depot/projects/busdma/pc98/cbus/sio.c#2 integrate .. //depot/projects/busdma/pc98/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/pc98/conf/GENERIC#3 integrate .. //depot/projects/busdma/pc98/conf/GENERIC.hints#2 integrate .. //depot/projects/busdma/pc98/conf/NOTES#3 integrate .. //depot/projects/busdma/pc98/include/pcvt_ioctl.h#2 delete .. //depot/projects/busdma/pc98/pc98/canbus.c#2 integrate .. //depot/projects/busdma/pc98/pc98/machdep.c#3 integrate .. //depot/projects/busdma/pci/agp.c#2 integrate .. //depot/projects/busdma/pci/agp_amd64.c#2 integrate .. //depot/projects/busdma/pci/agp_i810.c#2 integrate .. //depot/projects/busdma/pci/agp_sis.c#2 integrate .. //depot/projects/busdma/pci/amdpm.c#2 integrate .. //depot/projects/busdma/pci/amdsmb.c#2 integrate .. //depot/projects/busdma/pci/if_pcn.c#2 integrate .. //depot/projects/busdma/pci/if_pcnreg.h#2 integrate .. //depot/projects/busdma/pci/if_rlreg.h#2 integrate .. //depot/projects/busdma/pci/if_sfreg.h#2 integrate .. //depot/projects/busdma/pci/if_stereg.h#2 integrate .. //depot/projects/busdma/pci/if_tl.c#2 integrate .. //depot/projects/busdma/pci/if_tlreg.h#2 integrate .. //depot/projects/busdma/pci/if_vrreg.h#2 integrate .. //depot/projects/busdma/pci/if_wbreg.h#2 integrate .. //depot/projects/busdma/pci/ncr.c#2 integrate .. //depot/projects/busdma/pci/nfsmb.c#2 integrate .. //depot/projects/busdma/pci/viapm.c#2 integrate .. //depot/projects/busdma/posix4/ksched.c#2 integrate .. //depot/projects/busdma/posix4/p1003_1b.c#2 integrate .. //depot/projects/busdma/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/powerpc/conf/GENERIC#2 integrate .. //depot/projects/busdma/powerpc/powerpc/clock.c#3 integrate .. //depot/projects/busdma/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/busdma/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/mp_machdep.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/pmap_dispatch.c#2 integrate .. //depot/projects/busdma/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/busdma/security/audit/audit.c#2 integrate .. //depot/projects/busdma/security/audit/audit_arg.c#2 integrate .. //depot/projects/busdma/security/audit/audit_bsm.c#2 integrate .. //depot/projects/busdma/security/audit/audit_bsm_klib.c#2 integrate .. //depot/projects/busdma/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/busdma/security/audit/audit_ioctl.h#2 integrate .. //depot/projects/busdma/security/audit/audit_pipe.c#2 integrate .. //depot/projects/busdma/security/audit/audit_private.h#2 integrate .. //depot/projects/busdma/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/busdma/security/audit/audit_trigger.c#2 integrate .. //depot/projects/busdma/security/audit/audit_worker.c#2 integrate .. //depot/projects/busdma/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/busdma/sparc64/conf/GENERIC#2 integrate .. //depot/projects/busdma/sparc64/include/_bus.h#2 integrate .. //depot/projects/busdma/sparc64/include/bus.h#2 integrate .. //depot/projects/busdma/sparc64/include/pmap.h#2 integrate .. //depot/projects/busdma/sparc64/isa/isa.c#2 integrate .. //depot/projects/busdma/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/busdma/sparc64/sparc64/pmap.c#2 integrate .. //depot/projects/busdma/sparc64/sparc64/prof_machdep.c#2 integrate .. //depot/projects/busdma/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/busdma/sys/_timeval.h#2 integrate .. //depot/projects/busdma/sys/conf.h#2 integrate .. //depot/projects/busdma/sys/cons.h#2 integrate .. //depot/projects/busdma/sys/disklabel.h#2 integrate .. //depot/projects/busdma/sys/elf64.h#2 integrate .. //depot/projects/busdma/sys/elf_common.h#2 integrate .. //depot/projects/busdma/sys/file.h#2 integrate .. //depot/projects/busdma/sys/firmware.h#2 integrate .. //depot/projects/busdma/sys/kernel.h#2 integrate .. //depot/projects/busdma/sys/linker.h#2 integrate .. //depot/projects/busdma/sys/mutex.h#2 integrate .. //depot/projects/busdma/sys/param.h#2 integrate .. //depot/projects/busdma/sys/proc.h#2 integrate .. //depot/projects/busdma/sys/protosw.h#2 integrate .. //depot/projects/busdma/sys/queue.h#2 integrate .. //depot/projects/busdma/sys/rman.h#2 integrate .. //depot/projects/busdma/sys/sched.h#2 integrate .. //depot/projects/busdma/sys/signal.h#2 integrate .. //depot/projects/busdma/sys/socketvar.h#2 integrate .. //depot/projects/busdma/sys/sockio.h#2 integrate .. //depot/projects/busdma/sys/sx.h#2 integrate .. //depot/projects/busdma/sys/syscallsubr.h#2 integrate .. //depot/projects/busdma/sys/sysctl.h#2 integrate .. //depot/projects/busdma/sys/ucontext.h#2 integrate .. //depot/projects/busdma/sys/user.h#2 integrate .. //depot/projects/busdma/tools/fw_stub.awk#2 integrate .. //depot/projects/busdma/tools/vnode_if.awk#2 integrate .. //depot/projects/busdma/ufs/ffs/ffs_snapshot.c#3 integrate .. //depot/projects/busdma/ufs/ffs/ffs_softdep.c#3 integrate .. //depot/projects/busdma/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/busdma/ufs/ufs/dinode.h#2 integrate .. //depot/projects/busdma/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/busdma/vm/pmap.h#2 integrate .. //depot/projects/busdma/vm/uma_core.c#2 integrate .. //depot/projects/busdma/vm/vm_extern.h#2 integrate .. //depot/projects/busdma/vm/vm_fault.c#2 integrate .. //depot/projects/busdma/vm/vm_glue.c#2 integrate .. //depot/projects/busdma/vm/vm_map.c#2 integrate .. //depot/projects/busdma/vm/vm_map.h#2 integrate .. //depot/projects/busdma/vm/vm_meter.c#2 integrate .. //depot/projects/busdma/vm/vm_mmap.c#2 integrate .. //depot/projects/busdma/vm/vm_page.c#2 integrate Differences ... ==== //depot/projects/busdma/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.35 2006/03/17 18:54:34 ru Exp $ +# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ .include @@ -11,10 +11,10 @@ # Directories to include in cscope name file and TAGS. CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ - isofs kern libkern modules net netatalk netatm netgraph \ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 05:22:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 773F616A47C; Thu, 22 Jun 2006 05:22:28 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3806316A47A for ; Thu, 22 Jun 2006 05:22:28 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0225A44685 for ; Thu, 22 Jun 2006 05:22:28 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M5MRq1007239 for ; Thu, 22 Jun 2006 05:22:27 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M5MRMr007236 for perforce@freebsd.org; Thu, 22 Jun 2006 05:22:27 GMT (envelope-from jb@freebsd.org) Date: Thu, 22 Jun 2006 05:22:27 GMT Message-Id: <200606220522.k5M5MRMr007236@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 99797 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 05:22:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=99797 Change 99797 by jb@jb_freebsd2 on 2006/06/22 05:21:49 Remove the DTrace module loading from this architecture specific file. I've found a better (machine independent) place. Affected files ... .. //depot/projects/dtrace/src/sys/boot/i386/libi386/i386_module.c#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/boot/i386/libi386/i386_module.c#3 (text+ko) ==== @@ -64,31 +64,5 @@ printf("ACPI autoload failed - %s\n", strerror(error)); } - /* - * XXX This stuff should be in 4th too, but who can understand - * how to load a module from a menu option? The support.4th - * code loads modules before the menu. - */ - if (getenv("dtrace_load")) { - error = mod_load("cyclic", NULL, 0, NULL); - if (error != 0) - printf("cyclic autoload failed - %s\n", strerror(error)); - error = mod_load("dtrace", NULL, 0, NULL); - if (error != 0) - printf("dtrace autoload failed - %s\n", strerror(error)); - error = mod_load("profile", NULL, 0, NULL); - if (error != 0) - printf("profile autoload failed - %s\n", strerror(error)); - error = mod_load("systrace", NULL, 0, NULL); - if (error != 0) - printf("systrace autoload failed - %s\n", strerror(error)); - error = mod_load("fbt", NULL, 0, NULL); - if (error != 0) - printf("fbt autoload failed - %s\n", strerror(error)); - error = mod_load("sdt", NULL, 0, NULL); - if (error != 0) - printf("sdt autoload failed - %s\n", strerror(error)); - } - return(0); } From owner-p4-projects@FreeBSD.ORG Thu Jun 22 05:27:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D67416A47E; Thu, 22 Jun 2006 05:27:35 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0CE4F16A479 for ; Thu, 22 Jun 2006 05:27:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E3C14468D for ; Thu, 22 Jun 2006 05:27:34 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M5RYfK007437 for ; Thu, 22 Jun 2006 05:27:34 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M5RYgM007434 for perforce@freebsd.org; Thu, 22 Jun 2006 05:27:34 GMT (envelope-from jb@freebsd.org) Date: Thu, 22 Jun 2006 05:27:34 GMT Message-Id: <200606220527.k5M5RYgM007434@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 99798 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 05:27:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=99798 Change 99798 by jb@jb_freebsd2 on 2006/06/22 05:26:53 Load the DTrace modules if the dtrace_load environment variable is set. This still belongs in 4th because the DTrace providers should be readily customisable. I just don't know how to do that. When booting with DTrace enabled, load the anonymous enablings from '/boot/dtrace.dof' in lieu of the driver configuration file system that Solaris has. The DOF strings are likely to be longer than the 255 character maximum that FreeBSD's forth implementation supports, so it is easier to do it in C and re-allocate the input buffer size if a larger string is required. Once the DOF strings read, add them to the kernel environment from where the 'dtrace' module can access them in the usual getenv() way. Affected files ... .. //depot/projects/dtrace/src/sys/boot/common/boot.c#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/boot/common/boot.c#2 (text+ko) ==== @@ -52,6 +52,8 @@ static int command_boot(int argc, char *argv[]) { + int error; + int fd; struct preloaded_file *fp; /* @@ -102,6 +104,119 @@ if (archsw.arch_autoload() != 0) return(CMD_ERROR); + /* Check if DTrace is to be loaded prior to boot. */ + if (getenv("dtrace_load")) { + /* + * Load the DTrace modules. This would be better done + * in 4th so that extra providers can be added easily. + */ + error = mod_load("cyclic", NULL, 0, NULL); + if (error != 0) + printf("cyclic autoload failed - %s\n", strerror(error)); + error = mod_load("dtrace", NULL, 0, NULL); + if (error != 0) + printf("dtrace autoload failed - %s\n", strerror(error)); + error = mod_load("profile", NULL, 0, NULL); + if (error != 0) + printf("profile autoload failed - %s\n", strerror(error)); + error = mod_load("systrace", NULL, 0, NULL); + if (error != 0) + printf("systrace autoload failed - %s\n", strerror(error)); + error = mod_load("fbt", NULL, 0, NULL); + if (error != 0) + printf("fbt autoload failed - %s\n", strerror(error)); + error = mod_load("sdt", NULL, 0, NULL); + if (error != 0) + printf("sdt autoload failed - %s\n", strerror(error)); + + /* + * Open the DTrace DOF file if it exists. Don't worry if + * it doesn't. + */ + if ((fd = open("/boot/dtrace.dof", O_RDONLY)) >= 0) { + char *p; /* Temporary pointer. */ + char *p_buf; /* Ptr to the read buffer. */ + int n; /* Number of bytes in string. */ + size_t n_buf; /* Number of characters buffered. */ + size_t s_buf = 4096; /* Size of the read buffer. */ + + /* + * Allocate memory for the initial DOF buffer. This + * will be re-allocated if necessary. + */ + if ((p_buf = malloc(s_buf)) != NULL) { + /* + * Enter a loop to read each line in the DOF + * file and add it to the environment. + */ + do { + /* Start each line with an empty buffer. */ + n_buf = 0; + + /* + * Enter a loop to read the string in the + * current line, re-allocating the input + * buffer if it is too small. + */ + while ((n = fgetstr(p_buf + n_buf, s_buf - n_buf, + fd)) > 0 && n == s_buf - n_buf - 1 && + p_buf[s_buf - 2] != '\n') { + /* + * Update the number of characters + * buffered. + */ + n_buf += n; + + /* Double the buffer size. */ + s_buf *= 2; + + /* Re-allocate the buffer. */ + if ((p = realloc(p_buf, s_buf)) == NULL) { + /* + * Can't re-allocate memory, so + * just give up. + */ + n = 0; + n_buf = 0; + break; + } + + /* Use the newly re-allocated buffer. */ + p_buf = p; + } + + /* Update the number of characters buffered. */ + if (n > 0) + n_buf += n; + + /* + * If there are characters buffered, add the + * input line to the environment. + */ + if (n_buf > 0 && (p = strchr(p_buf, '=')) != NULL) { + /* Zero terminate the name. */ + *p = '\0'; + + /* Point to the value. */ + p++; + + /* Set the environment variable. */ + setenv(p_buf, p, 1); + } + + /* + * Keep looping until there are no more lines in + * the file. + */ + } while (n > 0 && n_buf != 0); + + free(p_buf); + } + + close(fd); + } + } + /* Call the exec handler from the loader matching the kernel */ file_formats[fp->f_loader]->l_exec(fp); return(CMD_ERROR); From owner-p4-projects@FreeBSD.ORG Thu Jun 22 05:38:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AAE6016A54C; Thu, 22 Jun 2006 05:38:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7DF4816A536 for ; Thu, 22 Jun 2006 05:38:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2B0F24462B for ; Thu, 22 Jun 2006 05:21:26 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M5LQxP007172 for ; Thu, 22 Jun 2006 05:21:26 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M5LP6L007169 for perforce@freebsd.org; Thu, 22 Jun 2006 05:21:25 GMT (envelope-from jb@freebsd.org) Date: Thu, 22 Jun 2006 05:21:25 GMT Message-Id: <200606220521.k5M5LP6L007169@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 99796 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 05:38:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=99796 Change 99796 by jb@jb_freebsd2 on 2006/06/22 05:20:42 FreeBSD doesn't have driver configuration files like Solaris does. Write the anonymous DOF data to '/boot/dtrace.dof' in the format of a kernel environment string with each DOF byte represented as a two hexadecimal ASCII character. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/cmd/dtrace/dtrace.c#6 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/cmd/dtrace/dtrace.c#6 (text) ==== @@ -100,6 +100,7 @@ static const char *g_ofile = NULL; static FILE *g_ofp; static dtrace_hdl_t *g_dtp; +#if defined(sun) static char *g_etcfile = "/etc/system"; static const char *g_etcbegin = "* vvvv Added by DTrace"; static const char *g_etcend = "* ^^^^ Added by DTrace"; @@ -114,6 +115,7 @@ "* chapter of the Solaris Dynamic Tracing Guide for details.", "*", NULL }; +#endif static int usage(FILE *fp) @@ -372,6 +374,7 @@ free(buf); } +#if defined(sun) static void etcsystem_prune(void) { @@ -482,6 +485,7 @@ error("added forceload directives to %s\n", g_ofile); } +#endif static void print_probe_info(const dtrace_probeinfo_t *p) @@ -611,12 +615,26 @@ p = (uchar_t *)dof; q = p + dof->dofh_loadsz; +#if defined(sun) oprintf("dof-data-%d=0x%x", n, *p++); while (p < q) oprintf(",0x%x", *p++); oprintf(";\n"); +#else + /* + * On FreeBSD, the DOF data is handled as a kernel environment (kenv) + * string. We use two hex characters per DOF byte. + */ + oprintf("dof-data-%d=%02x", n, *p++); + + while (p < q) + oprintf("%02x", *p++); + + oprintf("\n"); +#endif + dtrace_dof_destroy(g_dtp, dof); } @@ -1566,10 +1584,21 @@ case DMODE_ANON: if (g_ofile == NULL) +#if defined(sun) g_ofile = "/kernel/drv/dtrace.conf"; +#else + /* + * On FreeBSD, anonymous DOF data is written to + * the DTrace DOF file that the boot loader will + * read if booting with the DTrace option. + */ + g_ofile = "/boot/dtrace.dof"; +#endif dof_prune(g_ofile); /* strip out any old DOF directives */ +#if defined(sun) etcsystem_prune(); /* string out any forceload directives */ +#endif if (g_cmdc == 0) { dtrace_close(g_dtp); @@ -1600,8 +1629,10 @@ * that itself contains a #pragma D option quiet. */ error("saved anonymous enabling in %s\n", g_ofile); +#if defined(sun) etcsystem_add(); error("run update_drv(1M) or reboot to enable changes\n"); +#endif dtrace_close(g_dtp); return (g_status); From owner-p4-projects@FreeBSD.ORG Thu Jun 22 07:41:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6A12C16A47D; Thu, 22 Jun 2006 07:41:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 43E5016A47B for ; Thu, 22 Jun 2006 07:41:22 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2553944207 for ; Thu, 22 Jun 2006 07:41:20 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5M7fKMg023017 for ; Thu, 22 Jun 2006 07:41:20 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5M7fJWs023014 for perforce@freebsd.org; Thu, 22 Jun 2006 07:41:19 GMT (envelope-from ryanb@FreeBSD.org) Date: Thu, 22 Jun 2006 07:41:19 GMT Message-Id: <200606220741.k5M7fJWs023014@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 99801 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 07:41:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=99801 Change 99801 by ryanb@ryanb_yuki on 2006/06/22 07:40:26 Added support for the following ioctls, which are mostly wrappers around the current mixer API: - SNDCTL_DSP_{GET,SET}{REC,PLAY}VOL - SNDCTL_DSP_GET_RECSRC_NAMES - SNDCTL_DSP_{GET,SET}_RECSRC Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#6 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.c#5 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.h#4 edit .. //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#6 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#6 (text+ko) ==== @@ -407,6 +407,11 @@ struct snddev_info *d; int kill; int ret = 0, *arg_i = (int *)arg, tmp; +#ifdef OSSV4_EXPERIMENT + int xcmd; + + xcmd = 0; +#endif /* * this is an evil hack to allow broken apps to perform mixer ioctls @@ -1039,6 +1044,44 @@ case SNDCTL_AUDIOINFO: ret = dsp_oss_audioinfo(i_dev, (oss_audioinfo *)arg); break; + + /* + * The following four ioctls are simple wrappers around mixer_ioctl + * with no further processing. xcmd is short for "translated + * command". + */ + case SNDCTL_DSP_GETRECVOL: + if (xcmd == 0) + xcmd = SOUND_MIXER_READ_RECLEV; + /* FALLTHROUGH */ + case SNDCTL_DSP_SETRECVOL: + if (xcmd == 0) + xcmd = SOUND_MIXER_WRITE_RECLEV; + /* FALLTHROUGH */ + case SNDCTL_DSP_GETPLAYVOL: + if (xcmd == 0) + xcmd = SOUND_MIXER_READ_PCM; + /* FALLTHROUGH */ + case SNDCTL_DSP_SETPLAYVOL: + if (xcmd == 0) + xcmd = SOUND_MIXER_WRITE_PCM; + + if (d->mixer_dev != NULL) + ret = mixer_ioctl(d->mixer_dev, xcmd, arg, -1, td); + else + /** @todo verify that this is the correct error */ + ret = ENOTSUP; + break; + + case SNDCTL_DSP_GET_RECSRC_NAMES: + case SNDCTL_DSP_GET_RECSRC: + case SNDCTL_DSP_SET_RECSRC: + if (d->mixer_dev != NULL) + ret = mixer_ioctl(d->mixer_dev, cmd, arg, -1, td); + else + /** @todo verify error correctness */ + ret = EINVAL; + break; #endif /* !OSSV4_EXPERIMENT */ case SNDCTL_DSP_MAPINBUF: case SNDCTL_DSP_MAPOUTBUF: ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.c#5 (text+ko) ==== @@ -49,6 +49,9 @@ u_int16_t level[32]; char name[MIXER_NAMELEN]; struct mtx *lock; +#ifdef OSSV4_EXPERIMENT + oss_mixer_enuminfo enuminfo; +#endif }; static u_int16_t snd_mixerdefaults[SOUND_MIXER_NRDEVICES] = { @@ -188,6 +191,85 @@ return mixer->recsrc; } +#ifdef OSSV4_EXPERIMENT +/** + * @brief Retrieve the route number of the current recording device + * + * OSSv4 assigns routing numbers to recording devices, unlike the previous + * API which relied on a fixed table of device numbers and names. This + * function returns the routing number of the device currently selected + * for recording. + * + * For now, this function is kind of a goofy compatibility stub atop the + * existing sound system. (For example, in theory, the old sound system + * allows multiple recording devices to be specified via a bitmask.) + * + * @param m mixer context container thing + * + * @retval 0 success + * @retval EIDRM no recording device found (generally not possible) + * @todo Ask about error code + */ +static int +mixer_get_recroute(struct snd_mixer *m, int *route) +{ + int i, cnt; + + cnt = 0; + + for (i = 0; i < SOUND_MIXER_NRDEVICES; i++) { + /** @todo can user set a multi-device mask? (== or &?) */ + if ((1 << i) == m->recsrc) + break; + if ((1 << i) & m->recdevs) + ++cnt; + } + + if (i == SOUND_MIXER_NRDEVICES) + return EIDRM; + + *route = cnt; + return 0; +} + +/** + * @brief Select a device for recording + * + * This function sets a recording source based on a recording device's + * routing number. Said number is translated to an old school recdev + * mask and passed over mixer_setrecsrc. + * + * @param m mixer context container thing + * + * @retval 0 success(?) + * @retval EINVAL User specified an invalid device number + * @retval otherwise error from mixer_setrecsrc + */ +static int +mixer_set_recroute(struct snd_mixer *m, int route) +{ + int i, cnt, ret; + + ret = 0; + cnt = 0; + + for (i = 0; i < SOUND_MIXER_NRDEVICES; i++) { + if ((1 << i) & m->recdevs) { + if (route == cnt) + break; + ++cnt; + } + } + + if (i == SOUND_MIXER_NRDEVICES) + ret = EINVAL; + else + ret = mixer_setrecsrc(m, (1 << i)); + + return ret; +} +#endif /* !OSSV4_EXPERIMENT */ + void mix_setdevs(struct snd_mixer *m, u_int32_t v) { @@ -197,9 +279,70 @@ m->devs = v; } +/** + * @brief Record mask of available recording devices + * + * Calling functions are responsible for defining the mask of available + * recording devices. This function records that value in a structure + * used by the rest of the mixer code. + * + * This function also populates a structure used by the SNDCTL_DSP_*RECSRC* + * family of ioctls that are part of OSSV4. All recording device labels + * are concatenated in ascending order corresponding to their routing + * numbers. (Ex: a system might have 0 => 'vol', 1 => 'cd', 2 => 'line', + * etc.) For now, these labels are just the standard recording device + * names (cd, line1, etc.), but will eventually be fully dynamic and user + * controlled. + * + * @param m mixer device context container thing + * @param v mask of recording devices + */ void mix_setrecdevs(struct snd_mixer *m, u_int32_t v) { +#ifdef OSSV4_EXPERIMENT + oss_mixer_enuminfo *ei; + char *loc; + int i, nvalues, nwrote, nleft, ncopied; + + ei = &m->enuminfo; + + nvalues = 0; + nwrote = 0; + nleft = sizeof(ei->strings); + loc = ei->strings; + + for (i = 0; i < SOUND_MIXER_NRDEVICES; i++) { + if ((1 << i) & v) { + ei->strindex[nvalues] = nwrote; + ncopied = strlcpy(loc, snd_mixernames[i], nleft) + 1; + /* strlcpy retval doesn't include terminator */ + + nwrote += ncopied; + nleft -= ncopied; + nvalues++; + + /* + * XXX I don't think this should ever be possible. + * Even with a move to dynamic device/channel names, + * each label is limited to ~16 characters, so that'd + * take a LOT to fill this buffer. panic()? + */ + if ((nleft <= 0) || (nvalues >= OSS_ENUM_MAXVALUE)) { + printf("mix_setrecdevs: enuminfo too small"); + break; + } + + loc = &ei->strings[nwrote]; + } + } + + /* + * NB: The SNDCTL_DSP_GET_RECSRC_NAMES ioctl ignores the dev + * and ctrl fields. + */ + ei->nvalues = nvalues; +#endif /* !OSSV4_EXPERIMENT */ m->recdevs = v; } @@ -528,19 +671,34 @@ snd_mtxunlock(m->lock); return (v != -1)? 0 : ENXIO; } + + ret = 0; + + switch (cmd) { #ifdef OSSV4_EXPERIMENT - if (cmd == SNDCTL_SYSINFO) { + /** @todo Double check return values, error codes. */ + case SNDCTL_SYSINFO: sound_oss_sysinfo((oss_sysinfo *)arg); - snd_mtxunlock(m->lock); - return 0; - } else if (cmd == SNDCTL_AUDIOINFO) { + break; + case SNDCTL_AUDIOINFO: ret = dsp_oss_audioinfo(i_dev, (oss_audioinfo *)arg); - snd_mtxunlock(m->lock); - return ret; + break; + case SNDCTL_DSP_GET_RECSRC_NAMES: + bcopy((void *)&m->enuminfo, arg, sizeof(oss_mixer_enuminfo)); + break; + case SNDCTL_DSP_GET_RECSRC: + ret = mixer_get_recroute(m, arg_i); + break; + case SNDCTL_DSP_SET_RECSRC: + ret = mixer_set_recroute(m, *arg_i); + break; +#endif /* !OSSV4_EXPERIMENT */ + default: + ret = ENXIO; } -#endif /* !OSSV4_EXPERIMENT */ + snd_mtxunlock(m->lock); - return ENXIO; + return ret; } #ifdef USING_DEVFS ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.h#4 (text+ko) ==== @@ -49,6 +49,11 @@ * this is a kludge to allow hiding of the struct snd_mixer definition * 512 should be enough for all architectures */ -#define MIXER_SIZE (512 + sizeof(struct kobj)) +#ifdef OSSV4_EXPERIMENT +# define MIXER_SIZE (512 + sizeof(struct kobj) + \ + sizeof(oss_mixer_enuminfo)) +#else +# define MIXER_SIZE (512 + sizeof(struct kobj)) +#endif #define MIXER_DECLARE(name) DEFINE_CLASS(name, name ## _methods, MIXER_SIZE) ==== //depot/projects/soc2006/rbeasley_sound/sys/sys/soundcard.h#6 (text+ko) ==== @@ -1471,6 +1471,38 @@ typedef char oss_label_t[OSS_LABEL_SIZE]; typedef char oss_devnode_t[OSS_DEVNODE_SIZE]; +typedef struct audio_errinfo +{ + int play_underruns; + int rec_overruns; + unsigned int play_ptradjust; + unsigned int rec_ptradjust; + int play_errorcount; + int rec_errorcount; + int play_lasterror; + int rec_lasterror; + long play_errorparm; + long rec_errorparm; + int filler[16]; +} audio_errinfo; + +#define SNDCTL_DSP_GETPLAYVOL _IOR ('P', 24, int) +#define SNDCTL_DSP_SETPLAYVOL _IOWR('P', 24, int) +#define SNDCTL_DSP_GETERROR _IOR ('P', 25, audio_errinfo) +/* + **************************************************************************** + * Interface for selecting recording sources and playback output routings. + */ +#define SNDCTL_DSP_GET_RECSRC_NAMES _IOR ('P', 37, oss_mixer_enuminfo) +#define SNDCTL_DSP_GET_RECSRC _IOR ('P', 38, int) +#define SNDCTL_DSP_SET_RECSRC _IOWR('P', 38, int) + +#define SNDCTL_DSP_GET_PLAYTGT_NAMES _IOR ('P', 39, oss_mixer_enuminfo) +#define SNDCTL_DSP_GET_PLAYTGT _IOR ('P', 40, int) +#define SNDCTL_DSP_SET_PLAYTGT _IOWR('P', 40, int) +#define SNDCTL_DSP_GETRECVOL _IOR ('P', 41, int) +#define SNDCTL_DSP_SETRECVOL _IOWR('P', 41, int) + /** * @brief Argument for SNDCTL_SYSINFO ioctl. * @@ -1503,6 +1535,26 @@ #define SNDCTL_SYSINFO _IOR ('X', 1, oss_sysinfo) #define OSS_SYSINFO SNDCTL_SYSINFO /* Old name */ +/* + * Few more "globally" available ioctl calls. + */ +#define SNDCTL_SETSONG _IOW ('Y', 2, oss_longname_t) +#define SNDCTL_GETSONG _IOR ('Y', 2, oss_longname_t) +#define SNDCTL_SETNAME _IOW ('Y', 3, oss_longname_t) +#define SNDCTL_SETLABEL _IOW ('Y', 4, oss_label_t) +#define SNDCTL_GETLABEL _IOR ('Y', 4, oss_label_t) + +#define OSS_ENUM_MAXVALUE 255 +typedef struct oss_mixer_enuminfo +{ + int dev; + int ctrl; + int nvalues; + int version; /* Read the manual */ + short strindex[OSS_ENUM_MAXVALUE]; + char strings[3000]; +} oss_mixer_enuminfo; + #define OPEN_READ PCM_ENABLE_INPUT #define OPEN_WRITE PCM_ENABLE_OUTPUT #define OPEN_READWRITE (OPEN_READ|OPEN_WRITE) From owner-p4-projects@FreeBSD.ORG Thu Jun 22 09:53:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E05BF16A492; Thu, 22 Jun 2006 09:53:45 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 87E0F16A47A; Thu, 22 Jun 2006 09:53:45 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (eva.fit.vutbr.cz [147.229.10.14]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F0F2441CA; Thu, 22 Jun 2006 09:53:04 +0000 (GMT) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (localhost [127.0.0.1]) by eva.fit.vutbr.cz (envelope-from xdivac02@eva.fit.vutbr.cz) (8.13.7/8.13.7) with ESMTP id k5M9qw4U081044 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Thu, 22 Jun 2006 11:52:58 +0200 (CEST) Received: (from xdivac02@localhost) by eva.fit.vutbr.cz (8.13.7/8.13.3/Submit) id k5M9qwJc081043; Thu, 22 Jun 2006 11:52:58 +0200 (CEST) Date: Thu, 22 Jun 2006 11:52:58 +0200 From: Divacky Roman To: John Baldwin Message-ID: <20060622095257.GA79667@stud.fit.vutbr.cz> References: <200606170857.k5H8vYVk017130@repoman.freebsd.org> <200606200916.32572.jhb@freebsd.org> <20060620140241.GA15008@stud.fit.vutbr.cz> <200606201031.55584.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200606201031.55584.jhb@freebsd.org> User-Agent: Mutt/1.4.2i X-Scanned-By: MIMEDefang 2.54 on 147.229.10.14 Cc: Roman Divacky , Perforce Change Reviews Subject: Re: PERFORCE change 99406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 09:53:46 -0000 On Tue, Jun 20, 2006 at 10:31:55AM -0400, John Baldwin wrote: > On Tuesday 20 June 2006 10:02, Divacky Roman wrote: > > On Tue, Jun 20, 2006 at 09:16:32AM -0400, John Baldwin wrote: > > > On Tuesday 20 June 2006 05:18, Divacky Roman wrote: > > > > On Mon, Jun 19, 2006 at 10:02:25AM -0400, John Baldwin wrote: > > > > > On Saturday 17 June 2006 04:57, Roman Divacky wrote: > > > > > > http://perforce.freebsd.org/chv.cgi?CH=99406 > > > > > > > > > > > > Change 99406 by rdivacky@rdivacky_witten on 2006/06/17 08:56:59 > > > > I'll back it out completely > > Well, you could still make it work if you wanted to by making > the list of ELF-brands virtualizable and using that to > handle this. maybe in future... I have the patches so its not lost.. now I want to focus on something else From owner-p4-projects@FreeBSD.ORG Thu Jun 22 13:06:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E51816A47B; Thu, 22 Jun 2006 13:06:08 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D8B1C16A479 for ; Thu, 22 Jun 2006 13:06:07 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 60F8F43D8B for ; Thu, 22 Jun 2006 13:06:03 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MD63B0064407 for ; Thu, 22 Jun 2006 13:06:03 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MD635X064404 for perforce@freebsd.org; Thu, 22 Jun 2006 13:06:03 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 22 Jun 2006 13:06:03 GMT Message-Id: <200606221306.k5MD635X064404@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99805 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 13:06:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=99805 Change 99805 by gabor@spitfire on 2006/06/22 13:05:50 Try to get OSVERSION from userland if possible, since userland has more impact on the ports as kernel does and this approach also fixes issues when we have a kernel and a jail with different OSVERSIONs and issues with DESTDIR. If getting OSVERSION from userland is impossible it is still got from the kernel. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#4 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#4 (text+ko) ==== @@ -1137,13 +1137,18 @@ OSREL!= ${UNAME} -r | ${SED} -e 's/[-(].*//' .endif -### FIXME: OSVERSION in DESTDIR and in jail - # Get __FreeBSD_version .if !defined(OSVERSION) -OSVERSION!= ${SYSCTL} -n kern.osreldate +.if exists(${DESTDIR}/usr/include/sys/param.h) +OSVERSION!= ${AWK} '/^\#define __FreeBSD_version/ {print $$3}' < ${DESTDIR}/usr/include/sys/param.h +.elif exists(${DESTDIR}/usr/src/sys/sys/param.h) +OSVERSION!= ${AWK} '/^\#define __FreeBSD_version/ {print $$3}' < ${DESTDIR}/usr/src/sys/sys/param.h +.else +OSVERSION!= /sbin/sysctl -n kern.osreldate +.endif .endif + # Get the object format. .if !defined(PORTOBJFORMAT) PORTOBJFORMAT!= ${TEST} -x /usr/bin/objformat && /usr/bin/objformat || ${ECHO_CMD} aout From owner-p4-projects@FreeBSD.ORG Thu Jun 22 13:58:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0699416A585; Thu, 22 Jun 2006 13:58:34 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BEA1216A581 for ; Thu, 22 Jun 2006 13:58:33 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FF8B44464 for ; Thu, 22 Jun 2006 13:34:42 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MDYgQ8065834 for ; Thu, 22 Jun 2006 13:34:42 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MDYgwM065831 for perforce@freebsd.org; Thu, 22 Jun 2006 13:34:42 GMT (envelope-from bushman@freebsd.org) Date: Thu, 22 Jun 2006 13:34:42 GMT Message-Id: <200606221334.k5MDYgwM065831@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99810 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 13:58:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=99810 Change 99810 by bushman@bushman_nss_ldap_cached on 2006/06/22 13:33:56 IFC Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.d/abi#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.d/ldconfig#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.subr#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/stdlib/malloc.c#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/sys/mincore.2#2 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.c#3 integrate Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.d/abi#2 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/abi,v 1.8 2006/02/19 08:18:48 dougb Exp $ +# $FreeBSD: src/etc/rc.d/abi,v 1.9 2006/06/21 09:53:25 yar Exp $ # # PROVIDE: abi @@ -16,17 +16,15 @@ sysv_start() { echo -n ' sysvipc' - kldload sysvmsg >/dev/null 2>&1 - kldload sysvsem >/dev/null 2>&1 - kldload sysvshm >/dev/null 2>&1 + load_kld sysvmsg + load_kld sysvsem + load_kld sysvshm } linux_start() { echo -n ' linux' - if ! kldstat -v | grep -E 'linux(aout|elf)' > /dev/null; then - kldload linux > /dev/null 2>&1 - fi + load_kld -e 'linux(aout|elf)' linux if [ -x /compat/linux/sbin/ldconfigDisabled ]; then _tmpdir=`mktemp -d -t linux-ldconfig` /compat/linux/sbin/ldconfig -C ${_tmpdir}/ld.so.cache @@ -40,7 +38,7 @@ svr4_start() { echo -n ' svr4' - kldload svr4 > /dev/null 2>&1 + load_kld -m svr4elf svr4 } abi_prestart() ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.d/ldconfig#2 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: ldconfig,v 1.5 2002/03/22 04:33:58 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/ldconfig,v 1.15 2006/01/08 10:15:30 dougb Exp $ +# $FreeBSD: src/etc/rc.d/ldconfig,v 1.16 2006/06/21 10:22:44 flz Exp $ # # PROVIDE: ldconfig @@ -17,6 +17,8 @@ ldconfig_start() { + local _files + _ins= ldconfig=${ldconfig_command} checkyesno ldconfig_insecure && _ins="-i" @@ -24,7 +26,10 @@ _LDC="/lib /usr/lib" for i in ${ldconfig_local_dirs}; do if [ -d "${i}" ]; then - ldconfig_paths="${ldconfig_paths} `find ${i} -type f`" + _files=`find ${i} -type f` + if [ -n "${_files}" ]; then + ldconfig_paths="${ldconfig_paths} `cat ${_files} | sort -u`" + fi fi done for i in ${ldconfig_paths} /etc/ld-elf.so.conf; do @@ -39,7 +44,10 @@ amd64) for i in ${ldconfig_local32_dirs}; do if [ -d "${i}" ]; then - ldconfig32_paths="${ldconfig32_paths} `find ${i} -type f`" + _files=`find ${i} -type f` + if [ -n "${_files}" ]; then + ldconfig32_paths="${ldconfig32_paths} `cat ${_files} | sort -u`" + fi fi done echo '32-bit compatibility ldconfig path:' ${ldconfig32_paths} ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.subr#2 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: rc.subr,v 1.66 2006/04/01 10:05:50 he Exp $ -# $FreeBSD: src/etc/rc.subr,v 1.58 2006/05/18 16:04:56 flz Exp $ +# $FreeBSD: src/etc/rc.subr,v 1.59 2006/06/21 09:42:55 yar Exp $ # # Copyright (c) 1997-2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -1356,6 +1356,45 @@ /sbin/mdmfs $flags -s $1 md $2 } +# Code common to scripts that need to load a kernel module +# if it isn't in the kernel yet. Syntax: +# load_kld [-e regexp] [-m modname] filename +# where -e or -m chooses the way to check if the module +# is already loaded: +# regexp is egrep'd in the output from `kldstat -v', +# modname is passed to `kldstat -m'. +# The default way is as though `-m filename' were specified. +load_kld() +{ + local _loaded _mod _opt _re + + while getopts "e:m:" _opt; do + case "$_opt" in + e) _re="$OPTARG" ;; + m) _mod="$OPTARG" ;; + esac + done + shift $(($OPTIND - 1)) + _mod=${_mod:-$1} + _loaded=false + if [ -n "$_re" ]; then + if kldstat -v | egrep -q -e "$_re"; then + _loaded=true + fi + else + if kldstat -q -m "$_mod"; then + _loaded=true + fi + fi + if ! $_loaded; then + if ! kldload "$1"; then + warn "Unable to load kernel module $1" + return 1 + fi + fi + return 0 +} + # ltr str src dst # Change every $src in $str to $dst. # Useful when /usr is not yet mounted and we cannot use tr(1), sed(1) nor ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/stdlib/malloc.c#2 (text+ko) ==== @@ -185,7 +185,7 @@ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.126 2006/05/10 00:07:45 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.127 2006/06/20 20:38:25 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -1318,6 +1318,7 @@ chunk_dealloc(void *chunk, size_t size) { size_t offset; + chunk_node_t key; chunk_node_t *node; assert(chunk != NULL); @@ -1364,13 +1365,21 @@ * if memory usage increases later on. */ for (offset = 0; offset < size; offset += chunk_size) { - node = base_chunk_node_alloc(); - if (node == NULL) - break; + /* + * It is possible for chunk to overlap existing entries in + * old_chunks if it is a huge allocation, so take care to not + * leak tree nodes. + */ + key.chunk = (void *)((uintptr_t)chunk + (uintptr_t)offset); + if (RB_FIND(chunk_tree_s, &old_chunks, &key) == NULL) { + node = base_chunk_node_alloc(); + if (node == NULL) + break; - node->chunk = (void *)((uintptr_t)chunk + (uintptr_t)offset); - node->size = chunk_size; - RB_INSERT(chunk_tree_s, &old_chunks, node); + node->chunk = key.chunk; + node->size = chunk_size; + RB_INSERT(chunk_tree_s, &old_chunks, node); + } } #ifdef USE_BRK @@ -1621,6 +1630,9 @@ QUANTUM_CASE(31) QUANTUM_CASE(32) +#if (QUANTUM_2POW_MIN <= 3) + POW2_CASE(9) +#endif POW2_CASE(10) POW2_CASE(11) POW2_CASE(12) /* Handle up to 8 kB pages. */ @@ -2548,7 +2560,7 @@ return (NULL); } - /* Insert node into chunks. */ + /* Insert node into huge. */ node->chunk = ret; node->size = csize; @@ -2736,7 +2748,7 @@ } } - /* Insert node into chunks. */ + /* Insert node into huge. */ node->chunk = ret; node->size = chunksize; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/sys/mincore.2#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)mincore.2 8.1 (Berkeley) 6/9/93 -.\" $FreeBSD: src/lib/libc/sys/mincore.2,v 1.24 2003/09/08 19:57:16 ru Exp $ +.\" $FreeBSD: src/lib/libc/sys/mincore.2,v 1.25 2006/06/21 12:59:05 kib Exp $ .\" .Dd January 17, 2003 .Dt MINCORE 2 @@ -92,12 +92,12 @@ .Fn mincore system call will fail if: .Bl -tag -width Er -.It Bq Er EINVAL +.It Bq Er ENOMEM The virtual address range specified by the .Fa addr and .Fa len -arguments is not valid. +arguments is not fully mapped. .It Bq Er EFAULT The .Fa vec ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/asf/asf.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ /* $Id: asf.c,v 1.4 2003/05/04 02:55:20 grog Exp grog $ */ #include -__FBSDID("$FreeBSD: src/usr.sbin/asf/asf.c,v 1.9 2006/06/18 11:14:40 yar Exp $"); +__FBSDID("$FreeBSD: src/usr.sbin/asf/asf.c,v 1.10 2006/06/19 17:12:25 yar Exp $"); #include #include @@ -266,7 +266,7 @@ "\t-V\tuse kvm(3) to get the list of modules\n" "\t-X\tappend suffix to list of possible module file name suffixes\n" "\t-x\tclear list of possible module file name suffixes\n", - myname, strlen(myname), ""); + myname, (int)strlen(myname), ""); exit(2); } From owner-p4-projects@FreeBSD.ORG Thu Jun 22 13:59:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 53F8A16A715; Thu, 22 Jun 2006 13:59:10 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1E5E416A6DA for ; Thu, 22 Jun 2006 13:59:10 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DE1A04403E for ; Thu, 22 Jun 2006 13:26:30 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MDQUJF065453 for ; Thu, 22 Jun 2006 13:26:30 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MDQUe1065450 for perforce@freebsd.org; Thu, 22 Jun 2006 13:26:30 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 22 Jun 2006 13:26:30 GMT Message-Id: <200606221326.k5MDQUe1065450@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99808 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 13:59:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=99808 Change 99808 by gabor@spitfire on 2006/06/22 13:26:18 Whitespace fixes. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#5 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#5 (text+ko) ==== @@ -1140,15 +1140,14 @@ # Get __FreeBSD_version .if !defined(OSVERSION) .if exists(${DESTDIR}/usr/include/sys/param.h) -OSVERSION!= ${AWK} '/^\#define __FreeBSD_version/ {print $$3}' < ${DESTDIR}/usr/include/sys/param.h +OSVERSION!= ${AWK} '/^\#define __FreeBSD_version/ {print $$3}' < ${DESTDIR}/usr/include/sys/param.h .elif exists(${DESTDIR}/usr/src/sys/sys/param.h) -OSVERSION!= ${AWK} '/^\#define __FreeBSD_version/ {print $$3}' < ${DESTDIR}/usr/src/sys/sys/param.h +OSVERSION!= ${AWK} '/^\#define __FreeBSD_version/ {print $$3}' < ${DESTDIR}/usr/src/sys/sys/param.h .else -OSVERSION!= /sbin/sysctl -n kern.osreldate +OSVERSION!= /sbin/sysctl -n kern.osreldate .endif .endif - # Get the object format. .if !defined(PORTOBJFORMAT) PORTOBJFORMAT!= ${TEST} -x /usr/bin/objformat && /usr/bin/objformat || ${ECHO_CMD} aout From owner-p4-projects@FreeBSD.ORG Thu Jun 22 13:59:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3136116A7A5; Thu, 22 Jun 2006 13:59:25 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B71D216A92F for ; Thu, 22 Jun 2006 13:59:24 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 72D2A444CC for ; Thu, 22 Jun 2006 13:36:45 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MDajYp065966 for ; Thu, 22 Jun 2006 13:36:45 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MDajxd065963 for perforce@freebsd.org; Thu, 22 Jun 2006 13:36:45 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 22 Jun 2006 13:36:45 GMT Message-Id: <200606221336.k5MDajxd065963@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99811 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 13:59:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=99811 Change 99811 by gabor@spitfire on 2006/06/22 13:36:25 Move the comments for IA32_BINARY_PORT as linimon suggested. PR: 98105 Submitted by: linimon Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#6 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#6 (text+ko) ==== @@ -215,10 +215,8 @@ # NOT_FOR_ARCHS_REASON # NOT_FOR_ARCHS_REASON_${ARCH} # - Reason why it's not for ${NOT_FOR_ARCHS}s -# -# IA32_BINARY_PORT - It should be set instead of ONLY_FOR_ARCHS if -# the given port fetches and installs compiled -# i386 binaries. +# IA32_BINARY_PORT - Set this instead of ONLY_FOR_ARCHS if the given port +# fetches and installs compiled i386 binaries. # # Dependency checking. Use these if your port requires another port # not in the list below. (Default: empty.) From owner-p4-projects@FreeBSD.ORG Thu Jun 22 13:59:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C9E4116AA32; Thu, 22 Jun 2006 13:59:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7D5DA16A9C1 for ; Thu, 22 Jun 2006 13:59:31 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 666C9442B4 for ; Thu, 22 Jun 2006 13:29:35 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MDTZ9x065571 for ; Thu, 22 Jun 2006 13:29:35 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MDTY45065568 for perforce@freebsd.org; Thu, 22 Jun 2006 13:29:34 GMT (envelope-from bushman@freebsd.org) Date: Thu, 22 Jun 2006 13:29:34 GMT Message-Id: <200606221329.k5MDTY45065568@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99809 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 13:59:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=99809 Change 99809 by bushman@bushman_nss_ldap_cached on 2006/06/22 13:29:29 Cached has now agents (i.e. "perform-actual-lookup" option support) for all implemented nsswitch-databases, except shells. Shells database implementation should be reworked (nss-modules share the same static variables there) to allow this. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/Makefile.inc#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/rpc.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/rpc.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cached.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/debug.h#3 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.c#3 (text) ==== @@ -29,8 +29,10 @@ __FBSDID("$FreeBSD: src/usr.sbin/cached/agent.c,v 1.1 2006/04/28 12:03:37 ume Exp $"); #include +#include #include #include +#include #include "agent.h" #include "debug.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.h#3 (text) ==== @@ -29,9 +29,6 @@ #ifndef __CACHED_AGENT_H__ #define __CACHED_AGENT_H__ -#include -#include - extern int __isthreaded; /* TLS handling routine obtained from libc/include/nss_tls.h */ ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/Makefile.inc#3 (text) ==== @@ -1,3 +1,3 @@ # $FreeBSD: src/usr.sbin/cached/agents/Makefile.inc,v 1.1 2006/04/28 12:03:38 ume Exp $ -SRCS += passwd.c group.c services.c hosts.c +SRCS += group.c hosts.c net.c passwd.c proto.c rpc.c services.c ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.c#3 (text) ==== @@ -40,6 +40,7 @@ #include #include #include +#include "../agent.h" #include "../debug.h" #include "group.h" @@ -223,9 +224,8 @@ if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { - free(name); - TRACE_OUT(group_lookup_func); - return (NS_UNAVAIL); + result = NS_UNAVAIL; + break; } } } while ((result == NS_RETURN) && (error == ERANGE)); @@ -246,8 +246,8 @@ if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { - TRACE_OUT(group_lookup_func); - return (NS_UNAVAIL); + result = NS_UNAVAIL; + break; } } } while ((result == NS_RETURN) && (error == ERANGE)); @@ -319,6 +319,7 @@ group_mp_destroy_func(void *mdata) { TRACE_IN(group_mp_destroy_func); + endgrent(); TRACE_OUT(group_mp_destroy_func); } ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.h#3 (text) ==== @@ -26,7 +26,5 @@ * $FreeBSD: src/usr.sbin/cached/agents/group.h,v 1.1 2006/04/28 12:03:38 ume Exp $ */ -#include "../agent.h" - extern struct agent *init_group_agent(); extern struct agent *init_group_mp_agent(); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.c#2 (text+ko) ==== @@ -28,7 +28,6 @@ #include __FBSDID("$FreeBSD$"); - #include #include #include @@ -46,6 +45,7 @@ #include #include #include +#include "../agent.h" #include "../debug.h" #include "hosts.h" @@ -61,7 +61,17 @@ AGENT_DECLARE_BUFFER_TLS_HANDLING(hostent); +#ifndef _ALIGNBYTES +#define _ALIGNBYTES ALIGNBYTES +#endif +#ifndef _ALIGN +#define _ALIGN(x) ALIGN(x) +#endif + +#define GETADDRINFO_OP_ID 0 +#define GETHOSTBY_OP_ID 1 + static int hostent_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, void *cache_mdata) @@ -236,7 +246,7 @@ socklen_t len; int type; struct addrinfo hints, *ai_retval; - int error, result, op_id; + int error, h_error, result, op_id; size_t size; TRACE_IN(hosts_lookup_func); @@ -245,12 +255,12 @@ statp = __res_state(); if (statp == NULL) { - TRACE_OUT(passwd_lookup_func); + TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); } if (key_size < sizeof(res_options) + sizeof(int)) { - TRACE_OUT(passwd_lookup_func); + TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); } @@ -267,7 +277,7 @@ str = NULL; switch (op_id) { - case 0: /* getaddrinfo() */ + case GETADDRINFO_OP_ID: /* getaddrinfo() */ memset(&hints, 0, sizeof(struct addrinfo)); if (key_size < sizeof(int) * 4) { TRACE_OUT(hosts_lookup_func); @@ -298,8 +308,8 @@ old_options = statp->options; statp->options |= res_options; - result = nsdispatch(&ai_retval, emptydtab, NSDB_HOSTS, "getaddrinfo", - defaultsrc, str, &hints); + result = nsdispatch(&ai_retval, emptydtab, NSDB_HOSTS, + "getaddrinfo", defaultsrc, str, &hints); if (result == NS_SUCCESS) result = agent_marshal_results(out_buffer, out_size, @@ -308,7 +318,7 @@ statp->options = old_options; break; - case 1: /* gethostby**() */ + case GETHOSTBY_OP_ID: /* gethostby**() */ if (key_size < sizeof(enum nss_lookup_type) + sizeof(int)) { TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); @@ -318,12 +328,12 @@ key += sizeof(enum nss_lookup_type); key_size -= sizeof(enum nss_lookup_type); + memcpy(&type, key, sizeof(int)); + key += sizeof(int); + key_size -= sizeof(int); + switch (lookup_type) { - case nss_lt_name: - memcpy(&type, key, sizeof(int)); - key += sizeof(int); - key_size -= sizeof(int); - + case nss_lt_name: size = key_size + 1; str = (char *)malloc(size); assert(str != NULL); @@ -331,10 +341,6 @@ memcpy(str, key, key_size); break; case nss_lt_id: - memcpy(&type, key, sizeof(int)); - key += sizeof(int); - key_size -= sizeof(int); - memcpy(&len, key, sizeof(socklen_t)); key += sizeof(socklen_t); key_size -= sizeof(socklen_t); @@ -363,48 +369,52 @@ switch (lookup_type) { case nss_lt_name: do { - result = nsdispatch(&h_retval, emptydtab, NSDB_HOSTS, - "gethostbyname2_r", defaultsrc, str, type, - &he, h_st->buffer, h_st->bufsize, &error); + result = nsdispatch(&h_retval, emptydtab, + NSDB_HOSTS, "gethostbyname2_r", + defaultsrc, str, type, + &he, h_st->buffer, h_st->bufsize, + &error, &h_error); - if ((result == NS_RETURN) && (error == ERANGE)) { - AGENT_BUFFER_TLS_HANDLING_RESIZE(h_st); - if (AGENT_BUFFER_TLS_HANDLING_CHECK(h_st) != 0) { - free(str); - statp->options = old_options; - TRACE_OUT(hosts_lookup_func); - return (NS_UNAVAIL); - } + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(h_st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(h_st) != 0) { + free(str); + statp->options = old_options; + TRACE_OUT(hosts_lookup_func); + return (NS_UNAVAIL); + } } } while ((result == NS_RETURN) && (error == ERANGE)); if (result == NS_SUCCESS) - result = agent_marshal_results(out_buffer, out_size, - hostent_marshal_func, (void *)nss_lt_name, - &h_retval, str, type, &he, - h_st->buffer, h_st->bufsize, &error); + result = agent_marshal_results(out_buffer, out_size, + hostent_marshal_func, (void *)nss_lt_name, + &h_retval, str, type, &he, + h_st->buffer, h_st->bufsize, + &error, &h_error); break; case nss_lt_all: do { - result = nsdispatch(&h_retval, emptydtab, NSDB_HOSTS, - "gethostbyaddr_r", defaultsrc, (void *)addr, len, type, - &he, h_st->buffer, h_st->bufsize, &error); + result = nsdispatch(&h_retval, emptydtab, NSDB_HOSTS, + "gethostbyaddr_r", defaultsrc, (void *)addr, + len, type, &he, h_st->buffer, h_st->bufsize, + &error); - if ((result == NS_RETURN) && (error == ERANGE)) { - AGENT_BUFFER_TLS_HANDLING_RESIZE(h_st); - if (AGENT_BUFFER_TLS_HANDLING_CHECK(h_st) != 0) { - statp->options = old_options; - TRACE_OUT(hosts_lookup_func); - return (NS_UNAVAIL); - } + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(h_st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(h_st) != 0) { + statp->options = old_options; + TRACE_OUT(hosts_lookup_func); + return (NS_UNAVAIL); } + } } while ((result == NS_RETURN) && (error == ERANGE)); if (result == NS_SUCCESS) - result = agent_marshal_results(out_buffer, out_size, - hostent_marshal_func, (void *)nss_lt_name, - &h_retval, (void *)addr, len, type, &he, - h_st->buffer, h_st->bufsize, &error); + result = agent_marshal_results(out_buffer, out_size, + hostent_marshal_func, (void *)nss_lt_name, + &h_retval, (void *)addr, len, type, &he, + h_st->buffer, h_st->bufsize, &error); break; default: /*SHOULD NOT BE REACHED */ ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.h#2 (text+ko) ==== @@ -26,6 +26,4 @@ * $FreeBSD$ */ -#include "../agent.h" - extern struct agent *init_hosts_agent(); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.c#2 (text+ko) ==== @@ -1,0 +1,288 @@ +/*- + * Copyright (c) 2006 Michael Bushkov + * 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. + * + */ + + #include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "../agent.h" +#include "../debug.h" +#include "net.h" + +static const ns_src defaultsrc[] = { + { NSSRC_FILES, NS_SUCCESS }, + { NSSRC_DNS, NS_SUCCESS }, + { 0 } +}; + +static int networks_marshal_func(char *, size_t *, void *, va_list, void *); +static int networks_lookup_func(const char *, size_t, char **, size_t *); + +AGENT_DECLARE_BUFFER_TLS_HANDLING(netent); + +#ifndef _ALIGNBYTES +#define _ALIGNBYTES ALIGNBYTES +#endif + +#ifndef _ALIGN +#define _ALIGN(x) ALIGN(x) +#endif + +static int +networks_marshal_func(char *buffer, size_t *buffer_size, void *retval, + va_list ap, void *cache_mdata) +{ + char *name; + uint32_t net; + int type; + struct netent *ne; + char *orig_buf; + size_t orig_buf_size; + + struct netent new_ne; + size_t desired_size, size, aliases_size; + char *p; + char **alias; + + switch ((enum nss_lookup_type)cache_mdata) { + case nss_lt_name: + name = va_arg(ap, char *); + break; + case nss_lt_id: + net = va_arg(ap, uint32_t); + type = va_arg(ap, int); + break; + case nss_lt_all: + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + + ne = va_arg(ap, struct netent *); + orig_buf = va_arg(ap, char *); + orig_buf_size = va_arg(ap, size_t); + + desired_size = _ALIGNBYTES + sizeof(struct netent) + sizeof(char *); + if (ne->n_name != NULL) + desired_size += strlen(ne->n_name) + 1; + + if (ne->n_aliases != NULL) { + aliases_size = 0; + for (alias = ne->n_aliases; *alias; ++alias) { + desired_size += strlen(*alias) + 1; + ++aliases_size; + } + + desired_size += _ALIGNBYTES + + (aliases_size + 1) * sizeof(char *); + } + + if (*buffer_size < desired_size) { + /* this assignment is here for future use */ + *buffer_size = desired_size; + return (NS_RETURN); + } + + memcpy(&new_ne, ne, sizeof(struct netent)); + + *buffer_size = desired_size; + memset(buffer, 0, desired_size); + p = buffer + sizeof(struct netent) + sizeof(char *); + memcpy(buffer + sizeof(struct netent), &p, sizeof(char *)); + p = (char *)_ALIGN(p); + + if (new_ne.n_name != NULL) { + size = strlen(new_ne.n_name); + memcpy(p, new_ne.n_name, size); + new_ne.n_name = p; + p += size + 1; + } + + if (new_ne.n_aliases != NULL) { + p = (char *)_ALIGN(p); + memcpy(p, new_ne.n_aliases, sizeof(char *) * aliases_size); + new_ne.n_aliases = (char **)p; + p += sizeof(char *) * (aliases_size + 1); + + for (alias = new_ne.n_aliases; *alias; ++alias) { + size = strlen(*alias); + memcpy(p, *alias, size); + *alias = p; + p += size + 1; + } + } + + memcpy(buffer, &new_ne, sizeof(struct netent)); + return (NS_SUCCESS); +} + +static int +networks_lookup_func(const char *key, size_t key_size, char **out_buffer, + size_t *out_size) +{ + struct netent_state *st; + struct netent ne, *retval; + enum nss_lookup_type lookup_type; + char *name; + uint32_t net; + int type; + int error, h_error, result; + size_t size; + + TRACE_IN(networks_lookup_func); + assert(out_buffer != NULL); + assert(out_size != NULL); + + if (key_size < sizeof(enum nss_lookup_type)) { + TRACE_OUT(networks_lookup_func); + return (NS_UNAVAIL); + } + memcpy(&lookup_type, key, sizeof(enum nss_lookup_type)); + + name = NULL; + switch (lookup_type) { + case nss_lt_name: + size = key_size - sizeof(enum nss_lookup_type) + 1; + name = (char *)malloc(size); + assert(name != NULL); + memset(name, 0, size); + memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); + break; + case nss_lt_id: + if (key_size < sizeof(enum nss_lookup_type) + + sizeof(uint32_t) + sizeof(int)) { + TRACE_OUT(networks_lookup_func); + return (NS_UNAVAIL); + } + + memcpy(&net, key + sizeof(enum nss_lookup_type), + sizeof(uint32_t)); + memcpy(&type, key + sizeof(enum nss_lookup_type) + + sizeof(uint32_t), sizeof(int)); + break; + default: + TRACE_OUT(networks_lookup_func); + return (NS_UNAVAIL); + } + + result = netent_getstate(&st); + AGENT_BUFFER_TLS_HANDLING_INIT(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + free(name); + TRACE_OUT(networks_lookup_func); + return (NS_UNAVAIL); + } + + switch (lookup_type) { + case nss_lt_name: + do { + result = nsdispatch(&retval, emptydtab, NSDB_NETWORKS, + "getnetbyname_r", defaultsrc, name, + &ne, st->buffer, st->bufsize, &error, &h_error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + result = NS_UNAVAIL; + break; + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + networks_marshal_func, (void *)nss_lt_name, + retval, name, &ne, + st->buffer, st->bufsize, &error, &h_error); + + break; + case nss_lt_id: + do { + result = nsdispatch(&retval, emptydtab, NSDB_NETWORKS, + "getnetbyaddr_r", defaultsrc, net, type, + &ne, st->buffer, st->bufsize, &error, &h_error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + result = NS_UNAVAIL; + break; + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + networks_marshal_func, + (void *)nss_lt_id, retval, net, type, + &ne, st->buffer, st->bufsize, &error); + break; + default: + /* SHOULD NOT BE REACHED */ + break; + } + + free(name); + TRACE_OUT(networks_lookup_func); + return (result); +} + +struct agent * +init_networks_agent() +{ + struct common_agent *retval; + + TRACE_IN(init_networks_agent); + retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + assert(retval != NULL); + memset(retval, 0, sizeof(struct common_agent)); + + retval->parent.name = strdup("networks"); + assert(retval->parent.name != NULL); + + retval->parent.type = COMMON_AGENT; + retval->lookup_func = networks_lookup_func; + + TRACE_OUT(init_networks_agent); + return ((struct agent *)retval); +} ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.h#2 (text+ko) ==== @@ -1,0 +1,29 @@ +/*- + * Copyright (c) 2006 Michael Bushkov + * 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$ + */ + +extern struct agent *init_networks_agent(); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.c#3 (text) ==== @@ -38,6 +38,7 @@ #include #include #include +#include "../agent.h" #include "../debug.h" #include "passwd.h" @@ -175,7 +176,7 @@ assert(out_buffer != NULL); assert(out_size != NULL); - if (key_size < sizeof(enum nss_lookup_type) + 1) { + if (key_size < sizeof(enum nss_lookup_type)) { TRACE_OUT(passwd_lookup_func); return (NS_UNAVAIL); } @@ -222,9 +223,8 @@ if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { - free(login); - TRACE_OUT(passwd_lookup_func); - return (NS_UNAVAIL); + result = NS_UNAVAIL; + break; } } } while ((result == NS_RETURN) && (error == ERANGE)); @@ -238,15 +238,15 @@ break; case nss_lt_id: do { - result = nsdispatch(&retval, emptydtab, NSDB_SERVICES, + result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, "getpwuid_r", defaultsrc, uid, &pwd, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { - TRACE_OUT(passwd_lookup_func); - return (NS_UNAVAIL); + result = NS_UNAVAIL; + break; } } } while ((result == NS_RETURN) && (error == ERANGE)); @@ -318,6 +318,7 @@ passwd_mp_destroy_func(void *mdata) { TRACE_IN(passwd_mp_destroy_func); + endpwent(); TRACE_OUT(passwd_mp_destroy_func); } ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.h#3 (text) ==== @@ -26,7 +26,5 @@ * $FreeBSD: src/usr.sbin/cached/agents/passwd.h,v 1.1 2006/04/28 12:03:38 ume Exp $ */ -#include "../agent.h" - extern struct agent *init_passwd_agent(); extern struct agent *init_passwd_mp_agent(); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.c#2 (text+ko) ==== @@ -1,0 +1,362 @@ +/*- + * Copyright (c) 2006 Michael Bushkov + * 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. + * + */ + + #include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "../agent.h" +#include "../debug.h" +#include "proto.h" + +static const ns_src defaultsrc[] = { + { NSSRC_FILES, NS_SUCCESS }, + { NULL, 0 } +}; + +static int protocols_marshal_func(char *, size_t *, void *, va_list, void *); +static int protocols_lookup_func(const char *, size_t, char **, size_t *); +static void *protocols_mp_init_func(); +static int protocols_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); +static void protocols_mp_destroy_func(void *mdata); + +AGENT_DECLARE_BUFFER_TLS_HANDLING(protoent); + +#ifndef _ALIGNBYTES +#define _ALIGNBYTES ALIGNBYTES +#endif + +#ifndef _ALIGN +#define _ALIGN(x) ALIGN(x) +#endif + +static int +protocols_marshal_func(char *buffer, size_t *buffer_size, void *retval, + va_list ap, void *cache_mdata) +{ + char *name; + int num; + struct protoent *proto; + char *orig_buf; + size_t orig_buf_size; + + struct protoent new_proto; + size_t desired_size, size, aliases_size; + char *p; + char **alias; + + switch ((enum nss_lookup_type)cache_mdata) { + case nss_lt_name: + name = va_arg(ap, char *); + break; + case nss_lt_id: + num = va_arg(ap, int); + break; + case nss_lt_all: + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + + proto = va_arg(ap, struct protoent *); + orig_buf = va_arg(ap, char *); + orig_buf_size = va_arg(ap, size_t); + + desired_size = _ALIGNBYTES + sizeof(struct protoent) + sizeof(char *); + if (proto->p_name != NULL) + desired_size += strlen(proto->p_name) + 1; + + if (proto->p_aliases != NULL) { + aliases_size = 0; + for (alias = proto->p_aliases; *alias; ++alias) { + desired_size += strlen(*alias) + 1; + ++aliases_size; + } + + desired_size += _ALIGNBYTES + (aliases_size + 1) * + sizeof(char *); + } + + if (*buffer_size < desired_size) { + /* this assignment is here for future use */ + *buffer_size = desired_size; + return (NS_RETURN); + } + + memcpy(&new_proto, proto, sizeof(struct protoent)); + + *buffer_size = desired_size; + memset(buffer, 0, desired_size); + p = buffer + sizeof(struct protoent) + sizeof(char *); + memcpy(buffer + sizeof(struct protoent), &p, sizeof(char *)); + p = (char *)_ALIGN(p); + + if (new_proto.p_name != NULL) { + size = strlen(new_proto.p_name); + memcpy(p, new_proto.p_name, size); + new_proto.p_name = p; + p += size + 1; + } + + if (new_proto.p_aliases != NULL) { + p = (char *)_ALIGN(p); + memcpy(p, new_proto.p_aliases, sizeof(char *) * aliases_size); + new_proto.p_aliases = (char **)p; + p += sizeof(char *) * (aliases_size + 1); + + for (alias = new_proto.p_aliases; *alias; ++alias) { + size = strlen(*alias); + memcpy(p, *alias, size); + *alias = p; + p += size + 1; + } + } + + memcpy(buffer, &new_proto, sizeof(struct protoent)); + return (NS_SUCCESS); +} + +static int +protocols_lookup_func(const char *key, size_t key_size, char **out_buffer, + size_t *out_size) +{ + struct protoent_state *st; + struct protoent pe, *retval; + enum nss_lookup_type lookup_type; + char *name; + int num; + int error, result; + size_t size; + + TRACE_IN(protocols_lookup_func); + assert(out_buffer != NULL); + assert(out_size != NULL); + + if (key_size < sizeof(enum nss_lookup_type)) { + TRACE_OUT(protocols_lookup_func); + return (NS_UNAVAIL); + } + memcpy(&lookup_type, key, sizeof(enum nss_lookup_type)); + + name = NULL; + switch (lookup_type) { + case nss_lt_name: + size = key_size - sizeof(enum nss_lookup_type) + 1; + name = (char *)malloc(size); + assert(name != NULL); + memset(name, 0, size); + memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); + break; + case nss_lt_id: + if (key_size < sizeof(enum nss_lookup_type) + + sizeof(int)) { + TRACE_OUT(protocols_lookup_func); + return (NS_UNAVAIL); + } + + memcpy(&num, key + sizeof(enum nss_lookup_type), sizeof(int)); + break; + default: + TRACE_OUT(protocols_lookup_func); + return (NS_UNAVAIL); + } + + result = protoent_getstate(&st); + AGENT_BUFFER_TLS_HANDLING_INIT(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + free(name); + TRACE_OUT(protocols_lookup_func); + return (NS_UNAVAIL); + } + + switch (lookup_type) { + case nss_lt_name: + do { + result = nsdispatch(&retval, emptydtab, NSDB_PROTOCOLS, + "getprotobyname_r", defaultsrc, name, + &pe, st->buffer, st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + result = NS_UNAVAIL; + break; + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + protocols_marshal_func, (void *)nss_lt_name, + retval, name, &pe, + st->buffer, st->bufsize, &error); + + break; + case nss_lt_id: + do { + result = nsdispatch(&retval, emptydtab, NSDB_PROTOCOLS, + "getprotobynumber_r", defaultsrc, num, + &pe, st->buffer, st->bufsize, &error); + + if ((result == NS_RETURN) && (error == ERANGE)) { + AGENT_BUFFER_TLS_HANDLING_RESIZE(st); + if (AGENT_BUFFER_TLS_HANDLING_CHECK(st) != 0) { + result = NS_UNAVAIL; + break; + } + } + } while ((result == NS_RETURN) && (error == ERANGE)); + + if (result == NS_SUCCESS) + result = agent_marshal_results(out_buffer, out_size, + protocols_marshal_func, + (void *)nss_lt_id, retval, num, + &pe, st->buffer, st->bufsize, &error); + break; + default: + /* SHOULD NOT BE REACHED */ + break; + } + + free(name); + TRACE_OUT(protocols_lookup_func); + return (result); +} + +static void * +protocols_mp_init_func() +{ + TRACE_IN(protocols_mp_init_func); + setprotoent(1); + TRACE_OUT(protocols_mp_init_func); + + return (NULL); +} + +static int +protocols_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) +{ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 14:37:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CBB916A47D; Thu, 22 Jun 2006 14:37:01 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4D4B416A47C for ; Thu, 22 Jun 2006 14:37:01 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EAD8A43D5A for ; Thu, 22 Jun 2006 14:37:00 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MEb06S070640 for ; Thu, 22 Jun 2006 14:37:00 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MEaxji070631 for perforce@freebsd.org; Thu, 22 Jun 2006 14:36:59 GMT (envelope-from bushman@freebsd.org) Date: Thu, 22 Jun 2006 14:36:59 GMT Message-Id: <200606221436.k5MEaxji070631@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99812 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 14:37:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=99812 Change 99812 by bushman@bushman_nss_ldap_cached on 2006/06/22 14:36:41 Minor cleanups to match style(9) more. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getaddrinfo.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/gethostbydns.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/gethostbyht.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/gethostbynis.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getnetbydns.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getnetbyht.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getnetbynis.c#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getproto.c#3 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getprotoname.c#3 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/res_config.h#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile.inc#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copynetent.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/pw_scan.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/pw_scan.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/rpcunpack.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/rpcunpack.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile.inc#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#7 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile.inc#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#7 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_name6.c#5 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_name6.h#3 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#7 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/res_config.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile.inc#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_addrinfo.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_addrinfo.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_name6.c#4 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_name6.h#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_passwd.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_proto.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_rpc.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_rpc.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_serv.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_serv.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_shells.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_shells.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#9 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.h#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/Makefile.inc#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/icmp_hosts_namadr.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/icmp_hosts_namadr.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/nss_icmp.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_icmp/nss_icmp.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile#7 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/Makefile.inc#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_group.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_group.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_addrinfo.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_addrinfo.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_namadr.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_namadr.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_name6.c#4 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_hosts_name6.h#2 delete .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_net.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_passwd.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_passwd.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_rpc.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_rpc.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_serv.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nis_serv.h#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.h#3 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#5 (text+ko) ==== @@ -132,24 +132,6 @@ DPSRC= nss_static_modules.c STATICOBJS+= nss_static_modules.o CLEANFILES+= nss_static_modules.o -#CFLAGS+= -I${.CURDIR}/../libnssutil -I${.CURDIR}/net - -#.PATH: ${.CURDIR}/../libnssutil -#.include "${.CURDIR}/../libnssutil/Makefile.inc" - -#.PATH: ${.CURDIR}/../nss_files -#.include "${.CURDIR}/../nss_files/Makefile.inc" - -#.PATH: ${.CURDIR}/../nss_dns -#.include "${.CURDIR}/../nss_dns/Makefile.inc" - -#.if ${MK_NIS} != "no" -#.PATH: ${.CURDIR}/../nss_nis -#.include "${.CURDIR}/../nss_nis/Makefile.inc" -#.endif - -#.PATH: ${.CURDIR}/../nss_compat -#.include "${.CURDIR}/../nss_compat/Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getaddrinfo.c#3 (text+ko) ==== @@ -93,12 +93,6 @@ #include #include -//#include "res_config.h" - -//#ifdef DEBUG -//#include -//#endif - #include #include #include "un-namespace.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/Makefile#6 (text+ko) ==== @@ -1,10 +1,9 @@ # $FreeBSD$ -LIB= nssutil -#SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c rpcunpack.c\ -# servunpack.c +LIB= nssutil +SRCS= copynetent.c copyhtent.c gr_scan.c pw_scan.c rpcunpack.c\ + servunpack.c INTERNAL= NO_PIC= -.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.c#4 (text+ko) ==== @@ -24,7 +24,6 @@ #include #include - int __copy_hostent(struct hostent *he, struct hostent *hptr, char *buf, size_t buflen) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copyhtent.h#3 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/copynetent.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.c#3 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/gr_scan.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/pw_scan.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ static char sccsid[] = "@(#)pw_scan.c 8.3 (Berkeley) 4/2/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/pw_scan.c,v 1.25 2004/01/18 21:33:25 charnier Exp $"); +__FBSDID("$FreeBSD$"); /* * This module is used to "verify" password entries by chpass(1) and ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/pw_scan.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/rpcunpack.c#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/rpcunpack.h#2 (text+ko) ==== @@ -26,4 +26,4 @@ * $FreeBSD$ */ -int __rpcent_unpack(char *, struct rpcent *, char **, size_t, int *); +extern int __rpcent_unpack(char *, struct rpcent *, char **, size_t, int *); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.c#3 (text+ko) ==== @@ -31,6 +31,9 @@ * SUCH DAMAGE. */ +#include +__FBSDID("$FreeBSD$"); + #include #include #include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libnssutil/servunpack.h#2 (text+ko) ==== @@ -26,4 +26,4 @@ * $FreeBSD$ */ -int __servent_unpack(char *, struct servent *, char **, size_t, int *); +extern int __servent_unpack(char *, struct servent *, char **, size_t, int *); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/Makefile#4 (text+ko) ==== @@ -7,6 +7,7 @@ SHLIB_NAME= nss_compat.so.${SHLIB_MAJOR} SHLIBDIR?= /lib +SRCS+= nss_compat.c compat_group.c compat_passwd.c compat_serv.c # NOTE: dirty hack with nss_files's file_serv.c is used SRCS+= ${.CURDIR}/../nss_files/files_serv.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ @@ -26,5 +27,4 @@ INCS= MAN= -.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.c#3 (text+ko) ==== @@ -34,7 +34,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -47,7 +46,6 @@ #include #include #include -#include "un-namespace.h" #include "libc_private.h" #include "nss_tls.h" #include "gr_scan.h" @@ -114,7 +112,7 @@ else if (stayopen) st->fp = fopen(_PATH_GROUP, "r"); set_setent(dtab, mdata); - (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", + (void)nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", compatsrc, 0); break; case nss_end_ent: @@ -123,7 +121,7 @@ st->fp = NULL; } set_setent(dtab, mdata); - (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", + (void)nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", compatsrc, 0); break; default: @@ -207,17 +205,17 @@ set_lookup_type(dtab, how); switch (how) { case nss_lt_all: - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrent_r", compatsrc, grp, buffer, bufsize, errnop); break; case nss_lt_id: - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrgid_r", compatsrc, gid, grp, buffer, bufsize, errnop); break; case nss_lt_name: - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrnam_r", compatsrc, name, grp, buffer, bufsize, errnop); break; @@ -228,7 +226,7 @@ break; case COMPAT_MODE_NAME: set_lookup_type(dtab, nss_lt_name); - rv = _nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_GROUP_COMPAT, "getgrnam_r", compatsrc, st->name, grp, buffer, bufsize, errnop); switch (rv) { ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_group.h#2 (text+ko) ==== @@ -26,5 +26,5 @@ * $FreeBSD$ */ -int __compat_setgrent(void *retval, void *mdata, va_list ap); -int __compat_group(void *retval, void *mdata, va_list ap); +extern int __compat_setgrent(void *, void *, va_list); +extern int __compat_group(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.c#4 (text+ko) ==== @@ -34,22 +34,22 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include #include #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include #include #include #include -#include "un-namespace.h" #include #include "nss_tls.h" #include "nss_compat.h" @@ -421,17 +421,17 @@ pwd_init(pwd); switch (lookup_how) { case nss_lt_all: - rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, "getpwent_r", compatsrc, pwd, buffer, bufsize, errnop); break; case nss_lt_id: - rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, "getpwuid_r", compatsrc, uid, pwd, buffer, bufsize, errnop); break; case nss_lt_name: - rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, + rv = nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, "getpwnam_r", compatsrc, lookup_name, pwd, buffer, bufsize, errnop); break; @@ -563,7 +563,7 @@ st->db = pwdbopen(&st->version); st->stayopen = stayopen; set_setent(dtab, mdata); - (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "setpwent", + (void)nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "setpwent", compatsrc, 0); break; case nss_end_ent: @@ -572,7 +572,7 @@ st->db = NULL; } set_setent(dtab, mdata); - (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "endpwent", + (void)nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "endpwent", compatsrc, 0); break; default: ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_passwd.h#2 (text+ko) ==== @@ -26,5 +26,5 @@ * $FreeBSD$ */ -int __compat_setpwent(void *retval, void *mdata, va_list ap); -int __compat_passwd(void *retval, void *mdata, va_list ap); +extern int __compat_setpwent(void *, void *, va_list); +extern int __compat_passwd(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.c#3 (text+ko) ==== @@ -25,10 +25,8 @@ * */ -#include "namespace.h" #include #include -#include "un-namespace.h" #include "../nss_files/files_serv.h" #include "nss_compat.h" @@ -51,11 +49,11 @@ switch ((enum nss_ent_type)mdata) { case nss_set_ent: f = va_arg(ap,int); - (void)_nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, + (void)nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "setservent", compat_src, f); break; case nss_end_ent: - (void)_nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, + (void)nsdispatch(retval, compat_dtab, NSDB_SERVICES_COMPAT, "endservent", compat_src); break; default: ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/compat_serv.h#2 (text+ko) ==== @@ -26,4 +26,4 @@ * $FreeBSD$ */ -int __compat_setservent(void *retval, void *mdata, va_list ap); +extern int __compat_setservent(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.c#4 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_compat/nss_compat.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/Makefile#7 (text+ko) ==== @@ -7,8 +7,8 @@ SHLIB_NAME= nss_dns.so.${SHLIB_MAJOR} SHLIBDIR?= /lib -#SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c\ -# dns_group.c dns_net.c +SRCS= nss_dns.c dns_hosts_namadr.c dns_hosts_addrinfo.c dns_passwd.c\ + dns_group.c dns_net.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -26,5 +26,4 @@ INCS= MAN= -.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.c#4 (text+ko) ==== @@ -34,7 +34,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -43,8 +42,10 @@ #endif #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include @@ -52,7 +53,6 @@ #include #include "nss_tls.h" #include "gr_scan.h" -#include "un-namespace.h" #ifdef HESIOD #define HESIOD_NAME_MAX 256 ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_group.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.c#6 (text+ko) ==== @@ -65,7 +65,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -92,7 +91,6 @@ #include #include #include -#include "un-namespace.h" #include "res_config.h" #if defined(__KAME__) && defined(INET6) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_addrinfo.h#2 (text+ko) ==== @@ -26,4 +26,4 @@ * $FreeBSD$ */ -int __dns_getaddrinfo(void *rv, void *cb_data, va_list ap); +extern int __dns_getaddrinfo(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.c#7 (text+ko) ==== @@ -56,7 +56,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -69,15 +68,16 @@ #include #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include #include #include #include -#include "un-namespace.h" #include "reentrant.h" #include "netdb_private.h" #include "nss_dns.h" @@ -431,15 +431,6 @@ break; #else he->h_name = bp; -// if (statp->options & RES_USE_INET6) { -// n = strlen(bp) + 1; /* for the \0 */ -// if (n >= MAXHOSTNAMELEN) { -// had_error++; -// break; -// } -// bp += n; -// _map_v4v6_hostent(he, &bp, ep); -// } RES_SET_H_ERRNO(statp, NETDB_SUCCESS); return (0); #endif @@ -515,8 +506,7 @@ he->h_name = bp; bp += n; } -// if (statp->options & RES_USE_INET6) -// _map_v4v6_hostent(he, &bp, ep); + RES_SET_H_ERRNO(statp, NETDB_SUCCESS); return (0); } @@ -771,11 +761,7 @@ memcpy(hed->host_addr, uaddr, len); hed->h_addr_ptrs[0] = (char *)hed->host_addr; hed->h_addr_ptrs[1] = NULL; -// if (af == AF_INET && (statp->options & RES_USE_INET6)) { -// _map_v4v6_address((char*)hed->host_addr, (char*)hed->host_addr); -// he.h_addrtype = AF_INET6; -// he.h_length = NS_IN6ADDRSZ; -// } + RES_SET_H_ERRNO(statp, NETDB_SUCCESS); if (__copy_hostent(&he, hptr, buffer, buflen) != 0) { *h_errnop = statp->res_h_errno; ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_hosts_namadr.h#3 (text+ko) ==== @@ -26,8 +26,8 @@ * $FreeBSD$ */ -int __dns_gethostbyname2_r(void *rval, void *cb_data, va_list ap); -int __dns_gethostbyaddr_r(void *rval, void *cb_data, va_list ap); -int __dns_gethostent_r(void *rval, void *cb_data, va_list ap); -int __dns_sethostent(void *rval, void *cb_data, va_list ap); -int __dns_endhostent(void *rval, void *cb_data, va_list ap); +extern int __dns_gethostbyname2_r(void *, void *, va_list); +extern int __dns_gethostbyaddr_r(void *, void *, va_list); +extern int __dns_gethostent_r(void *, void *, va_list); +extern int __dns_sethostent(void *, void *, va_list); +extern int __dns_endhostent(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.c#4 (text+ko) ==== @@ -61,7 +61,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -71,8 +70,10 @@ #include #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include @@ -80,7 +81,6 @@ #include #include #include -#include "un-namespace.h" #include "netdb_private.h" #include "nss_dns.h" #include "reentrant.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_net.h#3 (text+ko) ==== @@ -26,8 +26,8 @@ * $FreeBSD$ */ -int __dns_getnetbyname_r(void *rval, void *cb_data, va_list ap); -int __dns_getnetbyaddr_r(void *rval, void *cb_data, va_list ap); -int __dns_getnetent_r(void *rval, void *cb_data, va_list ap); -int __dns_setnetent(void *rval, void *cb_data, va_list ap); -int __dns_endnetent(void *rval, void *cb_data, va_list ap); +extern int __dns_getnetbyname_r(void *, void *, va_list); +extern int __dns_getnetbyaddr_r(void *, void *, va_list); +extern int __dns_getnetent_r(void *, void *, va_list); +extern int __dns_setnetent(void *, void *, va_list); +extern int __dns_endnetent(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.c#4 (text+ko) ==== @@ -34,7 +34,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -44,8 +43,10 @@ #endif #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include @@ -53,7 +54,6 @@ #include #include #include -#include "un-namespace.h" #include "libc_private.h" #include "nss_tls.h" #include "pw_scan.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/dns_passwd.h#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.c#7 (text+ko) ==== @@ -38,12 +38,6 @@ #include "dns_group.h" #include "netdb_private.h" -/* TODO: for testing purposes only */ -/*#ifdef NSDB_HOSTS -#undef NSDB_HOSTS -#endif -#define NSDB_HOSTS "hosts_"*/ - static ns_mtab methods[] = { {NSDB_GROUP, "getgrnam_r", __dns_group, (void *)nss_lt_name}, {NSDB_GROUP, "getgrgid_r", __dns_group, (void *)nss_lt_id}, ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/nss_dns.h#3 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/res_config.h#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/lib/libc/net/res_config.h,v 1.9 2006/03/21 16:11:11 ume Exp $ */ +/* $FreeBSD$ */ #define DEBUG 1 /* enable debugging code (needed for dig) */ #define RESOLVSORT /* allow sorting of addresses in gethostbyname */ ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/Makefile#6 (text+ko) ==== @@ -7,9 +7,9 @@ SHLIB_NAME= nss_files.so.${SHLIB_MAJOR} SHLIBDIR?= /lib -#SRCS= nss_files.c files_passwd.c files_group.c files_hosts_namadr.c\ -# files_hosts_addrinfo.c files_serv.c files_proto.c\ -# files_net.c files_rpc.c +SRCS= nss_files.c files_passwd.c files_group.c files_hosts_namadr.c\ + files_hosts_addrinfo.c files_serv.c files_proto.c\ + files_net.c files_rpc.c CFLAGS+=-I${.CURDIR} -I${.CURDIR}/../libc/gen -I${.CURDIR}/../libc/include\ -I${.CURDIR}/../libc/net -I${.CURDIR}/../libnssutil CFLAGS+=-DINET6 @@ -27,5 +27,4 @@ INCS= MAN= -.include "Makefile.inc" .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.c#4 (text+ko) ==== @@ -34,20 +34,20 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include #include #include -#include "un-namespace.h" #include "nss_files.h" #include "nss_tls.h" #include "gr_scan.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_group.h#2 (text+ko) ==== @@ -26,10 +26,5 @@ * $FreeBSD$ */ -int __gr_match_entry(const char *, size_t, enum nss_lookup_type, - const char *, gid_t); -int __gr_parse_entry(char *, size_t, struct group *, char *, size_t, - int *); - int __files_setgrent(void *, void *, va_list); int __files_group(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_addrinfo.c#3 (text+ko) ==== @@ -65,7 +65,6 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include @@ -91,7 +90,6 @@ #include #include #include -#include "un-namespace.h" #include "res_config.h" ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_addrinfo.h#2 (text+ko) ==== @@ -26,4 +26,4 @@ * $FreeBSD$ */ -int __files_getaddrinfo(void *rv, void *cb_data, va_list ap); +extern int __files_getaddrinfo(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.c#5 (text+ko) ==== @@ -54,15 +54,16 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include #include #include #include +#include "namespace.h" #include #include +#include "un-namespace.h" #include #include #include @@ -71,8 +72,8 @@ #include #include /* XXX */ #include /* XXX */ -#include "un-namespace.h" #include "reentrant.h" +#include "copyhtent.h" #include "netdb_private.h" #include "nss_files.h" @@ -93,68 +94,6 @@ free(hed); } -static int -__copy_hostent(struct hostent *he, struct hostent *hptr, char *buf, - size_t buflen) -{ - char *cp; - char **ptr; - int i, n; - int nptr, len; - - /* Find out the amount of space required to store the answer. */ - nptr = 2; /* NULL ptrs */ - len = (char *)ALIGN(buf) - buf; - for (i = 0; he->h_addr_list[i]; i++, nptr++) { - len += he->h_length; - } - for (i = 0; he->h_aliases[i]; i++, nptr++) { - len += strlen(he->h_aliases[i]) + 1; - } - len += strlen(he->h_name) + 1; - len += nptr * sizeof(char*); - - if (len > buflen) { - errno = ERANGE; - return (-1); - } - - /* copy address size and type */ - hptr->h_addrtype = he->h_addrtype; - n = hptr->h_length = he->h_length; - - ptr = (char **)ALIGN(buf); - cp = (char *)ALIGN(buf) + nptr * sizeof(char *); - - /* copy address list */ - hptr->h_addr_list = ptr; - for (i = 0; he->h_addr_list[i]; i++ , ptr++) { - memcpy(cp, he->h_addr_list[i], n); - hptr->h_addr_list[i] = cp; - cp += n; - } - hptr->h_addr_list[i] = NULL; - ptr++; - - /* copy official name */ - n = strlen(he->h_name) + 1; - strcpy(cp, he->h_name); - hptr->h_name = cp; - cp += n; - - /* copy aliases */ - hptr->h_aliases = ptr; - for (i = 0 ; he->h_aliases[i]; i++) { - n = strlen(he->h_aliases[i]) + 1; - strcpy(cp, he->h_aliases[i]); - hptr->h_aliases[i] = cp; - cp += n; - } - hptr->h_aliases[i] = NULL; - - return (0); -} - static void sethosthtent(int f, struct files_hostent_data *hed) { @@ -204,15 +143,8 @@ af = AF_INET6; len = IN6ADDRSZ; } else if (inet_pton(AF_INET, p, hed->host_addr) > 0) { -/* if (mapped) { - _map_v4v6_address((char *)hed->host_addr, - (char *)hed->host_addr); - af = AF_INET6; - len = IN6ADDRSZ; - } else {*/ - af = AF_INET; - len = INADDRSZ; -/* }*/ + af = AF_INET; + len = INADDRSZ; } else { goto again; } @@ -294,12 +226,7 @@ while ((error = gethostent_p(&he, hed, statp)) == 0) { if (he.h_addrtype != af) continue; -/* if (he.h_addrtype == AF_INET && - statp->options & RES_USE_INET6) { - _map_v4v6_address(he.h_addr, he.h_addr); - he.h_length = IN6ADDRSZ; - he.h_addrtype = AF_INET6; - }*/ + if (strcasecmp(he.h_name, name) == 0) break; for (cp = he.h_aliases; *cp != 0; cp++) @@ -355,15 +282,8 @@ sethosthtent(0, hed); while ((error = gethostent_p(&he, hed, statp)) == 0) - if (he.h_addrtype == af && !bcmp(he.h_addr, addr, len)) { -/* if (he.h_addrtype == AF_INET && - statp->options & RES_USE_INET6) { - _map_v4v6_address(he.h_addr, he.h_addr); - he.h_length = IN6ADDRSZ; - he.h_addrtype = AF_INET6; - }*/ + if (he.h_addrtype == af && !bcmp(he.h_addr, addr, len)) break; - } endhosthtent(hed); if (error != 0) ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_hosts_namadr.h#3 (text+ko) ==== @@ -26,8 +26,8 @@ * $FreeBSD$ */ -int __files_gethostbyname2_r(void *rval, void *cb_data, va_list ap); -int __files_gethostbyaddr_r(void *rval, void *cb_data, va_list ap); -int __files_gethostent_r(void *rval, void *cb_data, va_list ap); -int __files_sethostent(void *rval, void *cb_data, va_list ap); -int __files_endhostent(void *rval, void *cb_data, va_list ap); +extern int __files_gethostbyname2_r(void *, void *, va_list); +extern int __files_gethostbyaddr_r(void *, void *, va_list); +extern int __files_gethostent_r(void *, void *, va_list); +extern int __files_sethostent(void *, void *, va_list); +extern int __files_endhostent(void *, void *, va_list); ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/files_net.c#5 (text+ko) ==== @@ -44,22 +44,22 @@ #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include #include >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 15:49:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8BC4816A47D; Thu, 22 Jun 2006 15:49:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 46C9016A47C for ; Thu, 22 Jun 2006 15:49:32 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E3CB043D55 for ; Thu, 22 Jun 2006 15:49:31 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MFnVGm075157 for ; Thu, 22 Jun 2006 15:49:31 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MFnVZh075154 for perforce@freebsd.org; Thu, 22 Jun 2006 15:49:31 GMT (envelope-from bushman@freebsd.org) Date: Thu, 22 Jun 2006 15:49:31 GMT Message-Id: <200606221549.k5MFnVZh075154@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99816 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 15:49:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=99816 Change 99816 by bushman@bushman_nss_ldap_cached on 2006/06/22 15:49:15 res_config.h should be use both from nss_files and nss_dns Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/res_config.h#3 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_dns/res_config.h#3 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jun 22 16:45:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 752A216A4D8; Thu, 22 Jun 2006 16:45:12 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 508DC16A4CE for ; Thu, 22 Jun 2006 16:45:12 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D480D4424E for ; Thu, 22 Jun 2006 16:15:04 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MGF4CD077506 for ; Thu, 22 Jun 2006 16:15:04 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MGF45b077499 for perforce@freebsd.org; Thu, 22 Jun 2006 16:15:04 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 22 Jun 2006 16:15:04 GMT Message-Id: <200606221615.k5MGF45b077499@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99818 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 16:45:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=99818 Change 99818 by gabor@spitfire on 2006/06/22 16:14:09 Only use pkg_info for checking if the given port is already installed when DESTDIR is not set. Check PKG_DBDIR otherwise. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#7 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#7 (text+ko) ==== @@ -3629,13 +3629,12 @@ # Utility targets follow -### FIXME: pkg_info in DESTDIR - .if !target(check-already-installed) check-already-installed: .if !defined(NO_PKG_REGISTER) && !defined(FORCE_PKG_REGISTER) @${ECHO_MSG} "===> Checking if ${PKGORIGIN} already installed" @${MKDIR} ${PKG_DBDIR} +.if !defined(DESTDIR) @already_installed=`${PKG_INFO} -q -O ${PKGORIGIN}`; \ if [ -n "$${already_installed}" ]; then \ for p in $${already_installed}; do \ @@ -3648,8 +3647,9 @@ fi; \ fi; \ done; \ - fi; \ - if [ -d ${PKG_DBDIR}/${PKGNAME} -o -n "$${found_package}" ]; then \ + fi; +.else + @if [ -d ${PKG_DBDIR}/${PKGNAME} -o -n "$${found_package}" ]; then \ if [ -d ${PKG_DBDIR}/${PKGNAME} ]; then \ ${ECHO_CMD} "===> ${PKGNAME} is already installed"; \ else \ @@ -3662,6 +3662,7 @@ ${ECHO_CMD} " in your environment or the \"make install\" command line."; \ exit 1; \ fi +.endif .else @${DO_NADA} .endif From owner-p4-projects@FreeBSD.ORG Thu Jun 22 17:08:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AA5C316A4A9; Thu, 22 Jun 2006 17:08:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6F30216A4A0 for ; Thu, 22 Jun 2006 17:08:14 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 177E243D82 for ; Thu, 22 Jun 2006 17:08:14 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MH8Dmb090146 for ; Thu, 22 Jun 2006 17:08:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MH8BmW090130 for perforce@freebsd.org; Thu, 22 Jun 2006 17:08:11 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 17:08:11 GMT Message-Id: <200606221708.k5MH8BmW090130@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 99822 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 17:08:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=99822 Change 99822 by imp@imp_harmony on 2006/06/22 17:07:45 IFC @99790 Affected files ... .. //depot/projects/arm/src/sys/amd64/amd64/fpu.c#5 integrate .. //depot/projects/arm/src/sys/amd64/amd64/initcpu.c#3 integrate .. //depot/projects/arm/src/sys/amd64/amd64/machdep.c#10 integrate .. //depot/projects/arm/src/sys/amd64/amd64/pmap.c#15 integrate .. //depot/projects/arm/src/sys/amd64/amd64/trap.c#9 integrate .. //depot/projects/arm/src/sys/amd64/conf/GENERIC#12 integrate .. //depot/projects/arm/src/sys/amd64/include/md_var.h#4 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/arm/src/sys/arm/arm/elf_trampoline.c#9 integrate .. //depot/projects/arm/src/sys/arm/arm/locore.S#20 integrate .. //depot/projects/arm/src/sys/arm/arm/pmap.c#20 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_pmc.c#17 integrate .. //depot/projects/arm/src/sys/arm/at91/at91rm92reg.h#18 integrate .. //depot/projects/arm/src/sys/arm/at91/if_ate.c#52 integrate .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#24 integrate .. //depot/projects/arm/src/sys/arm/conf/IQ31244#4 integrate .. //depot/projects/arm/src/sys/arm/conf/KB920X#32 integrate .. //depot/projects/arm/src/sys/arm/conf/SIMICS#4 integrate .. //depot/projects/arm/src/sys/arm/conf/SKYEYE#6 integrate .. //depot/projects/arm/src/sys/arm/sa11x0/uart_cpu_sa1110.c#4 integrate .. //depot/projects/arm/src/sys/boot/Makefile#4 integrate .. //depot/projects/arm/src/sys/compat/ndis/subr_ndis.c#6 integrate .. //depot/projects/arm/src/sys/conf/Makefile.arm#14 integrate .. //depot/projects/arm/src/sys/conf/NOTES#23 integrate .. //depot/projects/arm/src/sys/conf/files#31 integrate .. //depot/projects/arm/src/sys/conf/kern.post.mk#10 integrate .. //depot/projects/arm/src/sys/contrib/pf/net/if_pfsync.c#4 integrate .. //depot/projects/arm/src/sys/ddb/db_sym.c#2 integrate .. //depot/projects/arm/src/sys/dev/aac/aac_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#17 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bge.c#16 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bgereg.h#11 integrate .. //depot/projects/arm/src/sys/dev/digi/digi.c#5 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfi.c#5 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfi_disk.c#3 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/arm/src/sys/dev/mxge/eth_z8e.dat.gz.uu#2 integrate .. //depot/projects/arm/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#2 integrate .. //depot/projects/arm/src/sys/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/arm/src/sys/dev/mxge/if_mxge_var.h#2 integrate .. //depot/projects/arm/src/sys/dev/mxge/mxge_mcp.h#2 integrate .. //depot/projects/arm/src/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/arm/src/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/arm/src/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/arm/src/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/arm/src/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/arm/src/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/arm/src/sys/dev/sound/driver.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/midi.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/sequencer.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/arm/src/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/arm/src/sys/dev/sound/pci/cmi.c#6 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/arm/src/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/arm/src/sys/dev/sound/pci/es137x.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/ich.c#11 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/maestro.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/via8233.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/pcm/feeder_rate.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pcm/sound.c#7 integrate .. //depot/projects/arm/src/sys/dev/sound/pcm/vchan.c#6 integrate .. //depot/projects/arm/src/sys/dev/usb/uhid.c#4 integrate .. //depot/projects/arm/src/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/arm/src/sys/dev/usb/uplcom.c#6 integrate .. //depot/projects/arm/src/sys/dev/usb/usbdevs#16 integrate .. //depot/projects/arm/src/sys/dev/usb/uscanner.c#5 integrate .. //depot/projects/arm/src/sys/dev/usb/uvisor.c#4 integrate .. //depot/projects/arm/src/sys/dev/wl/if_wl.c#3 integrate .. //depot/projects/arm/src/sys/geom/geom_dev.c#4 integrate .. //depot/projects/arm/src/sys/i386/acpica/acpi_wakeup.c#6 integrate .. //depot/projects/arm/src/sys/i386/conf/GENERIC#11 integrate .. //depot/projects/arm/src/sys/i386/conf/XBOX#5 integrate .. //depot/projects/arm/src/sys/i386/i386/db_trace.c#5 integrate .. //depot/projects/arm/src/sys/i386/i386/identcpu.c#13 integrate .. //depot/projects/arm/src/sys/i386/i386/pmap.c#12 integrate .. //depot/projects/arm/src/sys/i386/i386/trap.c#7 integrate .. //depot/projects/arm/src/sys/i386/include/specialreg.h#4 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_dummy.c#4 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_proto.h#8 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_syscall.h#8 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_sysent.c#8 integrate .. //depot/projects/arm/src/sys/i386/linux/syscalls.master#8 integrate .. //depot/projects/arm/src/sys/ia64/conf/GENERIC#7 integrate .. //depot/projects/arm/src/sys/ia64/conf/SKI#4 integrate .. //depot/projects/arm/src/sys/ia64/ia64/machdep.c#8 integrate .. //depot/projects/arm/src/sys/ia64/ia64/pmap.c#7 integrate .. //depot/projects/arm/src/sys/kern/kern_clock.c#8 integrate .. //depot/projects/arm/src/sys/kern/kern_linker.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_module.c#4 integrate .. //depot/projects/arm/src/sys/kern/kern_synch.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_sysctl.c#5 integrate .. //depot/projects/arm/src/sys/kern/kern_tc.c#6 integrate .. //depot/projects/arm/src/sys/kern/link_elf.c#4 integrate .. //depot/projects/arm/src/sys/kern/link_elf_obj.c#4 integrate .. //depot/projects/arm/src/sys/kern/sched_4bsd.c#7 integrate .. //depot/projects/arm/src/sys/kern/sched_core.c#2 integrate .. //depot/projects/arm/src/sys/kern/sched_ule.c#8 integrate .. //depot/projects/arm/src/sys/kern/subr_bus.c#8 integrate .. //depot/projects/arm/src/sys/kern/subr_firmware.c#4 integrate .. //depot/projects/arm/src/sys/kern/subr_kdb.c#4 integrate .. //depot/projects/arm/src/sys/kern/uipc_socket.c#14 integrate .. //depot/projects/arm/src/sys/kern/uipc_socket2.c#11 integrate .. //depot/projects/arm/src/sys/kern/uipc_syscalls.c#11 integrate .. //depot/projects/arm/src/sys/kern/uipc_usrreq.c#11 integrate .. //depot/projects/arm/src/sys/kern/vfs_cache.c#5 integrate .. //depot/projects/arm/src/sys/modules/Makefile#22 integrate .. //depot/projects/arm/src/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/arm/src/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/arm/src/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/arm/src/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/arm/src/sys/modules/ppc/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/sound/driver/Makefile#4 integrate .. //depot/projects/arm/src/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/arm/src/sys/net/bpf.c#9 integrate .. //depot/projects/arm/src/sys/net/bpf.h#5 integrate .. //depot/projects/arm/src/sys/net/if.c#11 integrate .. //depot/projects/arm/src/sys/net/if.h#7 integrate .. //depot/projects/arm/src/sys/net/if_bridge.c#15 integrate .. //depot/projects/arm/src/sys/net/if_clone.c#5 integrate .. //depot/projects/arm/src/sys/net/if_var.h#5 integrate .. //depot/projects/arm/src/sys/net/if_vlan.c#10 integrate .. //depot/projects/arm/src/sys/netinet/ip_fw2.c#13 integrate .. //depot/projects/arm/src/sys/netinet/tcp_input.c#12 integrate .. //depot/projects/arm/src/sys/netinet/tcp_seq.h#3 integrate .. //depot/projects/arm/src/sys/netinet/tcp_syncache.c#10 integrate .. //depot/projects/arm/src/sys/netinet/tcp_var.h#7 integrate .. //depot/projects/arm/src/sys/pc98/conf/GENERIC#6 integrate .. //depot/projects/arm/src/sys/posix4/ksched.c#4 integrate .. //depot/projects/arm/src/sys/powerpc/conf/GENERIC#7 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/mmu_if.m#5 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/pmap_dispatch.c#5 integrate .. //depot/projects/arm/src/sys/security/audit/audit_bsm_token.c#4 integrate .. //depot/projects/arm/src/sys/sparc64/conf/GENERIC#14 integrate .. //depot/projects/arm/src/sys/sparc64/sparc64/pmap.c#9 integrate .. //depot/projects/arm/src/sys/sys/linker.h#4 integrate .. //depot/projects/arm/src/sys/sys/protosw.h#6 integrate .. //depot/projects/arm/src/sys/sys/sched.h#4 integrate .. //depot/projects/arm/src/sys/sys/socketvar.h#9 integrate .. //depot/projects/arm/src/sys/sys/sockio.h#4 integrate .. //depot/projects/arm/src/sys/sys/sx.h#4 integrate .. //depot/projects/arm/src/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/arm/src/sys/vm/pmap.h#6 integrate .. //depot/projects/arm/src/sys/vm/vm_fault.c#10 integrate .. //depot/projects/arm/src/sys/vm/vm_map.c#9 integrate .. //depot/projects/arm/src/sys/vm/vm_mmap.c#5 integrate Differences ... ==== //depot/projects/arm/src/sys/amd64/amd64/fpu.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/arm/src/sys/amd64/amd64/initcpu.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/arm/src/sys/amd64/amd64/machdep.c#10 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/arm/src/sys/amd64/amd64/pmap.c#15 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.556 2006/06/12 20:05:27 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); /* * Manages physical address maps. @@ -1664,7 +1664,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1697,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -2335,6 +2336,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2356,15 +2358,13 @@ * but is *MUCH* faster than pmap_enter... */ -vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - vm_page_t mpte) +void +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { PMAP_LOCK(pmap); - mpte = pmap_enter_quick_locked(pmap, va, m, prot, mpte); + (void) pmap_enter_quick_locked(pmap, va, m, prot, NULL); PMAP_UNLOCK(pmap); - return (mpte); } static vm_page_t @@ -2378,7 +2378,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2396,7 +2395,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2414,18 +2412,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2448,12 +2436,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters ==== //depot/projects/arm/src/sys/amd64/amd64/trap.c#9 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/arm/src/sys/amd64/conf/GENERIC#12 (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.459 2006/06/13 13:12:56 davidxu Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ cpu HAMMER ident GENERIC @@ -46,7 +46,6 @@ options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_GPT # GUID Partition Tables. -options COMPAT_43 # Needed by COMPAT_LINUX32 options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!] options COMPAT_IA32 # Compatible with i386 binaries options COMPAT_FREEBSD4 # Compatible with FreeBSD4 ==== //depot/projects/arm/src/sys/amd64/include/md_var.h#4 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_dummy.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; +struct linux_renameat_args { + register_t dummy; +}; +struct linux_linkat_args { + register_t dummy; +}; +struct linux_symlinkat_args { + register_t dummy; +}; +struct linux_readlinkat_args { + register_t dummy; +}; +struct linux_fchmodat_args { + register_t dummy; +}; +struct linux_faccessat_args { + register_t dummy; +}; +struct linux_pselect6_args { + register_t dummy; +}; +struct linux_ppoll_args { + register_t dummy; +}; +struct linux_unshare_args { + register_t dummy; +}; #define nosys linux_nosys int linux_fork(struct thread *, struct linux_fork_args *); int linux_open(struct thread *, struct linux_open_args *); @@ -878,6 +1046,62 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); +int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); +int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); +int linux_epoll_ctl(struct thread *, struct linux_epoll_ctl_args *); +int linux_epoll_wait(struct thread *, struct linux_epoll_wait_args *); +int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); +int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); +int linux_timer_create(struct thread *, struct linux_timer_create_args *); +int linux_timer_settime(struct thread *, struct linux_timer_settime_args *); +int linux_timer_gettime(struct thread *, struct linux_timer_gettime_args *); +int linux_timer_getoverrun(struct thread *, struct linux_timer_getoverrun_args *); +int linux_timer_delete(struct thread *, struct linux_timer_delete_args *); +int linux_clock_settime(struct thread *, struct linux_clock_settime_args *); +int linux_clock_gettime(struct thread *, struct linux_clock_gettime_args *); +int linux_clock_getres(struct thread *, struct linux_clock_getres_args *); +int linux_clock_nanosleep(struct thread *, struct linux_clock_nanosleep_args *); +int linux_statfs64(struct thread *, struct linux_statfs64_args *); +int linux_fstatfs64(struct thread *, struct linux_fstatfs64_args *); +int linux_tgkill(struct thread *, struct linux_tgkill_args *); +int linux_utimes(struct thread *, struct linux_utimes_args *); +int linux_fadvise64_64(struct thread *, struct linux_fadvise64_64_args *); +int linux_mbind(struct thread *, struct linux_mbind_args *); +int linux_get_mempolicy(struct thread *, struct linux_get_mempolicy_args *); +int linux_set_mempolicy(struct thread *, struct linux_set_mempolicy_args *); +int linux_mq_open(struct thread *, struct linux_mq_open_args *); +int linux_mq_unlink(struct thread *, struct linux_mq_unlink_args *); +int linux_mq_timedsend(struct thread *, struct linux_mq_timedsend_args *); +int linux_mq_timedreceive(struct thread *, struct linux_mq_timedreceive_args *); +int linux_mq_notify(struct thread *, struct linux_mq_notify_args *); +int linux_mq_getsetattr(struct thread *, struct linux_mq_getsetattr_args *); +int linux_kexec_load(struct thread *, struct linux_kexec_load_args *); +int linux_waitid(struct thread *, struct linux_waitid_args *); +int linux_add_key(struct thread *, struct linux_add_key_args *); +int linux_request_key(struct thread *, struct linux_request_key_args *); +int linux_keyctl(struct thread *, struct linux_keyctl_args *); +int linux_ioprio_set(struct thread *, struct linux_ioprio_set_args *); +int linux_ioprio_get(struct thread *, struct linux_ioprio_get_args *); +int linux_inotify_init(struct thread *, struct linux_inotify_init_args *); +int linux_inotify_add_watch(struct thread *, struct linux_inotify_add_watch_args *); +int linux_inotify_rm_watch(struct thread *, struct linux_inotify_rm_watch_args *); +int linux_migrate_pages(struct thread *, struct linux_migrate_pages_args *); +int linux_openat(struct thread *, struct linux_openat_args *); +int linux_mkdirat(struct thread *, struct linux_mkdirat_args *); +int linux_mknodat(struct thread *, struct linux_mknodat_args *); +int linux_fchownat(struct thread *, struct linux_fchownat_args *); +int linux_futimesat(struct thread *, struct linux_futimesat_args *); +int linux_fstatat64(struct thread *, struct linux_fstatat64_args *); +int linux_unlinkat(struct thread *, struct linux_unlinkat_args *); +int linux_renameat(struct thread *, struct linux_renameat_args *); +int linux_linkat(struct thread *, struct linux_linkat_args *); +int linux_symlinkat(struct thread *, struct linux_symlinkat_args *); +int linux_readlinkat(struct thread *, struct linux_readlinkat_args *); +int linux_fchmodat(struct thread *, struct linux_fchmodat_args *); +int linux_faccessat(struct thread *, struct linux_faccessat_args *); +int linux_pselect6(struct thread *, struct linux_pselect6_args *); +int linux_ppoll(struct thread *, struct linux_ppoll_args *); +int linux_unshare(struct thread *, struct linux_unshare_args *); #ifdef COMPAT_43 ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #define LINUX_SYS_exit 1 @@ -221,4 +221,60 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 +#define LINUX_SYS_linux_lookup_dcookie 253 +#define LINUX_SYS_linux_epoll_create 254 +#define LINUX_SYS_linux_epoll_ctl 255 +#define LINUX_SYS_linux_epoll_wait 256 +#define LINUX_SYS_linux_remap_file_pages 257 +#define LINUX_SYS_linux_set_tid_address 258 +#define LINUX_SYS_linux_timer_create 259 +#define LINUX_SYS_linux_timer_settime 260 +#define LINUX_SYS_linux_timer_gettime 261 +#define LINUX_SYS_linux_timer_getoverrun 262 +#define LINUX_SYS_linux_timer_delete 263 +#define LINUX_SYS_linux_clock_settime 264 +#define LINUX_SYS_linux_clock_gettime 265 +#define LINUX_SYS_linux_clock_getres 266 +#define LINUX_SYS_linux_clock_nanosleep 267 +#define LINUX_SYS_linux_statfs64 268 +#define LINUX_SYS_linux_fstatfs64 269 +#define LINUX_SYS_linux_tgkill 270 +#define LINUX_SYS_linux_utimes 271 +#define LINUX_SYS_linux_fadvise64_64 272 +#define LINUX_SYS_linux_mbind 274 +#define LINUX_SYS_linux_get_mempolicy 275 +#define LINUX_SYS_linux_set_mempolicy 276 +#define LINUX_SYS_linux_mq_open 277 +#define LINUX_SYS_linux_mq_unlink 278 +#define LINUX_SYS_linux_mq_timedsend 279 +#define LINUX_SYS_linux_mq_timedreceive 280 +#define LINUX_SYS_linux_mq_notify 281 +#define LINUX_SYS_linux_mq_getsetattr 282 +#define LINUX_SYS_linux_kexec_load 283 +#define LINUX_SYS_linux_waitid 284 +#define LINUX_SYS_linux_add_key 286 +#define LINUX_SYS_linux_request_key 287 +#define LINUX_SYS_linux_keyctl 288 +#define LINUX_SYS_linux_ioprio_set 289 +#define LINUX_SYS_linux_ioprio_get 290 +#define LINUX_SYS_linux_inotify_init 291 +#define LINUX_SYS_linux_inotify_add_watch 292 +#define LINUX_SYS_linux_inotify_rm_watch 293 +#define LINUX_SYS_linux_migrate_pages 294 +#define LINUX_SYS_linux_openat 295 +#define LINUX_SYS_linux_mkdirat 296 +#define LINUX_SYS_linux_mknodat 297 +#define LINUX_SYS_linux_fchownat 298 +#define LINUX_SYS_linux_futimesat 299 +#define LINUX_SYS_linux_fstatat64 300 +#define LINUX_SYS_linux_unlinkat 301 +#define LINUX_SYS_linux_renameat 302 +#define LINUX_SYS_linux_linkat 303 +#define LINUX_SYS_linux_symlinkat 304 +#define LINUX_SYS_linux_readlinkat 305 +#define LINUX_SYS_linux_fchmodat 306 +#define LINUX_SYS_linux_faccessat 307 +#define LINUX_SYS_linux_pselect6 308 +#define LINUX_SYS_linux_ppoll 309 +#define LINUX_SYS_linux_unshare 310 #define LINUX_SYS_MAXSYSCALL 311 ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp */ #include @@ -273,62 +273,62 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64, AUE_NULL }, /* 250 = linux_fadvise64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 251 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 252 = exit_group */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 253 = linux_lookup_dcookie */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 254 = linux_epoll_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = linux_epoll_ctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = linux_epoll_wait */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = linux_set_tid_address */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = linux_timer_create */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = linux_timer_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = linux_timer_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = linux_timer_getoverrun */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = linux_timer_delete */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = linux_clock_settime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = linux_clock_gettime */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = linux_clock_getres */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = linux_statfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = linux_fstatfs64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = linux_tgkill */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = linux_utimes */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 272 = linux_fadvise64_64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 274 = linux_mbind */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 275 = linux_get_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 276 = linux_set_mempolicy */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 277 = linux_mq_open */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 278 = linux_mq_unlink */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 279 = linux_mq_timedsend */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 280 = linux_mq_timedreceive */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = linux_mq_notify */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = linux_mq_getsetattr */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = linux_kexec_load */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = linux_waitid */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = linux_ni_syscall */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = linux_add_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = linux_request_key */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = linux_keyctl */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = linux_ioprio_set */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = linux_ioprio_get */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = linux_inotify_init */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = linux_inotify_add_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = linux_migrate_pages */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = linux_openat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = linux_mkdirat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 297 = linux_mknodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 298 = linux_fchownat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 299 = linux_futimesat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 300 = linux_fstatat64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 301 = linux_unlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 302 = linux_renameat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 303 = linux_linkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 304 = linux_symlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 305 = linux_readlinkat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 306 = linux_fchmodat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 307 = linux_faccessat */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 308 = linux_pselect6 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 309 = linux_ppoll */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 310 = linux_unshare */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL }, /* 253 = linux_lookup_dcookie */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_create, AUE_NULL }, /* 254 = linux_epoll_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL }, /* 262 = linux_timer_getoverrun */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_delete, AUE_NULL }, /* 263 = linux_timer_delete */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME }, /* 264 = linux_clock_settime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_gettime, AUE_NULL }, /* 265 = linux_clock_gettime */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_getres, AUE_NULL }, /* 266 = linux_clock_getres */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_clock_nanosleep, AUE_NULL }, /* 267 = linux_clock_nanosleep */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_statfs64, AUE_NULL }, /* 268 = linux_statfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatfs64, AUE_NULL }, /* 269 = linux_fstatfs64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_tgkill, AUE_NULL }, /* 270 = linux_tgkill */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_utimes, AUE_NULL }, /* 271 = linux_utimes */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fadvise64_64, AUE_NULL }, /* 272 = linux_fadvise64_64 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mbind, AUE_NULL }, /* 274 = linux_mbind */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_get_mempolicy, AUE_NULL }, /* 275 = linux_get_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_set_mempolicy, AUE_NULL }, /* 276 = linux_set_mempolicy */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_open, AUE_NULL }, /* 277 = linux_mq_open */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_unlink, AUE_NULL }, /* 278 = linux_mq_unlink */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedsend, AUE_NULL }, /* 279 = linux_mq_timedsend */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_timedreceive, AUE_NULL }, /* 280 = linux_mq_timedreceive */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_notify, AUE_NULL }, /* 281 = linux_mq_notify */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mq_getsetattr, AUE_NULL }, /* 282 = linux_mq_getsetattr */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_kexec_load, AUE_NULL }, /* 283 = linux_kexec_load */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_waitid, AUE_NULL }, /* 284 = linux_waitid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_add_key, AUE_NULL }, /* 286 = linux_add_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_request_key, AUE_NULL }, /* 287 = linux_request_key */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_keyctl, AUE_NULL }, /* 288 = linux_keyctl */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_set, AUE_NULL }, /* 289 = linux_ioprio_set */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ioprio_get, AUE_NULL }, /* 290 = linux_ioprio_get */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_init, AUE_NULL }, /* 291 = linux_inotify_init */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_add_watch, AUE_NULL }, /* 292 = linux_inotify_add_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_inotify_rm_watch, AUE_NULL }, /* 293 = linux_inotify_rm_watch */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_migrate_pages, AUE_NULL }, /* 294 = linux_migrate_pages */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_openat, AUE_NULL }, /* 295 = linux_openat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mkdirat, AUE_NULL }, /* 296 = linux_mkdirat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_mknodat, AUE_NULL }, /* 297 = linux_mknodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchownat, AUE_NULL }, /* 298 = linux_fchownat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_futimesat, AUE_NULL }, /* 299 = linux_futimesat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fstatat64, AUE_NULL }, /* 300 = linux_fstatat64 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unlinkat, AUE_NULL }, /* 301 = linux_unlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_renameat, AUE_NULL }, /* 302 = linux_renameat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_linkat, AUE_NULL }, /* 303 = linux_linkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_symlinkat, AUE_NULL }, /* 304 = linux_symlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_readlinkat, AUE_NULL }, /* 305 = linux_readlinkat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_fchmodat, AUE_NULL }, /* 306 = linux_fchmodat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_faccessat, AUE_NULL }, /* 307 = linux_faccessat */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_pselect6, AUE_NULL }, /* 308 = linux_pselect6 */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ppoll, AUE_NULL }, /* 309 = linux_ppoll */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_unshare, AUE_NULL }, /* 310 = linux_unshare */ }; ==== //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#7 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -418,61 +418,61 @@ 251 AUE_NULL UNIMPL 252 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit_group \ sys_exit_args void -253 AUE_NULL UNIMPL linux_lookup_dcookie -254 AUE_NULL UNIMPL linux_epoll_create -255 AUE_NULL UNIMPL linux_epoll_ctl -256 AUE_NULL UNIMPL linux_epoll_wait -257 AUE_NULL UNIMPL linux_remap_file_pages -258 AUE_NULL UNIMPL linux_set_tid_address -259 AUE_NULL UNIMPL linux_timer_create -260 AUE_NULL UNIMPL linux_timer_settime -261 AUE_NULL UNIMPL linux_timer_gettime -262 AUE_NULL UNIMPL linux_timer_getoverrun -263 AUE_NULL UNIMPL linux_timer_delete -264 AUE_CLOCK_SETTIME UNIMPL linux_clock_settime -265 AUE_NULL UNIMPL linux_clock_gettime -266 AUE_NULL UNIMPL linux_clock_getres -267 AUE_NULL UNIMPL linux_clock_nanosleep -268 AUE_NULL UNIMPL linux_statfs64 -269 AUE_NULL UNIMPL linux_fstatfs64 -270 AUE_NULL UNIMPL linux_tgkill /* 270 */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jun 22 18:52:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4BDDC16A4D2; Thu, 22 Jun 2006 18:52:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2A5F516A4D0 for ; Thu, 22 Jun 2006 18:52:24 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB0BF449C4 for ; Thu, 22 Jun 2006 18:52:23 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MIqNMI095472 for ; Thu, 22 Jun 2006 18:52:23 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MIqNmn095469 for perforce@freebsd.org; Thu, 22 Jun 2006 18:52:23 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 18:52:23 GMT Message-Id: <200606221852.k5MIqNmn095469@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 99825 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 18:52:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=99825 Change 99825 by imp@imp_lighthouse on 2006/06/22 18:51:56 random pty Affected files ... .. //depot/projects/arm/src/sys/arm/conf/KB920X#33 edit Differences ... ==== //depot/projects/arm/src/sys/arm/conf/KB920X#33 (text+ko) ==== @@ -69,7 +69,9 @@ options NO_SWAPPING device genclock device loop +device random device ether +device pty device nexus device uart device ate From owner-p4-projects@FreeBSD.ORG Thu Jun 22 20:05:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4AE1416A49A; Thu, 22 Jun 2006 20:05:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E5D2116A537 for ; Thu, 22 Jun 2006 20:05:31 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB99843D97 for ; Thu, 22 Jun 2006 19:32:12 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MJWCwp098382 for ; Thu, 22 Jun 2006 19:32:12 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MJWCVf098379 for perforce@freebsd.org; Thu, 22 Jun 2006 19:32:12 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 19:32:12 GMT Message-Id: <200606221932.k5MJWCVf098379@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 99826 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 20:05:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=99826 Change 99826 by imp@imp_lighthouse on 2006/06/22 19:31:36 add arm to the include path Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/Makefile.inc#18 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/Makefile.inc#18 (text+ko) ==== @@ -8,6 +8,7 @@ CFLAGS=-O2 -mcpu=arm9 -ffreestanding \ -I${.CURDIR}/../libat91 \ -I${.CURDIR}/../../../.. \ + -I${.CURDIR}/../../../../arm \ -D_KERNEL \ -Wall -Waggregate-return \ -Wnested-externs \ From owner-p4-projects@FreeBSD.ORG Thu Jun 22 21:09:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6EA4D16A49A; Thu, 22 Jun 2006 21:09:17 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3290A16A492 for ; Thu, 22 Jun 2006 21:09:17 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 361C843D5F for ; Thu, 22 Jun 2006 21:09:13 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5ML9DUR012807 for ; Thu, 22 Jun 2006 21:09:13 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5ML9CvM012804 for perforce@freebsd.org; Thu, 22 Jun 2006 21:09:12 GMT (envelope-from bushman@freebsd.org) Date: Thu, 22 Jun 2006 21:09:12 GMT Message-Id: <200606222109.k5ML9CvM012804@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99830 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 21:09:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=99830 Change 99830 by bushman@bushman_nss_ldap_cached on 2006/06/22 21:08:12 __weak_references on module registration functions were not properly replaced during statically linked application build. So there are no more __weak references used for these functions. libc.a always links them in from the nss-modules and libc.so uses stubs, defined in net/nss_stubs.c. The only drawback of this solution is that libc's Makefile now depends slightly more on bsd.lib.mk - because it now uses SOBJS variable, which can be considered an internal bsd.lib.mk variable. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_backends.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_stubs.c#1 add Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/Makefile#6 (text+ko) ==== @@ -121,17 +121,26 @@ .endif NSS_STATIC+= ${.OBJDIR}/../libnssutil/libnssutil.a +# NSS-modules should be linked into the libc.a nss_static_modules.o: ${LD} -o ${.TARGET} -r --whole-archive ${NSS_STATIC} + +# libc.so should have stubs instead of module-load +# functions +nss_stubs.So: + ${CC} ${PICFLAG} -DPIC ${CFLAGS}\ + -c ${.CURDIR}/net/nss_stubs.c -o ${.TARGET} + .if ${MK_PROFILE} != "no" nss_static_modules.po: ${LD} -o ${.TARGET} -r --whole-archive ${NSS_STATIC} .endif -DPSRC= nss_static_modules.c +DPSRC= nss_static_modules.c nss_stubs.c STATICOBJS+= nss_static_modules.o -CLEANFILES+= nss_static_modules.o +SOBJS+= nss_stubs.So +CLEANFILES+= nss_static_modules.o nss_stubs.So .include ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_backends.h#4 (text+ko) ==== @@ -42,5 +42,5 @@ NSS_BACKEND( nis, _nis_nss_module_register ) #endif NSS_BACKEND( compat, _compat_nss_module_register ) -NSS_BACKEND( icmp, _icmp_nss_module_register ) +/* NSS_BACKEND( icmp, _icmp_nss_module_register ) */ #endif From owner-p4-projects@FreeBSD.ORG Thu Jun 22 22:07:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3CD1D16A4CB; Thu, 22 Jun 2006 22:07:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 18BDF16A4C2 for ; Thu, 22 Jun 2006 22:07:31 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A72545938 for ; Thu, 22 Jun 2006 22:07:28 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MM7SC9017197 for ; Thu, 22 Jun 2006 22:07:28 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MM7RVL017194 for perforce@freebsd.org; Thu, 22 Jun 2006 22:07:27 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 22:07:27 GMT Message-Id: <200606222207.k5MM7RVL017194@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 99837 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 22:07:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=99837 Change 99837 by imp@imp_lighthouse on 2006/06/22 22:07:13 Kill debug Affected files ... .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#26 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#26 (text+ko) ==== @@ -456,7 +456,6 @@ init_param2(physmem); avail_end = KERNPHYSADDR + memsize - 1; kdb_init(); - printf("Args: %p %p\n", arg, arg2); return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP - sizeof(struct pcb))); } From owner-p4-projects@FreeBSD.ORG Thu Jun 22 22:53:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 097C116A6F6; Thu, 22 Jun 2006 22:53:14 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CA5A416A6E9 for ; Thu, 22 Jun 2006 22:53:13 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2114044F40 for ; Thu, 22 Jun 2006 22:00:17 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MM0HfJ014960 for ; Thu, 22 Jun 2006 22:00:17 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MM0GSZ014957 for perforce@freebsd.org; Thu, 22 Jun 2006 22:00:16 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 22 Jun 2006 22:00:16 GMT Message-Id: <200606222200.k5MM0GSZ014957@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 99832 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 22 Jun 2006 22:53:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=99832 Change 99832 by gabor@spitfire on 2006/06/22 21:59:16 Fix my previous submit. That one only checked PKG_DBDIR if DESTDIR was set and only used pkg_info otherwise to determine if the given port is already installed, but in this case both method should be used. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#8 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#8 (text+ko) ==== @@ -3648,7 +3648,7 @@ fi; \ done; \ fi; -.else +.endif @if [ -d ${PKG_DBDIR}/${PKGNAME} -o -n "$${found_package}" ]; then \ if [ -d ${PKG_DBDIR}/${PKGNAME} ]; then \ ${ECHO_CMD} "===> ${PKGNAME} is already installed"; \ @@ -3662,7 +3662,6 @@ ${ECHO_CMD} " in your environment or the \"make install\" command line."; \ exit 1; \ fi -.endif .else @${DO_NADA} .endif From owner-p4-projects@FreeBSD.ORG Fri Jun 23 01:05:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 543AD16A4B3; Fri, 23 Jun 2006 01:05:49 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 246D816A49E for ; Fri, 23 Jun 2006 01:05:46 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6438544F69 for ; Thu, 22 Jun 2006 20:19:11 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MKJAXV001794 for ; Thu, 22 Jun 2006 20:19:10 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MKJA1s001791 for perforce@freebsd.org; Thu, 22 Jun 2006 20:19:10 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 22 Jun 2006 20:19:10 GMT Message-Id: <200606222019.k5MKJA1s001791@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 99828 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 01:05:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=99828 Change 99828 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/22 20:18:47 csjp's fcntl Giant pushdown Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_pipe.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_socket.c#5 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_descrip.c#7 (text+ko) ==== ==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_pipe.c#4 (text+ko) ==== ==== //depot/projects/kmacy_sun4v/src/sys/kern/sys_socket.c#5 (text+ko) ==== @@ -63,7 +63,7 @@ .fo_kqfilter = soo_kqfilter, .fo_stat = soo_stat, .fo_close = soo_close, - .fo_flags = DFLAG_PASSABLE + .fo_flags = DFLAG_PASSABLE | DFLAG_MPSAFE }; /* ARGSUSED */ From owner-p4-projects@FreeBSD.ORG Fri Jun 23 03:02:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3289216A4C2; Fri, 23 Jun 2006 03:02:01 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0DF6916A4A5 for ; Fri, 23 Jun 2006 03:02:01 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DE05458A4 for ; Thu, 22 Jun 2006 22:06:26 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MM6PV7017122 for ; Thu, 22 Jun 2006 22:06:25 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MM6PeF017119 for perforce@freebsd.org; Thu, 22 Jun 2006 22:06:25 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 22:06:25 GMT Message-Id: <200606222206.k5MM6PeF017119@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 99835 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 03:02:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=99835 Change 99835 by imp@imp_lighthouse on 2006/06/22 22:05:33 Allow for GPIO configuration Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pio.c#11 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_pio.c#11 (text+ko) ==== @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -118,6 +120,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +255,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; +} + +void +at91_pio_gpio_set(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_SODR / 4] = data_mask; +} + +void +at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_CODR / 4] = data_mask; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), From owner-p4-projects@FreeBSD.ORG Fri Jun 23 03:02:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A4B316A4C4; Fri, 23 Jun 2006 03:02:03 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 686BC16A4A6 for ; Fri, 23 Jun 2006 03:02:03 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 873F7455AA for ; Thu, 22 Jun 2006 22:04:22 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MM4MSG016916 for ; Thu, 22 Jun 2006 22:04:22 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MM4Mb5016913 for perforce@freebsd.org; Thu, 22 Jun 2006 22:04:22 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 22:04:22 GMT Message-Id: <200606222204.k5MM4Mb5016913@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 99833 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 03:02:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=99833 Change 99833 by imp@imp_lighthouse on 2006/06/22 22:04:21 Don't steal PC7 for reset of MII. SN2 has had this mod reverted, so we no longer need this in the boot code. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/main.c#12 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/main.c#12 (text+ko) ==== @@ -48,11 +48,7 @@ printf("\r\nBoot\r\n"); SPI_InitFlash(); #ifdef TSC_FPGA - AT91C_BASE_PIOC->PIO_PER = AT91C_PIO_PC7; - AT91C_BASE_PIOC->PIO_OER = AT91C_PIO_PC7; - AT91C_BASE_PIOC->PIO_CODR = AT91C_PIO_PC7; fpga_load(); - AT91C_BASE_PIOC->PIO_SODR = AT91C_PIO_PC7; #endif EMAC_Init(); LoadBootCommands(); From owner-p4-projects@FreeBSD.ORG Fri Jun 23 03:03:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93A4C16A4A5; Fri, 23 Jun 2006 03:03:08 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7240D16A481 for ; Fri, 23 Jun 2006 03:03:08 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 74F94458A6 for ; Thu, 22 Jun 2006 22:06:26 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MM6QqG017129 for ; Thu, 22 Jun 2006 22:06:26 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MM6Q0A017125 for perforce@freebsd.org; Thu, 22 Jun 2006 22:06:26 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 22:06:26 GMT Message-Id: <200606222206.k5MM6Q0A017125@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 99836 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 03:03:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=99836 Change 99836 by imp@imp_lighthouse on 2006/06/22 22:06:24 Attempt peripheral config for the KB9202 and TSC board. We'll need to cope with divergence soon... Affected files ... .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#25 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#25 (text+ko) ==== @@ -93,6 +93,8 @@ #include #include +#include +#include #define KERNEL_PT_SYS 0 /* Page table for mapping proc0 zero page */ #define KERNEL_PT_KERN 1 @@ -183,11 +185,11 @@ #endif static long -board_init(void) +ramsize(void) { uint32_t *SDRAMC = (uint32_t *)(AT91RM92_BASE + AT91RM92_SDRAMC_BASE); uint32_t cr, mr; - int banks, rows, cols, bw; /* log2 size */ + int banks, rows, cols, bw; cr = SDRAMC[AT91RM92_SDRAMC_CR / 4]; mr = SDRAMC[AT91RM92_SDRAMC_MR / 4]; @@ -198,6 +200,29 @@ return (1 << (cols + rows + banks + bw)); } +static long +board_init(void) +{ + /* PIOA's A periph: Turn USART 0 and 2's TX/RX pins */ + at91_pio_use_periph_a(AT91RM92_PIOA_BASE, + AT91C_PA17_TXD0 | AT91C_PA18_RXD0 | + AT91C_PA23_TXD2 | AT91C_PA22_RXD2); + /* PIOA's B periph: Turn USART 3's TX/RX pins */ + at91_pio_use_periph_b(AT91RM92_PIOA_BASE, + AT91C_PA5_TXD3 | AT91C_PA6_RXD3); + /* PIOB's A periph: Turn USART 1's TX/RX pins */ + at91_pio_use_periph_a(AT91RM92_PIOB_BASE, + AT91C_PB20_TXD1 | AT91C_PB21_RXD1); + + /* Pin assignment */ + /* Assert PA24 low -- talk to rubidium */ + at91_pio_use_gpio(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); + at91_pio_gpio_output(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); + at91_pio_gpio_clear(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); + + return (ramsize()); +} + void * initarm(void *arg, void *arg2) { @@ -431,6 +456,7 @@ init_param2(physmem); avail_end = KERNPHYSADDR + memsize - 1; kdb_init(); + printf("Args: %p %p\n", arg, arg2); return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP - sizeof(struct pcb))); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 03:03:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D7B3716A582; Fri, 23 Jun 2006 03:03:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9AAFA16A562 for ; Fri, 23 Jun 2006 03:03:15 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ADEA1457C0 for ; Thu, 22 Jun 2006 22:05:24 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5MM5OTp016995 for ; Thu, 22 Jun 2006 22:05:24 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5MM5N72016992 for perforce@freebsd.org; Thu, 22 Jun 2006 22:05:23 GMT (envelope-from imp@freebsd.org) Date: Thu, 22 Jun 2006 22:05:23 GMT Message-Id: <200606222205.k5MM5N72016992@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 99834 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 03:03:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=99834 Change 99834 by imp@imp_lighthouse on 2006/06/22 22:05:11 PIO pin definitions, now shared between boot loader and kernel. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pio_rm9200.h#1 add .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/at91rm9200.h#4 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/at91rm9200.h#4 (text) ==== @@ -2331,323 +2331,7 @@ // ========== Register definition for BFC peripheral ========== #define AT91C_BFC_MR ((AT91_REG *) 0xFFFFFFC0) // (BFC) BFC Mode Register -// ***************************************************************************** -// PIO DEFINITIONS FOR AT91RM9200 -// ***************************************************************************** -#define AT91C_PIO_PA0 (1u << 0) // Pin Controlled by PA0 -#define AT91C_PA0_MISO (AT91C_PIO_PA0) // SPI Master In Slave -#define AT91C_PA0_PCK3 (AT91C_PIO_PA0) // PMC Programmable Clock Output 3 -#define AT91C_PIO_PA1 (1u << 1) // Pin Controlled by PA1 -#define AT91C_PA1_MOSI (AT91C_PIO_PA1) // SPI Master Out Slave -#define AT91C_PA1_PCK0 (AT91C_PIO_PA1) // PMC Programmable Clock Output 0 -#define AT91C_PIO_PA10 (1u << 10) // Pin Controlled by PA10 -#define AT91C_PA10_ETX1 (AT91C_PIO_PA10) // Ethernet MAC Transmit Data 1 -#define AT91C_PA10_MCDB1 (AT91C_PIO_PA10) // Multimedia Card B Data 1 -#define AT91C_PIO_PA11 (1u << 11) // Pin Controlled by PA11 -#define AT91C_PA11_ECRS_ECRSDV (AT91C_PIO_PA11) // Ethernet MAC Carrier Sense/Carrier Sense and Data Valid -#define AT91C_PA11_MCDB2 (AT91C_PIO_PA11) // Multimedia Card B Data 2 -#define AT91C_PIO_PA12 (1u << 12) // Pin Controlled by PA12 -#define AT91C_PA12_ERX0 (AT91C_PIO_PA12) // Ethernet MAC Receive Data 0 -#define AT91C_PA12_MCDB3 (AT91C_PIO_PA12) // Multimedia Card B Data 3 -#define AT91C_PIO_PA13 (1u << 13) // Pin Controlled by PA13 -#define AT91C_PA13_ERX1 (AT91C_PIO_PA13) // Ethernet MAC Receive Data 1 -#define AT91C_PA13_TCLK0 (AT91C_PIO_PA13) // Timer Counter 0 external clock input -#define AT91C_PIO_PA14 (1u << 14) // Pin Controlled by PA14 -#define AT91C_PA14_ERXER (AT91C_PIO_PA14) // Ethernet MAC Receive Error -#define AT91C_PA14_TCLK1 (AT91C_PIO_PA14) // Timer Counter 1 external clock input -#define AT91C_PIO_PA15 (1u << 15) // Pin Controlled by PA15 -#define AT91C_PA15_EMDC (AT91C_PIO_PA15) // Ethernet MAC Management Data Clock -#define AT91C_PA15_TCLK2 (AT91C_PIO_PA15) // Timer Counter 2 external clock input -#define AT91C_PIO_PA16 (1u << 16) // Pin Controlled by PA16 -#define AT91C_PA16_EMDIO (AT91C_PIO_PA16) // Ethernet MAC Management Data Input/Output -#define AT91C_PA16_IRQ6 (AT91C_PIO_PA16) // AIC Interrupt input 6 -#define AT91C_PIO_PA17 (1u << 17) // Pin Controlled by PA17 -#define AT91C_PA17_TXD0 (AT91C_PIO_PA17) // USART 0 Transmit Data -#define AT91C_PA17_TIOA0 (AT91C_PIO_PA17) // Timer Counter 0 Multipurpose Timer I/O Pin A -#define AT91C_PIO_PA18 (1u << 18) // Pin Controlled by PA18 -#define AT91C_PA18_RXD0 (AT91C_PIO_PA18) // USART 0 Receive Data -#define AT91C_PA18_TIOB0 (AT91C_PIO_PA18) // Timer Counter 0 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PA19 (1u << 19) // Pin Controlled by PA19 -#define AT91C_PA19_SCK0 (AT91C_PIO_PA19) // USART 0 Serial Clock -#define AT91C_PA19_TIOA1 (AT91C_PIO_PA19) // Timer Counter 1 Multipurpose Timer I/O Pin A -#define AT91C_PIO_PA2 (1u << 2) // Pin Controlled by PA2 -#define AT91C_PA2_SPCK (AT91C_PIO_PA2) // SPI Serial Clock -#define AT91C_PA2_IRQ4 (AT91C_PIO_PA2) // AIC Interrupt Input 4 -#define AT91C_PIO_PA20 (1u << 20) // Pin Controlled by PA20 -#define AT91C_PA20_CTS0 (AT91C_PIO_PA20) // USART 0 Clear To Send -#define AT91C_PA20_TIOB1 (AT91C_PIO_PA20) // Timer Counter 1 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PA21 (1u << 21) // Pin Controlled by PA21 -#define AT91C_PA21_RTS0 (AT91C_PIO_PA21) // Usart 0 Ready To Send -#define AT91C_PA21_TIOA2 (AT91C_PIO_PA21) // Timer Counter 2 Multipurpose Timer I/O Pin A -#define AT91C_PIO_PA22 (1u << 22) // Pin Controlled by PA22 -#define AT91C_PA22_RXD2 (AT91C_PIO_PA22) // USART 2 Receive Data -#define AT91C_PA22_TIOB2 (AT91C_PIO_PA22) // Timer Counter 2 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PA23 (1u << 23) // Pin Controlled by PA23 -#define AT91C_PA23_TXD2 (AT91C_PIO_PA23) // USART 2 Transmit Data -#define AT91C_PA23_IRQ3 (AT91C_PIO_PA23) // Interrupt input 3 -#define AT91C_PIO_PA24 (1u << 24) // Pin Controlled by PA24 -#define AT91C_PA24_SCK2 (AT91C_PIO_PA24) // USART2 Serial Clock -#define AT91C_PA24_PCK1 (AT91C_PIO_PA24) // PMC Programmable Clock Output 1 -#define AT91C_PIO_PA25 (1u << 25) // Pin Controlled by PA25 -#define AT91C_PA25_TWD (AT91C_PIO_PA25) // TWI Two-wire Serial Data -#define AT91C_PA25_IRQ2 (AT91C_PIO_PA25) // Interrupt input 2 -#define AT91C_PIO_PA26 (1u << 26) // Pin Controlled by PA26 -#define AT91C_PA26_TWCK (AT91C_PIO_PA26) // TWI Two-wire Serial Clock -#define AT91C_PA26_IRQ1 (AT91C_PIO_PA26) // Interrupt input 1 -#define AT91C_PIO_PA27 (1u << 27) // Pin Controlled by PA27 -#define AT91C_PA27_MCCK (AT91C_PIO_PA27) // Multimedia Card Clock -#define AT91C_PA27_TCLK3 (AT91C_PIO_PA27) // Timer Counter 3 External Clock Input -#define AT91C_PIO_PA28 (1u << 28) // Pin Controlled by PA28 -#define AT91C_PA28_MCCDA (AT91C_PIO_PA28) // Multimedia Card A Command -#define AT91C_PA28_TCLK4 (AT91C_PIO_PA28) // Timer Counter 4 external Clock Input -#define AT91C_PIO_PA29 (1u << 29) // Pin Controlled by PA29 -#define AT91C_PA29_MCDA0 (AT91C_PIO_PA29) // Multimedia Card A Data 0 -#define AT91C_PA29_TCLK5 (AT91C_PIO_PA29) // Timer Counter 5 external clock input -#define AT91C_PIO_PA3 (1u << 3) // Pin Controlled by PA3 -#define AT91C_PA3_NPCS0 (AT91C_PIO_PA3) // SPI Peripheral Chip Select 0 -#define AT91C_PA3_IRQ5 (AT91C_PIO_PA3) // AIC Interrupt Input 5 -#define AT91C_PIO_PA30 (1u << 30) // Pin Controlled by PA30 -#define AT91C_PA30_DRXD (AT91C_PIO_PA30) // DBGU Debug Receive Data -#define AT91C_PA30_CTS2 (AT91C_PIO_PA30) // Usart 2 Clear To Send -#define AT91C_PIO_PA31 (1u << 31) // Pin Controlled by PA31 -#define AT91C_PA31_DTXD (AT91C_PIO_PA31) // DBGU Debug Transmit Data -#define AT91C_PA31_RTS2 (AT91C_PIO_PA31) // USART 2 Ready To Send -#define AT91C_PIO_PA4 (1u << 4) // Pin Controlled by PA4 -#define AT91C_PA4_NPCS1 (AT91C_PIO_PA4) // SPI Peripheral Chip Select 1 -#define AT91C_PA4_PCK1 (AT91C_PIO_PA4) // PMC Programmable Clock Output 1 -#define AT91C_PIO_PA5 (1u << 5) // Pin Controlled by PA5 -#define AT91C_PA5_NPCS2 (AT91C_PIO_PA5) // SPI Peripheral Chip Select 2 -#define AT91C_PA5_TXD3 (AT91C_PIO_PA5) // USART 3 Transmit Data -#define AT91C_PIO_PA6 (1u << 6) // Pin Controlled by PA6 -#define AT91C_PA6_NPCS3 (AT91C_PIO_PA6) // SPI Peripheral Chip Select 3 -#define AT91C_PA6_RXD3 (AT91C_PIO_PA6) // USART 3 Receive Data -#define AT91C_PIO_PA7 (1u << 7) // Pin Controlled by PA7 -#define AT91C_PA7_ETXCK_EREFCK (AT91C_PIO_PA7) // Ethernet MAC Transmit Clock/Reference Clock -#define AT91C_PA7_PCK2 (AT91C_PIO_PA7) // PMC Programmable Clock 2 -#define AT91C_PIO_PA8 (1u << 8) // Pin Controlled by PA8 -#define AT91C_PA8_ETXEN (AT91C_PIO_PA8) // Ethernet MAC Transmit Enable -#define AT91C_PA8_MCCDB (AT91C_PIO_PA8) // Multimedia Card B Command -#define AT91C_PIO_PA9 (1u << 9) // Pin Controlled by PA9 -#define AT91C_PA9_ETX0 (AT91C_PIO_PA9) // Ethernet MAC Transmit Data 0 -#define AT91C_PA9_MCDB0 (AT91C_PIO_PA9) // Multimedia Card B Data 0 -#define AT91C_PIO_PB0 (1u << 0) // Pin Controlled by PB0 -#define AT91C_PB0_TF0 (AT91C_PIO_PB0) // SSC Transmit Frame Sync 0 -#define AT91C_PB0_TIOB3 (AT91C_PIO_PB0) // Timer Counter 3 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PB1 (1u << 1) // Pin Controlled by PB1 -#define AT91C_PB1_TK0 (AT91C_PIO_PB1) // SSC Transmit Clock 0 -#define AT91C_PB1_CTS3 (AT91C_PIO_PB1) // USART 3 Clear To Send -#define AT91C_PIO_PB10 (1u << 10) // Pin Controlled by PB10 -#define AT91C_PB10_RK1 (AT91C_PIO_PB10) // SSC Receive Clock 1 -#define AT91C_PB10_TIOA5 (AT91C_PIO_PB10) // Timer Counter 5 Multipurpose Timer I/O Pin A -#define AT91C_PIO_PB11 (1u << 11) // Pin Controlled by PB11 -#define AT91C_PB11_RF1 (AT91C_PIO_PB11) // SSC Receive Frame Sync 1 -#define AT91C_PB11_TIOB5 (AT91C_PIO_PB11) // Timer Counter 5 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PB12 (1u << 12) // Pin Controlled by PB12 -#define AT91C_PB12_TF2 (AT91C_PIO_PB12) // SSC Transmit Frame Sync 2 -#define AT91C_PB12_ETX2 (AT91C_PIO_PB12) // Ethernet MAC Transmit Data 2 -#define AT91C_PIO_PB13 (1u << 13) // Pin Controlled by PB13 -#define AT91C_PB13_TK2 (AT91C_PIO_PB13) // SSC Transmit Clock 2 -#define AT91C_PB13_ETX3 (AT91C_PIO_PB13) // Ethernet MAC Transmit Data 3 -#define AT91C_PIO_PB14 (1u << 14) // Pin Controlled by PB14 -#define AT91C_PB14_TD2 (AT91C_PIO_PB14) // SSC Transmit Data 2 -#define AT91C_PB14_ETXER (AT91C_PIO_PB14) // Ethernet MAC Transmikt Coding Error -#define AT91C_PIO_PB15 (1u << 15) // Pin Controlled by PB15 -#define AT91C_PB15_RD2 (AT91C_PIO_PB15) // SSC Receive Data 2 -#define AT91C_PB15_ERX2 (AT91C_PIO_PB15) // Ethernet MAC Receive Data 2 -#define AT91C_PIO_PB16 (1u << 16) // Pin Controlled by PB16 -#define AT91C_PB16_RK2 (AT91C_PIO_PB16) // SSC Receive Clock 2 -#define AT91C_PB16_ERX3 (AT91C_PIO_PB16) // Ethernet MAC Receive Data 3 -#define AT91C_PIO_PB17 (1u << 17) // Pin Controlled by PB17 -#define AT91C_PB17_RF2 (AT91C_PIO_PB17) // SSC Receive Frame Sync 2 -#define AT91C_PB17_ERXDV (AT91C_PIO_PB17) // Ethernet MAC Receive Data Valid -#define AT91C_PIO_PB18 (1u << 18) // Pin Controlled by PB18 -#define AT91C_PB18_RI1 (AT91C_PIO_PB18) // USART 1 Ring Indicator -#define AT91C_PB18_ECOL (AT91C_PIO_PB18) // Ethernet MAC Collision Detected -#define AT91C_PIO_PB19 (1u << 19) // Pin Controlled by PB19 -#define AT91C_PB19_DTR1 (AT91C_PIO_PB19) // USART 1 Data Terminal ready -#define AT91C_PB19_ERXCK (AT91C_PIO_PB19) // Ethernet MAC Receive Clock -#define AT91C_PIO_PB2 (1u << 2) // Pin Controlled by PB2 -#define AT91C_PB2_TD0 (AT91C_PIO_PB2) // SSC Transmit data -#define AT91C_PB2_SCK3 (AT91C_PIO_PB2) // USART 3 Serial Clock -#define AT91C_PIO_PB20 (1u << 20) // Pin Controlled by PB20 -#define AT91C_PB20_TXD1 (AT91C_PIO_PB20) // USART 1 Transmit Data -#define AT91C_PIO_PB21 (1u << 21) // Pin Controlled by PB21 -#define AT91C_PB21_RXD1 (AT91C_PIO_PB21) // USART 1 Receive Data -#define AT91C_PIO_PB22 (1u << 22) // Pin Controlled by PB22 -#define AT91C_PB22_SCK1 (AT91C_PIO_PB22) // USART1 Serial Clock -#define AT91C_PIO_PB23 (1u << 23) // Pin Controlled by PB23 -#define AT91C_PB23_DCD1 (AT91C_PIO_PB23) // USART 1 Data Carrier Detect -#define AT91C_PIO_PB24 (1u << 24) // Pin Controlled by PB24 -#define AT91C_PB24_CTS1 (AT91C_PIO_PB24) // USART 1 Clear To Send -#define AT91C_PIO_PB25 (1u << 25) // Pin Controlled by PB25 -#define AT91C_PB25_DSR1 (AT91C_PIO_PB25) // USART 1 Data Set ready -#define AT91C_PB25_EF100 (AT91C_PIO_PB25) // Ethernet MAC Force 100 Mbits/sec -#define AT91C_PIO_PB26 (1u << 26) // Pin Controlled by PB26 -#define AT91C_PB26_RTS1 (AT91C_PIO_PB26) // Usart 0 Ready To Send -#define AT91C_PIO_PB27 (1u << 27) // Pin Controlled by PB27 -#define AT91C_PB27_PCK0 (AT91C_PIO_PB27) // PMC Programmable Clock Output 0 -#define AT91C_PIO_PB28 (1u << 28) // Pin Controlled by PB28 -#define AT91C_PB28_FIQ (AT91C_PIO_PB28) // AIC Fast Interrupt Input -#define AT91C_PIO_PB29 (1u << 29) // Pin Controlled by PB29 -#define AT91C_PB29_IRQ0 (AT91C_PIO_PB29) // Interrupt input 0 -#define AT91C_PIO_PB3 (1u << 3) // Pin Controlled by PB3 -#define AT91C_PB3_RD0 (AT91C_PIO_PB3) // SSC Receive Data -#define AT91C_PB3_MCDA1 (AT91C_PIO_PB3) // Multimedia Card A Data 1 -#define AT91C_PIO_PB4 (1u << 4) // Pin Controlled by PB4 -#define AT91C_PB4_RK0 (AT91C_PIO_PB4) // SSC Receive Clock -#define AT91C_PB4_MCDA2 (AT91C_PIO_PB4) // Multimedia Card A Data 2 -#define AT91C_PIO_PB5 (1u << 5) // Pin Controlled by PB5 -#define AT91C_PB5_RF0 (AT91C_PIO_PB5) // SSC Receive Frame Sync 0 -#define AT91C_PB5_MCDA3 (AT91C_PIO_PB5) // Multimedia Card A Data 3 -#define AT91C_PIO_PB6 (1u << 6) // Pin Controlled by PB6 -#define AT91C_PB6_TF1 (AT91C_PIO_PB6) // SSC Transmit Frame Sync 1 -#define AT91C_PB6_TIOA3 (AT91C_PIO_PB6) // Timer Counter 4 Multipurpose Timer I/O Pin A -#define AT91C_PIO_PB7 (1u << 7) // Pin Controlled by PB7 -#define AT91C_PB7_TK1 (AT91C_PIO_PB7) // SSC Transmit Clock 1 -#define AT91C_PB7_TIOB3 (AT91C_PIO_PB7) // Timer Counter 3 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PB8 (1u << 8) // Pin Controlled by PB8 -#define AT91C_PB8_TD1 (AT91C_PIO_PB8) // SSC Transmit Data 1 -#define AT91C_PB8_TIOA4 (AT91C_PIO_PB8) // Timer Counter 4 Multipurpose Timer I/O Pin A -#define AT91C_PIO_PB9 (1u << 9) // Pin Controlled by PB9 -#define AT91C_PB9_RD1 (AT91C_PIO_PB9) // SSC Receive Data 1 -#define AT91C_PB9_TIOB4 (AT91C_PIO_PB9) // Timer Counter 4 Multipurpose Timer I/O Pin B -#define AT91C_PIO_PC0 (1u << 0) // Pin Controlled by PC0 -#define AT91C_PC0_BFCK (AT91C_PIO_PC0) // Burst Flash Clock -#define AT91C_PIO_PC1 (1u << 1) // Pin Controlled by PC1 -#define AT91C_PC1_BFRDY_SMOE (AT91C_PIO_PC1) // Burst Flash Ready -#define AT91C_PIO_PC10 (1u << 10) // Pin Controlled by PC10 -#define AT91C_PC10_NCS4_CFCS (AT91C_PIO_PC10) // Compact Flash Chip Select -#define AT91C_PIO_PC11 (1u << 11) // Pin Controlled by PC11 -#define AT91C_PC11_NCS5_CFCE1 (AT91C_PIO_PC11) // Chip Select 5 / Compact Flash Chip Enable 1 -#define AT91C_PIO_PC12 (1u << 12) // Pin Controlled by PC12 -#define AT91C_PC12_NCS6_CFCE2 (AT91C_PIO_PC12) // Chip Select 6 / Compact Flash Chip Enable 2 -#define AT91C_PIO_PC13 (1u << 13) // Pin Controlled by PC13 -#define AT91C_PC13_NCS7 (AT91C_PIO_PC13) // Chip Select 7 -#define AT91C_PIO_PC14 (1u << 14) // Pin Controlled by PC14 -#define AT91C_PIO_PC15 (1u << 15) // Pin Controlled by PC15 -#define AT91C_PIO_PC16 (1u << 16) // Pin Controlled by PC16 -#define AT91C_PC16_D16 (AT91C_PIO_PC16) // Data Bus [16] -#define AT91C_PIO_PC17 (1u << 17) // Pin Controlled by PC17 -#define AT91C_PC17_D17 (AT91C_PIO_PC17) // Data Bus [17] -#define AT91C_PIO_PC18 (1u << 18) // Pin Controlled by PC18 -#define AT91C_PC18_D18 (AT91C_PIO_PC18) // Data Bus [18] -#define AT91C_PIO_PC19 (1u << 19) // Pin Controlled by PC19 -#define AT91C_PC19_D19 (AT91C_PIO_PC19) // Data Bus [19] -#define AT91C_PIO_PC2 (1u << 2) // Pin Controlled by PC2 -#define AT91C_PC2_BFAVD (AT91C_PIO_PC2)u // Burst Flash Address Valid -#define AT91C_PIO_PC20 (1u << 20) // Pin Controlled by PC20 -#define AT91C_PC20_D20 (AT91C_PIO_PC20) // Data Bus [20] -#define AT91C_PIO_PC21 (1u << 21) // Pin Controlled by PC21 -#define AT91C_PC21_D21 (AT91C_PIO_PC21) // Data Bus [21] -#define AT91C_PIO_PC22 (1u << 22) // Pin Controlled by PC22 -#define AT91C_PC22_D22 (AT91C_PIO_PC22) // Data Bus [22] -#define AT91C_PIO_PC23 (1u << 23) // Pin Controlled by PC23 -#define AT91C_PC23_D23 (AT91C_PIO_PC23) // Data Bus [23] -#define AT91C_PIO_PC24 (1u << 24) // Pin Controlled by PC24 -#define AT91C_PC24_D24 (AT91C_PIO_PC24) // Data Bus [24] -#define AT91C_PIO_PC25 (1u << 25) // Pin Controlled by PC25 -#define AT91C_PC25_D25 (AT91C_PIO_PC25) // Data Bus [25] -#define AT91C_PIO_PC26 (1u << 26) // Pin Controlled by PC26 -#define AT91C_PC26_D26 (AT91C_PIO_PC26) // Data Bus [26] -#define AT91C_PIO_PC27 (1u << 27) // Pin Controlled by PC27 -#define AT91C_PC27_D27 (AT91C_PIO_PC27) // Data Bus [27] -#define AT91C_PIO_PC28 (1u << 28) // Pin Controlled by PC28 -#define AT91C_PC28_D28 (AT91C_PIO_PC28) // Data Bus [28] -#define AT91C_PIO_PC29 (1u << 29) // Pin Controlled by PC29 -#define AT91C_PC29_D29 (AT91C_PIO_PC29) // Data Bus [29] -#define AT91C_PIO_PC3 (1u << 3) // Pin Controlled by PC3 -#define AT91C_PC3_BFBAA_SMWE (AT91C_PIO_PC3) // Burst Flash Address Advance / SmartMedia Write Enable -#define AT91C_PIO_PC30 (1u << 30) // Pin Controlled by PC30 -#define AT91C_PC30_D30 (AT91C_PIO_PC30) // Data Bus [30] -#define AT91C_PIO_PC31 (1u << 31) // Pin Controlled by PC31 -#define AT91C_PC31_D31 (AT91C_PIO_PC31) // Data Bus [31] -#define AT91C_PIO_PC4 (1u << 4) // Pin Controlled by PC4 -#define AT91C_PC4_BFOE (AT91C_PIO_PC4) // Burst Flash Output Enable -#define AT91C_PIO_PC5 (1u << 5) // Pin Controlled by PC5 -#define AT91C_PC5_BFWE (AT91C_PIO_PC5) // Burst Flash Write Enable -#define AT91C_PIO_PC6 (1u << 6) // Pin Controlled by PC6 -#define AT91C_PC6_NWAIT (AT91C_PIO_PC6) // NWAIT -#define AT91C_PIO_PC7 (1u << 7) // Pin Controlled by PC7 -#define AT91C_PC7_A23 (AT91C_PIO_PC7) // Address Bus[23] -#define AT91C_PIO_PC8 (1u << 8) // Pin Controlled by PC8 -#define AT91C_PC8_A24 (AT91C_PIO_PC8) // Address Bus[24] -#define AT91C_PIO_PC9 (1u << 9) // Pin Controlled by PC9 -#define AT91C_PC9_A25_CFRNW (AT91C_PIO_PC9) // Address Bus[25] / Compact Flash Read Not Write -#define AT91C_PIO_PD0 (1u << 0) // Pin Controlled by PD0 -#define AT91C_PD0_ETX0 (AT91C_PIO_PD0) // Ethernet MAC Transmit Data 0 -#define AT91C_PIO_PD1 (1u << 1) // Pin Controlled by PD1 -#define AT91C_PD1_ETX1 (AT91C_PIO_PD1) // Ethernet MAC Transmit Data 1 -#define AT91C_PIO_PD10 (1u << 10) // Pin Controlled by PD10 -#define AT91C_PD10_PCK3 (AT91C_PIO_PD10) // PMC Programmable Clock Output 3 -#define AT91C_PD10_TPS1 (AT91C_PIO_PD10) // ETM ARM9 pipeline status 1 -#define AT91C_PIO_PD11 (1u << 11) // Pin Controlled by PD11 -#define AT91C_PD11_ (AT91C_PIO_PD11) // -#define AT91C_PD11_TPS2 (AT91C_PIO_PD11) // ETM ARM9 pipeline status 2 -#define AT91C_PIO_PD12 (1u << 12) // Pin Controlled by PD12 -#define AT91C_PD12_ (AT91C_PIO_PD12) // -#define AT91C_PD12_TPK0 (AT91C_PIO_PD12) // ETM Trace Packet 0 -#define AT91C_PIO_PD13 (1u << 13) // Pin Controlled by PD13 -#define AT91C_PD13_ (AT91C_PIO_PD13) // -#define AT91C_PD13_TPK1 (AT91C_PIO_PD13) // ETM Trace Packet 1 -#define AT91C_PIO_PD14 (1u << 14) // Pin Controlled by PD14 -#define AT91C_PD14_ (AT91C_PIO_PD14) // -#define AT91C_PD14_TPK2 (AT91C_PIO_PD14) // ETM Trace Packet 2 -#define AT91C_PIO_PD15 (1u << 15) // Pin Controlled by PD15 -#define AT91C_PD15_TD0 (AT91C_PIO_PD15) // SSC Transmit data -#define AT91C_PD15_TPK3 (AT91C_PIO_PD15) // ETM Trace Packet 3 -#define AT91C_PIO_PD16 (1u << 16) // Pin Controlled by PD16 -#define AT91C_PD16_TD1 (AT91C_PIO_PD16) // SSC Transmit Data 1 -#define AT91C_PD16_TPK4 (AT91C_PIO_PD16) // ETM Trace Packet 4 -#define AT91C_PIO_PD17 (1u << 17) // Pin Controlled by PD17 -#define AT91C_PD17_TD2 (AT91C_PIO_PD17) // SSC Transmit Data 2 -#define AT91C_PD17_TPK5 (AT91C_PIO_PD17) // ETM Trace Packet 5 -#define AT91C_PIO_PD18 (1u << 18) // Pin Controlled by PD18 -#define AT91C_PD18_NPCS1 (AT91C_PIO_PD18) // SPI Peripheral Chip Select 1 -#define AT91C_PD18_TPK6 (AT91C_PIO_PD18) // ETM Trace Packet 6 -#define AT91C_PIO_PD19 (1u << 19) // Pin Controlled by PD19 -#define AT91C_PD19_NPCS2 (AT91C_PIO_PD19) // SPI Peripheral Chip Select 2 -#define AT91C_PD19_TPK7 (AT91C_PIO_PD19) // ETM Trace Packet 7 -#define AT91C_PIO_PD2 (1u << 2) // Pin Controlled by PD2 -#define AT91C_PD2_ETX2 (AT91C_PIO_PD2) // Ethernet MAC Transmit Data 2 -#define AT91C_PIO_PD20 (1u << 20) // Pin Controlled by PD20 -#define AT91C_PD20_NPCS3 (AT91C_PIO_PD20) // SPI Peripheral Chip Select 3 -#define AT91C_PD20_TPK8 (AT91C_PIO_PD20) // ETM Trace Packet 8 -#define AT91C_PIO_PD21 (1u << 21) // Pin Controlled by PD21 -#define AT91C_PD21_RTS0 (AT91C_PIO_PD21) // Usart 0 Ready To Send -#define AT91C_PD21_TPK9 (AT91C_PIO_PD21) // ETM Trace Packet 9 -#define AT91C_PIO_PD22 (1u << 22) // Pin Controlled by PD22 -#define AT91C_PD22_RTS1 (AT91C_PIO_PD22) // Usart 0 Ready To Send -#define AT91C_PD22_TPK10 (AT91C_PIO_PD22) // ETM Trace Packet 10 -#define AT91C_PIO_PD23 (1u << 23) // Pin Controlled by PD23 -#define AT91C_PD23_RTS2 (AT91C_PIO_PD23) // USART 2 Ready To Send -#define AT91C_PD23_TPK11 (AT91C_PIO_PD23) // ETM Trace Packet 11 -#define AT91C_PIO_PD24 (1u << 24) // Pin Controlled by PD24 -#define AT91C_PD24_RTS3 (AT91C_PIO_PD24) // USART 3 Ready To Send -#define AT91C_PD24_TPK12 (AT91C_PIO_PD24) // ETM Trace Packet 12 -#define AT91C_PIO_PD25 (1u << 25) // Pin Controlled by PD25 -#define AT91C_PD25_DTR1 (AT91C_PIO_PD25) // USART 1 Data Terminal ready -#define AT91C_PD25_TPK13 (AT91C_PIO_PD25) // ETM Trace Packet 13 -#define AT91C_PIO_PD26 (1u << 26) // Pin Controlled by PD26 -#define AT91C_PD26_TPK14 (AT91C_PIO_PD26) // ETM Trace Packet 14 -#define AT91C_PIO_PD27 (1u << 27) // Pin Controlled by PD27 -#define AT91C_PD27_TPK15 (AT91C_PIO_PD27) // ETM Trace Packet 15 -#define AT91C_PIO_PD3 (1u << 3) // Pin Controlled by PD3 -#define AT91C_PD3_ETX3 (AT91C_PIO_PD3) // Ethernet MAC Transmit Data 3 -#define AT91C_PIO_PD4 (1u << 4) // Pin Controlled by PD4 -#define AT91C_PD4_ETXEN (AT91C_PIO_PD4) // Ethernet MAC Transmit Enable -#define AT91C_PIO_PD5 (1u << 5) // Pin Controlled by PD5 -#define AT91C_PD5_ETXER (AT91C_PIO_PD5) // Ethernet MAC Transmikt Coding Error -#define AT91C_PIO_PD6 (1u << 6) // Pin Controlled by PD6 -#define AT91C_PD6_DTXD (AT91C_PIO_PD6) // DBGU Debug Transmit Data -#define AT91C_PIO_PD7 (1u << 7) // Pin Controlled by PD7 -#define AT91C_PD7_PCK0 (AT91C_PIO_PD7) // PMC Programmable Clock Output 0 -#define AT91C_PD7_TSYNC (AT91C_PIO_PD7) // ETM Synchronization signal -#define AT91C_PIO_PD8 (1u << 8) // Pin Controlled by PD8 -#define AT91C_PD8_PCK1 (AT91C_PIO_PD8) // PMC Programmable Clock Output 1 -#define AT91C_PD8_TCLK (AT91C_PIO_PD8) // ETM Trace Clock signal -#define AT91C_PIO_PD9 (1u << 9) // Pin Controlled by PD9 -#define AT91C_PD9_PCK2 (AT91C_PIO_PD9) // PMC Programmable Clock 2 -#define AT91C_PD9_TPS0 (AT91C_PIO_PD9) // ETM ARM9 pipeline status 0 +#include // ***************************************************************************** // PERIPHERAL ID DEFINITIONS FOR AT91RM9200 From owner-p4-projects@FreeBSD.ORG Fri Jun 23 03:12:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D093F16A49E; Fri, 23 Jun 2006 03:12:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 94B3716A482 for ; Fri, 23 Jun 2006 03:12:48 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 66BC143D49 for ; Fri, 23 Jun 2006 03:12:48 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N3CmFk044947 for ; Fri, 23 Jun 2006 03:12:48 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N3ClgW044944 for perforce@freebsd.org; Fri, 23 Jun 2006 03:12:47 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 03:12:47 GMT Message-Id: <200606230312.k5N3ClgW044944@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99847 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 03:12:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=99847 Change 99847 by jhb@jhb_mutex on 2006/06/23 03:12:40 Oops, remember to skip to the next page if a page is blacklisted. Affected files ... .. //depot/projects/smpng/sys/vm/vm_page.c#77 edit Differences ... ==== //depot/projects/smpng/sys/vm/vm_page.c#77 (text+ko) ==== @@ -339,13 +339,11 @@ last_pa = phys_avail[i + 1]; while (pa < last_pa && npages-- > 0) { if (list != NULL && - vm_page_blacklist_lookup(list, pa)) { + vm_page_blacklist_lookup(list, pa)) printf("Skipping page with pa 0x%jx\n", (uintmax_t)pa); - - continue; - } - vm_pageq_add_new_page(pa); + else + vm_pageq_add_new_page(pa); pa += PAGE_SIZE; } } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 07:06:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6AB0016A494; Fri, 23 Jun 2006 07:06:37 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F10E516A47C for ; Fri, 23 Jun 2006 07:06:36 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C0E6C43D58 for ; Fri, 23 Jun 2006 07:06:36 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N76aA7068484 for ; Fri, 23 Jun 2006 07:06:36 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N76avf068481 for perforce@freebsd.org; Fri, 23 Jun 2006 07:06:36 GMT (envelope-from bushman@freebsd.org) Date: Fri, 23 Jun 2006 07:06:36 GMT Message-Id: <200606230706.k5N76avf068481@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99852 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 07:06:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=99852 Change 99852 by bushman@bushman_nss_ldap_cached on 2006/06/23 07:06:21 nsdispatch(3) behaviour slightly changed to correctly process stubs from nss_stubs.c Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nsdispatch.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_stubs.c#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nsdispatch.c#5 (text+ko) ==== @@ -430,20 +430,11 @@ *src = NULL; } -/* ARGSUSED */ -ns_mtab * -__dummy_reg(const char *name, unsigned int *mtab_size, - nss_module_unregister_fn *fn) -{ - return (NULL); -} - /* * NSS module management. */ /* The built-in NSS modules are all loaded at once. */ #define NSS_BACKEND(name, reg) \ -__weak_reference(__dummy_reg, reg);\ ns_mtab *reg(const char *, unsigned int *, nss_module_unregister_fn *); #include "nss_backends.h" #undef NSS_BACKEND @@ -507,11 +498,16 @@ } mod.mtab = fn(mod.name, &mod.mtabsize, &mod.unregister); if (mod.mtab == NULL || mod.mtabsize == 0) { - if (mod.handle != nss_builtin_handle) + if (mod.handle != nss_builtin_handle) { (void)dlclose(mod.handle); - mod.handle = NULL; - nss_log(LOG_ERR, "%s, registration failed", mod.name); - goto fin; + nss_log(LOG_ERR, "%s, registration failed", mod.name); + mod.handle = NULL; + goto fin; + } else { + /* we've loaded the stub - now try the real module */ + nss_load_module(source, NULL); + return; + } } if (mod.mtabsize > 1) qsort(mod.mtab, mod.mtabsize, sizeof(mod.mtab[0]), ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/nss_stubs.c#2 (text+ko) ==== @@ -35,6 +35,8 @@ __dummy_reg(const char *name, unsigned int *mtab_size, nss_module_unregister_fn *fn) { + *mtab_size = 0; + *fn = NULL; return (NULL); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 07:41:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C0FAE16A47E; Fri, 23 Jun 2006 07:41:19 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9AB7016A47B for ; Fri, 23 Jun 2006 07:41:19 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 577A743D45 for ; Fri, 23 Jun 2006 07:41:19 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N7fJlO069901 for ; Fri, 23 Jun 2006 07:41:19 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N7fJjO069898 for perforce@freebsd.org; Fri, 23 Jun 2006 07:41:19 GMT (envelope-from cdjones@FreeBSD.org) Date: Fri, 23 Jun 2006 07:41:19 GMT Message-Id: <200606230741.k5N7fJjO069898@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 99853 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 07:41:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=99853 Change 99853 by cdjones@cdjones_ides on 2006/06/23 07:41:01 (Rename from sched_jail to sched_hier) Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_hier.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jun 23 07:42:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B181E16A49A; Fri, 23 Jun 2006 07:42:21 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 77E6016A4A0 for ; Fri, 23 Jun 2006 07:42:21 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 343D543D4C for ; Fri, 23 Jun 2006 07:42:21 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N7gLwt069937 for ; Fri, 23 Jun 2006 07:42:21 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N7gKSY069934 for perforce@freebsd.org; Fri, 23 Jun 2006 07:42:20 GMT (envelope-from cdjones@FreeBSD.org) Date: Fri, 23 Jun 2006 07:42:20 GMT Message-Id: <200606230742.k5N7gKSY069934@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 99854 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 07:42:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=99854 Change 99854 by cdjones@cdjones_ides on 2006/06/23 07:42:04 (Rename from sched_jail to sched_hier) Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_jail.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jun 23 07:48:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4896D16A561; Fri, 23 Jun 2006 07:48:30 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2446C16A4AB for ; Fri, 23 Jun 2006 07:48:30 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DE3C543D45 for ; Fri, 23 Jun 2006 07:48:29 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N7mTjP070229 for ; Fri, 23 Jun 2006 07:48:29 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N7mTsU070226 for perforce@freebsd.org; Fri, 23 Jun 2006 07:48:29 GMT (envelope-from als@FreeBSD.org) Date: Fri, 23 Jun 2006 07:48:29 GMT Message-Id: <200606230748.k5N7mTsU070226@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99855 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 07:48:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=99855 Change 99855 by als@als_head on 2006/06/23 07:47:41 whitespace fixes. Affected files ... .. //depot/projects/jail2/sys/sys/jail2.h#2 edit Differences ... ==== //depot/projects/jail2/sys/sys/jail2.h#2 (text+ko) ==== @@ -63,45 +63,45 @@ #define J_STATS 7 /* contexts limits */ -#define J_SETMEMLIMIT 1 +#define J_SETMEMLIMIT 1 /* int limit */ -#define J_SETPROCLIMIT 2 +#define J_SETPROCLIMIT 2 /* int limit */ -#define J_SETVROOT 4 +#define J_SETVROOT 4 /* set as vroot dev */ -#define J_SETUSEDSPACE 5 +#define J_SETUSEDSPACE 5 /* int space in k */ -#define J_SETFILELIMIT 6 +#define J_SETFILELIMIT 6 /* int limit */ -#define J_SETRSSLIMIT 7 +#define J_SETRSSLIMIT 7 /* int RSS limit */ #define J_SETTCPSOCKETSLIMIT 8 /* int TCP established sockets limit */ #define J_SETUDPSOCKETSLIMIT 9 /* int UDP established sockets limit */ -#define J_CPUHARDLIMIT 10 +#define J_CPUHARDLIMIT 10 /* int cpu time limit - max 1024 */ -#define J_CPUSOFTLIMIT 11 +#define J_CPUSOFTLIMIT 11 /* int cpu time limit - max 1024 */ -#define J_MSQLIMIT 14 +#define J_MSQLIMIT 14 /* int message query count limit */ -#define J_SEMLIMIT 15 +#define J_SEMLIMIT 15 /* int semaphore count limit */ -#define J_SHMLIMIT 16 +#define J_SHMLIMIT 16 /* int shared memory segments count limit */ /* network stuf */ -#define J_VNETDEV_CREATE 1 -#define J_VNETDEV_REMOVE 2 +#define J_VNETDEV_CREATE 1 +#define J_VNETDEV_REMOVE 2 /* only if not have task */ -#define J_ADDMASKIPV4 5 -#define J_RMIPV4 6 +#define J_ADDMASKIPV4 5 +#define J_RMIPV4 6 /* attach vnetdev to host netdev */ -#define J_VNETDEV_ATTACH 7 +#define J_VNETDEV_ATTACH 7 /* detach vnetdev from host netdev */ -#define J_VNETDEV_DETACH 8 +#define J_VNETDEV_DETACH 8 /* set vnetdev shaper speed */ #define J_VNETDEV_SET_TXSPEED 10 @@ -111,155 +111,18 @@ #define J_VNETDEV_UNSET_FLAGS 12 /* disk stuff */ -#define J_VROOT 1 +#define J_VROOT 1 /* char *path - set root dir */ -#define J_SETINODE_ID 2 +#define J_SETINODE_ID 2 /* char *path, uint32_t prison_id */ -#define J_INODEUSAGE 12 +#define J_INODEUSAGE 3 /* int inode count used in context */ -#define J_INODELIMIT 13 +#define J_INODELIMIT 4 /* int inodes count limit for context */ -#define J_SETDISKQUOTE 3 +#define J_SETDISKQUOTE 5 /* int limit */ -#define JAIL2_COMMAND(class, cmd) (((class)<<24) | (cmd)) -#define JAIL2_CLASS(fcmd) (((fcmd)>>24) & 0xFF) -#define JAIL2_CMD(fcmd) ((fcmd) & 0xFFF) - -#ifdef _KERNEL - -struct thread; -int jail2_common(struct thread *td, struct jail_2 *j); -int jail2_network(struct thread *td, struct jail_2 *j); -int jail2_resource(struct thread *td, struct jail_2 *j); - -#endif /* !_KERNEL */ -#endif /* !_SYS_JAIL2_H_ */ -#ifndef _SYS_JAIL2_H_ -#define _SYS_JAIL2_H_ - -struct jail_2 { - uint32_t version; /* vsersion always 2*/ - uint32_t ctx_id; /* prision id */ - uint32_t cmd; /* jail2 command */ - void *data; /* pointer to command data */ -}; - -struct jail2_stats_v1 { - uint32_t flags; - /* Task & CPU */ - uint32_t taskcount; - uint32_t cpulow; - uint32_t cpuhigh; - uint32_t cpuusage; - /* IPC */ - uint32_t msq_count; /* (a) total message count */ - uint32_t msq_limit; /* (a) limits message count in jail */ - uint32_t sem_count; /* (a) total semaphore count */ - uint32_t sem_limit; /* (a) limits semaphore count in jail */ - uint32_t shm_count; /* (a) total shared segments count */ - uint32_t shm_limit; /* (a) limits shared segments count in jail */ - /* disk */ - uint32_t diskblocks; - uint32_t disklimit; - uint32_t inodecount; - uint32_t inodelimit; - /* file */ - uint32_t fdcount; - uint32_t fdlimit; -}; - -#define JAIL2_STATS_VER 1 -struct jail2_stats { - uint32_t version; - uint32_t id; - struct jail2_stats_v1 v1; -}; - - -/* jail2 commands category */ -#define J_COMMON 0x1 -#define J_NETWORK 0x2 -#define J_RESOURCE 0x3 -#define J_DISK 0x4 - -/* common staff */ -/* create context */ -#define J_CREATE 1 -/* destroy context */ -#define J_DESTROY 2 -/* allow execute programs in context */ -#define J_START 3 -/* destroy all programs and disallow execute programs in context */ -#define J_STOP 4 -/* migrate process to context */ -#define J_ENTER 5 -/* set flags for context */ -#define J_SETFLAGS 6 -/* get detaled statistic about context */ -#define J_STATS 7 - -/* contexts limits */ -#define J_SETMEMLIMIT 1 -/* int limit */ -#define J_SETPROCLIMIT 2 -/* int limit */ -#define J_SETVROOT 4 -/* set as vroot dev */ -#define J_SETUSEDSPACE 5 -/* int space in k */ -#define J_SETFILELIMIT 6 -/* int limit */ -#define J_SETRSSLIMIT 7 -/* int RSS limit */ -#define J_SETTCPSOCKETSLIMIT 8 -/* int TCP established sockets limit */ -#define J_SETUDPSOCKETSLIMIT 9 -/* int UDP established sockets limit */ -#define J_CPUHARDLIMIT 10 -/* int cpu time limit - max 1024 */ -#define J_CPUSOFTLIMIT 11 -/* int cpu time limit - max 1024 */ -#define J_MSQLIMIT 14 -/* int message query count limit */ -#define J_SEMLIMIT 15 -/* int semaphore count limit */ -#define J_SHMLIMIT 16 -/* int shared memory segments count limit */ - -/* network stuf */ -#define J_VNETDEV_CREATE 1 -#define J_VNETDEV_REMOVE 2 - -/* only if not have task */ -#define J_ADDMASKIPV4 5 -#define J_RMIPV4 6 - -/* attach vnetdev to host netdev */ -#define J_VNETDEV_ATTACH 7 -/* detach vnetdev from host netdev */ -#define J_VNETDEV_DETACH 8 - -/* set vnetdev shaper speed */ -#define J_VNETDEV_SET_TXSPEED 10 -/* set specified option flags */ -#define J_VNETDEV_SET_FLAGS 11 -/* unset specified option flags */ -#define J_VNETDEV_UNSET_FLAGS 12 - -/* disk stuff */ -#define J_VROOT 1 -/* char *path - set root dir */ -#define J_SETINODE_ID 2 -/* char *path, uint32_t prison_id */ -#define J_INODEUSAGE 12 -/* int inode count used in context */ -#define J_INODELIMIT 13 -/* int inodes count limit for context */ -#define J_SETDISKQUOTE 3 -/* int limit */ - -#define JAIL2_COMMAND(class, cmd) (((class)<<24) | (cmd)) +#define JAIL2_COMMAND(class, cmd) (((class)<<24) | (cmd)) #define JAIL2_CLASS(fcmd) (((fcmd)>>24) & 0xFF) #define JAIL2_CMD(fcmd) ((fcmd) & 0xFFF) From owner-p4-projects@FreeBSD.ORG Fri Jun 23 08:03:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4FC2116A4A0; Fri, 23 Jun 2006 08:03:50 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E45DC16A49A for ; Fri, 23 Jun 2006 08:03:49 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 520C743D46 for ; Fri, 23 Jun 2006 08:03:49 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N83n96072093 for ; Fri, 23 Jun 2006 08:03:49 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N83njY072090 for perforce@freebsd.org; Fri, 23 Jun 2006 08:03:49 GMT (envelope-from cdjones@FreeBSD.org) Date: Fri, 23 Jun 2006 08:03:49 GMT Message-Id: <200606230803.k5N83njY072090@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 99856 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 08:03:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=99856 Change 99856 by cdjones@cdjones_ides on 2006/06/23 08:03:29 Branch sys/sys Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_iovec.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_label.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_lock.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_mutex.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_null.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_pthreadtypes.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_rwlock.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_sigset.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_task.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_timespec.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_timeval.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/_types.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/aac_ioctl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/acct.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/acl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/agpio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/aio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/alq.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/assym.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ata.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/bio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/bitstring.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/blist.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/buf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/bufobj.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/bus.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/bus_dma.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/callout.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/cdefs.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/cdio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/cdrio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/chio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/clist.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/clock.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/condvar.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/conf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/cons.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/consio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/copyright.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/cpu.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ctype.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/dataacq.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/device_port.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/devicestat.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/digiio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/dir.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/dirent.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/disk.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/disklabel.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/diskmbr.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/diskpc98.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/dkstat.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/domain.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/dvdio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/elf32.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/elf64.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/elf_common.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/elf_generic.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/endian.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/errno.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/eui64.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/event.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/eventhandler.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/eventvar.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/exec.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/extattr.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/fbio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/fcntl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/fdcio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/file.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/filedesc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/filio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/firmware.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/fnv_hash.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/gmon.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/gpt.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/hash.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/iconv.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/imgact.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/imgact_aout.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/imgact_elf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/inflate.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/interrupt.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ioccom.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ioctl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ioctl_compat.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ipc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ipmi.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#1 add .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/joystick.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kbio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kdb.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kenv.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kernel.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kerneldump.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kobj.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kse.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/kthread.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ktr.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ktrace.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/libkern.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/limits.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/linedisc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/link_aout.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/link_elf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/linker.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/linker_set.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/lock.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/lockf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/lockmgr.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mac.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mac_policy.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/malloc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mbpool.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mbuf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mchain.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/md4.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/md5.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mdioctl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/memrange.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mman.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/module.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mount.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mouse.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mqueue.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/msg.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/msgbuf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mtio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/mutex.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/namei.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/nlist_aout.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/param.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pciio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pcpu.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pioctl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pipe.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pmc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pmckern.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/pmclog.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/poll.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/power.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/priority.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/proc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/procfs.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/protosw.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ptio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ptrace.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/queue.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/random.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/reboot.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/refcount.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/regression.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/resource.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/resourcevar.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/rman.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/rtprio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/runq.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/rwlock.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sbuf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sched.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/select.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/selinfo.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sem.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sema.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/serial.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sf_buf.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/shm.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sigio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/signal.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/signalvar.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sleepqueue.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/smp.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/snoop.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/socket.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/socketvar.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sockio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/soundcard.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/stack.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/stat.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/statvfs.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/stddef.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/stdint.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sun_disklabel.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sx.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscall.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscall.mk#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscallsubr.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sysctl.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sysent.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syslimits.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syslog.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sysproto.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/systm.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/taskqueue.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/termios.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/thr.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/tiio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/time.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/timeb.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/timepps.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/timers.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/times.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/timespec.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/timetc.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/timex.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/tree.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/tty.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ttychars.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ttycom.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ttydefaults.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ttydev.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/turnstile.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/types.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ucontext.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/ucred.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/uio.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/umtx.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/un.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/unistd.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/unpcb.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/user.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/utsname.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/uuid.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/vmmeter.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/vnode.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/wait.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/watchdog.h#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/xrpuio.h#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jun 23 08:29:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B3E316A4A5; Fri, 23 Jun 2006 08:29:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6222C16A492 for ; Fri, 23 Jun 2006 08:29:22 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D480E43D5A for ; Fri, 23 Jun 2006 08:29:21 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5N8TLtU073184 for ; Fri, 23 Jun 2006 08:29:21 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5N8TLrk073180 for perforce@freebsd.org; Fri, 23 Jun 2006 08:29:21 GMT (envelope-from cdjones@FreeBSD.org) Date: Fri, 23 Jun 2006 08:29:21 GMT Message-Id: <200606230829.k5N8TLrk073180@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 99857 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 08:29:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=99857 Change 99857 by cdjones@cdjones_ides on 2006/06/23 08:29:06 Add a 'priority' value to the jail and prison structs, with corresponding changes to jail(8). Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#2 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#2 edit .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.c#2 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#2 (text+ko) ==== @@ -135,6 +135,7 @@ goto e_dropvnref; pr->pr_ip = j.ip_number; pr->pr_linux = NULL; + pr->pr_priority = j.priority; pr->pr_securelevel = securelevel; /* Determine next pr_id and add prison to allprison list. */ ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#2 (text+ko) ==== @@ -18,6 +18,8 @@ char *path; char *hostname; u_int32_t ip_number; + unsigned int priority; +/* CJ TODO --- add reference to preferred scheduler, e.g. by name? */ }; struct xprison { @@ -29,6 +31,10 @@ }; #define XPRISON_VERSION 1 +#define JAIL_DEFAULT_PRIORITY 10 +#define JAIL_MINIMUM_PRIORITY 1 +#define JAIL_MAXIMUM_PRIORITY 100 + #ifndef _KERNEL int jail(struct jail *); @@ -73,6 +79,8 @@ int pr_securelevel; /* (p) securelevel */ struct task pr_task; /* (d) destroy task */ struct mtx pr_mtx; + unsigned int pr_priority; /* (p) jail priority */ +/* CJ TODO scheduler reference. */ }; #endif /* _KERNEL || _WANT_PRISON */ ==== //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.c#2 (text+ko) ==== @@ -63,11 +63,12 @@ FILE *fp; iflag = Jflag = lflag = uflag = Uflag = 0; + priority = JAIL_DEFAULT_PRIORITY; securelevel = -1; username = JidFile = cleanenv = NULL; fp = NULL; - while ((ch = getopt(argc, argv, "ils:u:U:J:")) != -1) { + while ((ch = getopt(argc, argv, "ilp:s:u:U:J:")) != -1) { switch (ch) { case 'i': iflag = 1; @@ -76,6 +77,12 @@ JidFile = optarg; Jflag = 1; break; + case 'p': + priority = atoi(optarg); + if (priority < JAIL_MINIMUM_PRIORITY || + priority > JAIL_MAXIMUM_PRIORITY) + errx(1, "invalid priority: `%s'", optarg); + break; case 's': ltmp = strtol(optarg, &ep, 0); if (*ep || ep == optarg || ltmp > INT_MAX || !ltmp) @@ -118,6 +125,7 @@ if (inet_aton(argv[2], &in) == 0) errx(1, "Could not make sense of ip-number: %s", argv[2]); j.ip_number = ntohl(in.s_addr); + j.priority = priority; if (Jflag) { fp = fopen(JidFile, "w"); if (fp == NULL) @@ -183,7 +191,8 @@ { (void)fprintf(stderr, "%s%s%s\n", - "usage: jail [-i] [-J jid_file] [-s securelevel] [-l -u ", + "usage: jail [-i] [-J jid_file] [-p priority] [-s securelevel]", + " [-l -u ", "username | -U username]", " path hostname ip-number command ..."); exit(1); From owner-p4-projects@FreeBSD.ORG Fri Jun 23 10:14:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 708F516A49A; Fri, 23 Jun 2006 10:14:47 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 464AA16A492 for ; Fri, 23 Jun 2006 10:14:47 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 545AE43D8A for ; Fri, 23 Jun 2006 10:14:36 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NAEaXE086822 for ; Fri, 23 Jun 2006 10:14:36 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NAEaXm086819 for perforce@freebsd.org; Fri, 23 Jun 2006 10:14:36 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 23 Jun 2006 10:14:36 GMT Message-Id: <200606231014.k5NAEaXm086819@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 99860 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 10:14:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=99860 Change 99860 by rdivacky@rdivacky_witten on 2006/06/23 10:14:33 I forgot to change this file when backing out the emulpath thing. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.c#6 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.c#6 (text+ko) ==== @@ -53,6 +53,7 @@ #include #endif +const char linux_emul_path[] = "/compat/linux"; /* * Search an alternate path before passing pathname arguments on From owner-p4-projects@FreeBSD.ORG Fri Jun 23 12:25:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4917016A494; Fri, 23 Jun 2006 12:25:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1519D16A47E for ; Fri, 23 Jun 2006 12:25:23 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E02443D45 for ; Fri, 23 Jun 2006 12:25:22 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NCPMhS094803 for ; Fri, 23 Jun 2006 12:25:22 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NCPMHO094800 for perforce@freebsd.org; Fri, 23 Jun 2006 12:25:22 GMT (envelope-from bushman@freebsd.org) Date: Fri, 23 Jun 2006 12:25:22 GMT Message-Id: <200606231225.k5NCPMHO094800@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99862 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 12:25:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=99862 Change 99862 by bushman@bushman_nss_ldap_cached on 2006/06/23 12:25:18 The unfinished draft of the reworked getusershell(3) nsswitch infrastructure. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/tests/getusershell_test/Makefile#1 add .. //depot/projects/soc2006/nss_ldap_cached/tests/getusershell_test/getusershell_test.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jun 23 15:47:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A918C16A4A7; Fri, 23 Jun 2006 15:47:54 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8470F16A494 for ; Fri, 23 Jun 2006 15:47:54 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2816C43D48 for ; Fri, 23 Jun 2006 15:47:54 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NFlsEn019460 for ; Fri, 23 Jun 2006 15:47:54 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NFlrg3019432 for perforce@freebsd.org; Fri, 23 Jun 2006 15:47:53 GMT (envelope-from cdjones@FreeBSD.org) Date: Fri, 23 Jun 2006 15:47:53 GMT Message-Id: <200606231547.k5NFlrg3019432@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 99866 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 15:47:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=99866 Change 99866 by cdjones@cdjones_ides on 2006/06/23 15:47:27 Integrate misc. unused stuff. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_acct.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_clock.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_event.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_exit.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_linker.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mbuf.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_module.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_mutex.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_switch.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_synch.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sysctl.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_tc.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/link_elf.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/link_elf_obj.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_core.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_ule.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_bus.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_kdb.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_rman.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sys_pipe.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_msg.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_sem.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sysv_shm.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_mbuf.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_socket.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_socket2.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_syscalls.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_usrreq.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_aio.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_cache.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_init.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_subr.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_syscalls.c#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vnode_if.src#2 integrate .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.8#2 integrate Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_acct.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_acct.c,v 1.81 2006/03/28 21:26:59 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_acct.c,v 1.82 2006/06/05 13:02:34 rwatson Exp $"); #include "opt_mac.h" @@ -171,8 +171,8 @@ * appending and make sure it's a 'normal'. */ if (uap->path != NULL) { - NDINIT(&nd, LOOKUP, NOFOLLOW | MPSAFE, UIO_USERSPACE, - uap->path, td); + NDINIT(&nd, LOOKUP, NOFOLLOW | MPSAFE | AUDITVNODE1, + UIO_USERSPACE, uap->path, td); flags = FWRITE | O_APPEND; error = vn_open(&nd, &flags, 0, -1); if (error) ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_clock.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_clock.c,v 1.188 2006/04/17 20:14:51 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_clock.c,v 1.190 2006/06/14 03:14:26 delphij Exp $"); #include "opt_device_polling.h" #include "opt_hwpmc_hooks.h" @@ -201,6 +201,7 @@ * Run current process's virtual and profile time, as needed. */ mtx_lock_spin_flags(&sched_lock, MTX_QUIET); + sched_tick(); if (p->p_flag & P_SA) { /* XXXKSE What to do? */ } else { @@ -256,7 +257,7 @@ */ mtx_lock_spin_flags(&callout_lock, MTX_QUIET); ticks++; - if (TAILQ_FIRST(&callwheel[ticks & callwheelmask]) != NULL) { + if (!TAILQ_EMPTY(&callwheel[ticks & callwheelmask])) { need_softclock = 1; } else if (softticks + 1 == ticks) ++softticks; ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_event.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_event.c,v 1.99 2006/04/14 14:27:28 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_event.c,v 1.103 2006/06/12 21:46:23 jhb Exp $"); #include #include @@ -754,15 +754,12 @@ int kqueue_register(struct kqueue *kq, struct kevent *kev, struct thread *td, int waitok) { - struct filedesc *fdp; struct filterops *fops; struct file *fp; struct knote *kn, *tkn; int error, filt, event; int haskqglobal; - int fd; - fdp = NULL; fp = NULL; kn = NULL; error = 0; @@ -778,22 +775,13 @@ findkn: if (fops->f_isfd) { KASSERT(td != NULL, ("td is NULL")); - fdp = td->td_proc->p_fd; - FILEDESC_LOCK(fdp); - /* validate descriptor */ - fd = kev->ident; - if (fd < 0 || fd >= fdp->fd_nfiles || - (fp = fdp->fd_ofiles[fd]) == NULL) { - FILEDESC_UNLOCK(fdp); - error = EBADF; + error = fget(td, kev->ident, &fp); + if (error) goto done; - } - fhold(fp); if ((kev->flags & EV_ADD) == EV_ADD && kqueue_expand(kq, fops, kev->ident, 0) != 0) { - /* unlock and try again */ - FILEDESC_UNLOCK(fdp); + /* try again */ fdrop(fp, td); fp = NULL; error = kqueue_expand(kq, fops, kev->ident, waitok); @@ -811,15 +799,13 @@ * they are the same thing. */ if (fp->f_data == kq) { - FILEDESC_UNLOCK(fdp); error = EINVAL; - goto done_noglobal; + goto done; } KQ_GLOBAL_LOCK(&kq_global, haskqglobal); } - FILEDESC_UNLOCK(fdp); KQ_LOCK(kq); if (kev->ident < kq->kq_knlistsize) { SLIST_FOREACH(kn, &kq->kq_knlist[kev->ident], kn_link) @@ -869,6 +855,7 @@ kn = tkn; tkn = NULL; if (kn == NULL) { + KQ_UNLOCK(kq); error = ENOMEM; goto done; } @@ -954,7 +941,6 @@ done: KQ_GLOBAL_UNLOCK(&kq_global, haskqglobal); -done_noglobal: if (fp != NULL) fdrop(fp, td); if (tkn != NULL) @@ -1708,7 +1694,7 @@ void knlist_cleardel(struct knlist *knl, struct thread *td, int islocked, int killkn) { - struct knote *kn; + struct knote *kn, *kn2; struct kqueue *kq; if (islocked) @@ -1719,7 +1705,7 @@ knl->kl_lock(knl->kl_lockarg); } - SLIST_FOREACH(kn, &knl->kl_list, kn_selnext) { + SLIST_FOREACH_SAFE(kn, &knl->kl_list, kn_selnext, kn2) { kq = kn->kn_kq; KQ_LOCK(kq); if ((kn->kn_status & KN_INFLUX)) { ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_exit.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.288 2006/04/10 14:07:28 csjp Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.289 2006/05/29 21:28:56 tegge Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" @@ -113,14 +113,13 @@ struct proc *p, *nq, *q; struct tty *tp; struct vnode *ttyvp; - struct vmspace *vm; struct vnode *vtmp; #ifdef KTRACE struct vnode *tracevp; struct ucred *tracecred; #endif struct plimit *plim; - int locked, refcnt; + int locked; /* * Drop Giant if caller has it. Eventually we should warn about @@ -300,33 +299,7 @@ } mtx_unlock(&ppeers_lock); - /* The next two chunks should probably be moved to vmspace_exit. */ - vm = p->p_vmspace; - /* - * Release user portion of address space. - * This releases references to vnodes, - * which could cause I/O if the file has been unlinked. - * Need to do this early enough that we can still sleep. - * Can't free the entire vmspace as the kernel stack - * may be mapped within that space also. - * - * Processes sharing the same vmspace may exit in one order, and - * get cleaned up by vmspace_exit() in a different order. The - * last exiting process to reach this point releases as much of - * the environment as it can, and the last process cleaned up - * by vmspace_exit() (which decrements exitingcnt) cleans up the - * remainder. - */ - atomic_add_int(&vm->vm_exitingcnt, 1); - do - refcnt = vm->vm_refcnt; - while (!atomic_cmpset_int(&vm->vm_refcnt, refcnt, refcnt - 1)); - if (refcnt == 1) { - shmexit(vm); - pmap_remove_pages(vmspace_pmap(vm)); - (void) vm_map_remove(&vm->vm_map, vm_map_min(&vm->vm_map), - vm_map_max(&vm->vm_map)); - } + vmspace_exit(td); sx_xlock(&proctree_lock); if (SESS_LEADER(p)) { ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_linker.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.120 2006/05/27 09:21:41 delphij Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.138 2006/06/21 20:42:08 jhb Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" @@ -43,11 +43,13 @@ #include #include #include +#include #include #include #include #include #include +#include #include #include "linker_if.h" @@ -60,12 +62,27 @@ int kld_debug = 0; #endif +#define KLD_LOCK() do { sx_xlock(&kld_sx); mtx_lock(&Giant); } while (0) +#define KLD_UNLOCK() do { mtx_unlock(&Giant); sx_xunlock(&kld_sx); } while (0) +#define KLD_LOCKED() sx_xlocked(&kld_sx) +#define KLD_LOCK_ASSERT() do { if (!cold) sx_assert(&kld_sx, SX_XLOCKED); } while (0) + /* * static char *linker_search_path(const char *name, struct mod_depend * *verinfo); */ static const char *linker_basename(const char *path); +/* + * Find a currently loaded file given its filename. + */ +static linker_file_t linker_find_file_by_name(const char* _filename); + +/* + * Find a currently loaded file given its file id. + */ +static linker_file_t linker_find_file_by_id(int _fileid); + /* Metadata from the static kernel */ SET_DECLARE(modmetadata_set, struct mod_metadata); @@ -73,7 +90,7 @@ linker_file_t linker_kernel_file; -static struct mtx kld_mtx; /* kernel linker mutex */ +static struct sx kld_sx; /* kernel linker lock */ static linker_class_list_t classes; static linker_file_list_t linker_files; @@ -83,17 +100,15 @@ #define LINKER_GET_NEXT_FILE_ID(a) do { \ linker_file_t lftmp; \ \ + KLD_LOCK_ASSERT(); \ retry: \ - mtx_lock(&kld_mtx); \ TAILQ_FOREACH(lftmp, &linker_files, link) { \ if (next_file_id == lftmp->id) { \ next_file_id++; \ - mtx_unlock(&kld_mtx); \ goto retry; \ } \ } \ (a) = next_file_id; \ - mtx_unlock(&kld_mtx); /* Hold for safe read of id variable */ \ } while(0) @@ -108,8 +123,14 @@ typedef struct modlist *modlist_t; static modlisthead_t found_modules; -static modlist_t modlist_lookup2(const char *name, - struct mod_depend *verinfo); +static int linker_file_add_dependency(linker_file_t file, + linker_file_t dep); +static caddr_t linker_file_lookup_symbol_internal(linker_file_t file, + const char* name, int deps); +static int linker_load_module(const char *kldname, + const char *modname, struct linker_file *parent, + struct mod_depend *verinfo, struct linker_file **lfpp); +static modlist_t modlist_lookup2(const char *name, struct mod_depend *verinfo); static char * linker_strdup(const char *str) @@ -125,7 +146,7 @@ linker_init(void *arg) { - mtx_init(&kld_mtx, "kernel linker", NULL, MTX_DEF); + sx_init(&kld_sx, "kernel linker"); TAILQ_INIT(&classes); TAILQ_INIT(&linker_files); } @@ -171,7 +192,7 @@ /* * Perform a bubble sort of the system initialization objects by * their subsystem (primary key) and order (secondary key). - * + * * Since some things care about execution order, this is the operation * which ensures continued function. */ @@ -215,7 +236,7 @@ /* * Perform a reverse bubble sort of the system initialization objects * by their subsystem (primary key) and order (secondary key). - * + * * Since some things care about execution order, this is the operation * which ensures continued function. */ @@ -256,8 +277,10 @@ if (linker_file_lookup_set(lf, "sysctl_set", &start, &stop, NULL) != 0) return; + mtx_lock(&Giant); for (oidp = start; oidp < stop; oidp++) sysctl_register_oid(*oidp); + mtx_unlock(&Giant); } static void @@ -271,8 +294,10 @@ if (linker_file_lookup_set(lf, "sysctl_set", &start, &stop, NULL) != 0) return; + mtx_lock(&Giant); for (oidp = start; oidp < stop; oidp++) sysctl_unregister_oid(*oidp); + mtx_unlock(&Giant); } static int @@ -286,7 +311,7 @@ " in %s\n", lf->filename)); if (linker_file_lookup_set(lf, "modmetadata_set", &start, - &stop, 0) != 0) { + &stop, NULL) != 0) { /* * This fallback should be unnecessary, but if we get booted * from boot2 instead of loader and we are missing our @@ -330,22 +355,23 @@ { linker_class_t lc; linker_file_t lf; - int foundfile, error = 0; + int foundfile, error; /* Refuse to load modules if securelevel raised */ if (securelevel > 0) return (EPERM); + KLD_LOCK_ASSERT(); lf = linker_find_file_by_name(filename); if (lf) { KLD_DPF(FILE, ("linker_load_file: file %s is already loaded," " incrementing refs\n", filename)); *result = lf; lf->refs++; - goto out; + return (0); } - lf = NULL; foundfile = 0; + error = 0; /* * We do not need to protect (lock) classes here because there is @@ -366,14 +392,13 @@ error = linker_file_register_modules(lf); if (error == EEXIST) { linker_file_unload(lf, LINKER_UNLOAD_FORCE); - goto out; + return (error); } linker_file_register_sysctls(lf); linker_file_sysinit(lf); lf->flags |= LINKER_FILE_LINKED; *result = lf; - error = 0; - goto out; + return (0); } } /* @@ -393,7 +418,6 @@ error = ENOEXEC; } else error = ENOENT; /* Nothing found */ -out: return (error); } @@ -402,67 +426,107 @@ linker_file_t *result) { modlist_t mod; + int error; + KLD_LOCK(); if ((mod = modlist_lookup2(modname, verinfo)) != NULL) { *result = mod->container; (*result)->refs++; + KLD_UNLOCK(); return (0); } - return (linker_load_module(NULL, modname, NULL, verinfo, result)); + error = linker_load_module(NULL, modname, NULL, verinfo, result); + KLD_UNLOCK(); + return (error); +} + +int +linker_release_module(const char *modname, struct mod_depend *verinfo, + linker_file_t lf) +{ + modlist_t mod; + int error; + + KLD_LOCK(); + if (lf == NULL) { + KASSERT(modname != NULL, + ("linker_release_module: no file or name")); + mod = modlist_lookup2(modname, verinfo); + if (mod == NULL) { + KLD_UNLOCK(); + return (ESRCH); + } + lf = mod->container; + } else + KASSERT(modname == NULL && verinfo == NULL, + ("linker_release_module: both file and name")); + error = linker_file_unload(lf, LINKER_UNLOAD_NORMAL); + KLD_UNLOCK(); + return (error); } -linker_file_t +static linker_file_t linker_find_file_by_name(const char *filename) { - linker_file_t lf = 0; + linker_file_t lf; char *koname; koname = malloc(strlen(filename) + 4, M_LINKER, M_WAITOK); - if (koname == NULL) - goto out; sprintf(koname, "%s.ko", filename); - mtx_lock(&kld_mtx); + KLD_LOCK_ASSERT(); TAILQ_FOREACH(lf, &linker_files, link) { if (strcmp(lf->filename, koname) == 0) break; if (strcmp(lf->filename, filename) == 0) break; } - mtx_unlock(&kld_mtx); -out: - if (koname) - free(koname, M_LINKER); + free(koname, M_LINKER); return (lf); } -linker_file_t +static linker_file_t linker_find_file_by_id(int fileid) { - linker_file_t lf = 0; - - mtx_lock(&kld_mtx); + linker_file_t lf; + + KLD_LOCK_ASSERT(); TAILQ_FOREACH(lf, &linker_files, link) if (lf->id == fileid) break; - mtx_unlock(&kld_mtx); return (lf); } +int +linker_file_foreach(linker_predicate_t *predicate, void *context) +{ + linker_file_t lf; + int retval = 0; + + KLD_LOCK(); + TAILQ_FOREACH(lf, &linker_files, link) { + retval = predicate(lf, context); + if (retval != 0) + break; + } + KLD_UNLOCK(); + return (retval); +} + linker_file_t linker_make_file(const char *pathname, linker_class_t lc) { linker_file_t lf; const char *filename; - lf = NULL; + KLD_LOCK_ASSERT(); filename = linker_basename(pathname); KLD_DPF(FILE, ("linker_make_file: new file, filename=%s\n", filename)); lf = (linker_file_t)kobj_create((kobj_class_t)lc, M_LINKER, M_WAITOK); if (lf == NULL) - goto out; + return (NULL); lf->refs = 1; lf->userrefs = 0; lf->flags = 0; @@ -472,10 +536,7 @@ lf->deps = NULL; STAILQ_INIT(&lf->common); TAILQ_INIT(&lf->modules); - mtx_lock(&kld_mtx); TAILQ_INSERT_TAIL(&linker_files, lf, link); - mtx_unlock(&kld_mtx); -out: return (lf); } @@ -487,8 +548,6 @@ struct common_symbol *cp; int error, i; - error = 0; - /* Refuse to unload modules if securelevel raised. */ if (securelevel > 0) return (EPERM); @@ -498,55 +557,55 @@ return (error); #endif + KLD_LOCK_ASSERT(); KLD_DPF(FILE, ("linker_file_unload: lf->refs=%d\n", file->refs)); - if (file->refs == 1) { - KLD_DPF(FILE, ("linker_file_unload: file is unloading," - " informing modules\n")); + + /* Easy case of just dropping a reference. */ + if (file->refs > 1) { + file->refs--; + return (0); + } + + KLD_DPF(FILE, ("linker_file_unload: file is unloading," + " informing modules\n")); + + /* + * Inform any modules associated with this file. + */ + MOD_XLOCK; + for (mod = TAILQ_FIRST(&file->modules); mod; mod = next) { + next = module_getfnext(mod); + MOD_XUNLOCK; /* - * Inform any modules associated with this file. + * Give the module a chance to veto the unload. */ + if ((error = module_unload(mod, flags)) != 0) { + KLD_DPF(FILE, ("linker_file_unload: module %p" + " vetoes unload\n", mod)); + return (error); + } MOD_XLOCK; - for (mod = TAILQ_FIRST(&file->modules); mod; mod = next) { - next = module_getfnext(mod); - MOD_XUNLOCK; + module_release(mod); + } + MOD_XUNLOCK; - /* - * Give the module a chance to veto the unload. - */ - if ((error = module_unload(mod, flags)) != 0) { - KLD_DPF(FILE, ("linker_file_unload: module %p" - " vetoes unload\n", mod)); - goto out; - } else - MOD_XLOCK; - module_release(mod); - } - MOD_XUNLOCK; - } - file->refs--; - if (file->refs > 0) { - goto out; - } - for (ml = TAILQ_FIRST(&found_modules); ml; ml = nextml) { - nextml = TAILQ_NEXT(ml, link); + TAILQ_FOREACH_SAFE(ml, &found_modules, link, nextml) { if (ml->container == file) { TAILQ_REMOVE(&found_modules, ml, link); free(ml, M_LINKER); } } - /* - * Don't try to run SYSUNINITs if we are unloaded due to a + /* + * Don't try to run SYSUNINITs if we are unloaded due to a * link error. */ if (file->flags & LINKER_FILE_LINKED) { linker_file_sysuninit(file); linker_file_unregister_sysctls(file); } - mtx_lock(&kld_mtx); TAILQ_REMOVE(&linker_files, file, link); - mtx_unlock(&kld_mtx); if (file->deps) { for (i = 0; i < file->ndeps; i++) @@ -566,15 +625,15 @@ file->filename = NULL; } kobj_delete((kobj_t) file, M_LINKER); -out: - return (error); + return (0); } -int +static int linker_file_add_dependency(linker_file_t file, linker_file_t dep) { linker_file_t *newdeps; + KLD_LOCK_ASSERT(); newdeps = malloc((file->ndeps + 1) * sizeof(linker_file_t *), M_LINKER, M_WAITOK | M_ZERO); if (newdeps == NULL) @@ -593,25 +652,51 @@ /* * Locate a linker set and its contents. This is a helper function to avoid - * linker_if.h exposure elsewhere. Note: firstp and lastp are really void *** + * linker_if.h exposure elsewhere. Note: firstp and lastp are really void **. + * This function is used in this file so we can avoid having lots of (void **) + * casts. */ int linker_file_lookup_set(linker_file_t file, const char *name, void *firstp, void *lastp, int *countp) { + int error, locked; - return (LINKER_LOOKUP_SET(file, name, firstp, lastp, countp)); + locked = KLD_LOCKED(); + if (!locked) + KLD_LOCK(); + error = LINKER_LOOKUP_SET(file, name, firstp, lastp, countp); + if (!locked) + KLD_UNLOCK(); + return (error); } caddr_t linker_file_lookup_symbol(linker_file_t file, const char *name, int deps) { + caddr_t sym; + int locked; + + locked = KLD_LOCKED(); + if (!locked) + KLD_LOCK(); + sym = linker_file_lookup_symbol_internal(file, name, deps); + if (!locked) + KLD_UNLOCK(); + return (sym); +} + +static caddr_t +linker_file_lookup_symbol_internal(linker_file_t file, const char *name, + int deps) +{ c_linker_sym_t sym; linker_symval_t symval; caddr_t address; size_t common_size = 0; int i; + KLD_LOCK_ASSERT(); KLD_DPF(SYM, ("linker_file_lookup_symbol: file=%p, name=%s, deps=%d\n", file, name, deps)); @@ -632,8 +717,8 @@ } if (deps) { for (i = 0; i < file->ndeps; i++) { - address = linker_file_lookup_symbol(file->deps[i], - name, 0); + address = linker_file_lookup_symbol_internal( + file->deps[i], name, 0); if (address) { KLD_DPF(SYM, ("linker_file_lookup_symbol:" " deps value=%p\n", address)); @@ -663,10 +748,6 @@ cp = malloc(sizeof(struct common_symbol) + common_size + strlen(name) + 1, M_LINKER, M_WAITOK | M_ZERO); - if (cp == NULL) { - KLD_DPF(SYM, ("linker_file_lookup_symbol: nomem\n")); - return (0); - } cp->address = (caddr_t)(cp + 1); cp->name = cp->address + common_size; strcpy(cp->name, name); @@ -685,7 +766,7 @@ /* * DDB Helpers. DDB has to look across multiple files with their own symbol * tables and string tables. - * + * * Note that we do not obey list locking protocols here. We really don't need * DDB to hang because somebody's got the lock held. We'll take the chance * that the files list is inconsistant instead. @@ -754,64 +835,74 @@ * MPSAFE */ int -kldload(struct thread *td, struct kldload_args *uap) +kern_kldload(struct thread *td, const char *file, int *fileid) { #ifdef HWPMC_HOOKS struct pmckern_map_in pkm; #endif - char *kldname, *modname; - char *pathname = NULL; + const char *kldname, *modname; linker_file_t lf; - int error = 0; - - td->td_retval[0] = -1; - - mtx_lock(&Giant); + int error; if ((error = securelevel_gt(td->td_ucred, 0)) != 0) - goto out; + return (error); if ((error = suser(td)) != 0) - goto out; - - pathname = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); - if ((error = copyinstr(uap->file, pathname, MAXPATHLEN, NULL)) != 0) - goto out; + return (error); /* - * If path do not contain qualified name or any dot in it - * (kldname.ko, or kldname.ver.ko) treat it as interface + * If file does not contain a qualified name or any dot in it + * (kldname.ko, or kldname.ver.ko) treat it as an interface * name. */ - if (index(pathname, '/') || index(pathname, '.')) { - kldname = pathname; + if (index(file, '/') || index(file, '.')) { + kldname = file; modname = NULL; } else { kldname = NULL; - modname = pathname; + modname = file; } + + KLD_LOCK(); error = linker_load_module(kldname, modname, NULL, NULL, &lf); if (error) - goto out; - + goto unlock; #ifdef HWPMC_HOOKS pkm.pm_file = lf->filename; pkm.pm_address = (uintptr_t) lf->address; PMC_CALL_HOOK(td, PMC_FN_KLD_LOAD, (void *) &pkm); #endif lf->userrefs++; - td->td_retval[0] = lf->id; -out: - if (pathname) - free(pathname, M_TEMP); - mtx_unlock(&Giant); + if (fileid != NULL) + *fileid = lf->id; +unlock: + KLD_UNLOCK(); + return (error); +} + +int +kldload(struct thread *td, struct kldload_args *uap) +{ + char *pathname = NULL; + int error, fileid; + + td->td_retval[0] = -1; + + pathname = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); + error = copyinstr(uap->file, pathname, MAXPATHLEN, NULL); + if (error == 0) { + error = kern_kldload(td, pathname, &fileid); + if (error == 0) + td->td_retval[0] = fileid; + } + free(pathname, M_TEMP); return (error); } /* * MPSAFE */ -static int +int kern_kldunload(struct thread *td, int fileid, int flags) { #ifdef HWPMC_HOOKS @@ -820,14 +911,13 @@ linker_file_t lf; int error = 0; - mtx_lock(&Giant); - if ((error = securelevel_gt(td->td_ucred, 0)) != 0) - goto out; + return (error); if ((error = suser(td)) != 0) - goto out; + return (error); + KLD_LOCK(); lf = linker_find_file_by_id(fileid); if (lf) { KLD_DPF(FILE, ("kldunload: lf->userrefs=%d\n", lf->userrefs)); @@ -838,17 +928,17 @@ printf("kldunload: attempt to unload file that was" " loaded by the kernel\n"); error = EBUSY; - goto out; - } - lf->userrefs--; + } else { #ifdef HWPMC_HOOKS - /* Save data needed by hwpmc(4) before unloading the kld. */ - pkm.pm_address = (uintptr_t) lf->address; - pkm.pm_size = lf->size; + /* Save data needed by hwpmc(4) before unloading. */ + pkm.pm_address = (uintptr_t) lf->address; + pkm.pm_size = lf->size; #endif - error = linker_file_unload(lf, flags); - if (error) - lf->userrefs++; + lf->userrefs--; + error = linker_file_unload(lf, flags); + if (error) + lf->userrefs++; + } } else error = ENOENT; @@ -856,8 +946,7 @@ if (error == 0) PMC_CALL_HOOK(td, PMC_FN_KLD_UNLOAD, (void *) &pkm); #endif -out: - mtx_unlock(&Giant); + KLD_UNLOCK(); return (error); } @@ -893,7 +982,7 @@ char *pathname; const char *filename; linker_file_t lf; - int error = 0; + int error; #ifdef MAC error = mac_check_kld_stat(td->td_ucred); @@ -901,7 +990,6 @@ return (error); #endif - mtx_lock(&Giant); td->td_retval[0] = -1; pathname = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); @@ -909,15 +997,15 @@ goto out; filename = linker_basename(pathname); + KLD_LOCK(); lf = linker_find_file_by_name(filename); if (lf) td->td_retval[0] = lf->id; else error = ENOENT; + KLD_UNLOCK(); out: - if (pathname) - free(pathname, M_TEMP); - mtx_unlock(&Giant); + free(pathname, M_TEMP); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jun 23 17:17:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 317F716A4A0; Fri, 23 Jun 2006 17:17:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D038516A494 for ; Fri, 23 Jun 2006 17:17:35 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7184743DA5 for ; Fri, 23 Jun 2006 17:16:44 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NHGiT0035687 for ; Fri, 23 Jun 2006 17:16:44 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NHGiAx035677 for perforce@freebsd.org; Fri, 23 Jun 2006 17:16:44 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 17:16:44 GMT Message-Id: <200606231716.k5NHGiAx035677@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99870 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 17:17:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=99870 Change 99870 by jhb@jhb_mutex on 2006/06/23 17:16:32 IFC @99868. Affected files ... .. //depot/projects/smpng/sys/arm/arm/elf_trampoline.c#8 integrate .. //depot/projects/smpng/sys/arm/arm/locore.S#12 integrate .. //depot/projects/smpng/sys/compat/ndis/kern_ndis.c#34 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/smpng/sys/ia64/ia64/machdep.c#104 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#72 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#50 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_srvcache.c#12 integrate .. //depot/projects/smpng/sys/nfsserver/nfsrvcache.h#6 integrate .. //depot/projects/smpng/sys/sys/gpt.h#7 integrate .. //depot/projects/smpng/sys/vm/vm_page.c#78 integrate .. //depot/projects/smpng/sys/vm/vm_pageq.c#20 integrate Differences ... ==== //depot/projects/smpng/sys/arm/arm/elf_trampoline.c#8 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.8 2006/06/18 22:46:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.9 2006/06/22 22:33:21 cognet Exp $"); #include #include #include @@ -174,7 +174,6 @@ __start(); } -#ifdef KZIP static void get_cachetype_cp15() { @@ -255,6 +254,7 @@ } +#ifdef KZIP static unsigned char *orig_input, *i_input, *i_output; ==== //depot/projects/smpng/sys/arm/arm/locore.S#12 (text+ko) ==== @@ -37,9 +37,9 @@ #include #include #include -__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.13 2005/12/21 15:02:31 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.14 2006/06/21 23:47:25 imp Exp $"); -/* What size should this really be ? It is only used by init_arm() */ +/* What size should this really be ? It is only used by initarm() */ #define INIT_ARM_STACK_SIZE 2048 /* ==== //depot/projects/smpng/sys/compat/ndis/kern_ndis.c#34 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.91 2005/11/02 18:01:04 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.92 2006/06/22 13:11:36 dds Exp $"); #include #include @@ -405,13 +405,16 @@ cfg->ndis_oid = #if __FreeBSD_version < 502113 SYSCTL_ADD_STRING(&sc->ndis_ctx, SYSCTL_CHILDREN(sc->ndis_tree), + OID_AUTO, cfg->ndis_cfg.nc_cfgkey, flag, + cfg->ndis_cfg.nc_val, sizeof(cfg->ndis_cfg.nc_val), + cfg->ndis_cfg.nc_cfgdesc); #else SYSCTL_ADD_STRING(device_get_sysctl_ctx(sc->ndis_dev), SYSCTL_CHILDREN(device_get_sysctl_tree(sc->ndis_dev)), -#endif OID_AUTO, cfg->ndis_cfg.nc_cfgkey, flag, cfg->ndis_cfg.nc_val, sizeof(cfg->ndis_cfg.nc_val), cfg->ndis_cfg.nc_cfgdesc); +#endif return(0); } ==== //depot/projects/smpng/sys/dev/acpica/acpi_dock.c#2 (text) ==== @@ -23,25 +23,20 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi_dock.c,v 1.2 2006/04/16 15:35:12 maxim Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi_dock.c,v 1.3 2006/06/22 06:34:05 njl Exp $ */ #include "opt_acpi.h" #include +#include #include -#include - -#include - -#include #include #include +#include #include #include -#include - /* Hooks for the ACPI CA debugging infrastructure */ #define _COMPONENT ACPI_DOCK ACPI_MODULE_NAME("DOCK") @@ -56,6 +51,10 @@ #define ACPI_DOCK_STATUS_UNDOCKED 0 #define ACPI_DOCK_STATUS_DOCKED 1 +/* Prevent the device from being removed or not. */ +#define ACPI_DOCK_UNLOCK 0 +#define ACPI_DOCK_LOCK 1 + struct acpi_dock_softc { int _sta; int _bdn; @@ -68,10 +67,10 @@ /* Global docking status, for avoiding duplicated docking */ static int acpi_dock_status = ACPI_DOCK_STATUS_UNKNOWN; -ACPI_SERIAL_DECL(dock, "ACPI Dock Station"); +ACPI_SERIAL_DECL(dock, "ACPI Docking Station"); /* - * Utility + * Utility functions */ static void @@ -83,23 +82,15 @@ sc = device_get_softc(dev); h = acpi_get_handle(dev); - if (ACPI_FAILURE(acpi_GetInteger(h, "_STA", &sc->_sta))) { + if (ACPI_FAILURE(acpi_GetInteger(h, "_STA", &sc->_sta))) sc->_sta = ACPI_DOCK_STATUS_UNKNOWN; - } - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "_STA = %04x\n", sc->_sta); - - if (ACPI_FAILURE(acpi_GetInteger(h, "_BDN", &sc->_bdn))) { + if (ACPI_FAILURE(acpi_GetInteger(h, "_BDN", &sc->_bdn))) sc->_bdn = ACPI_DOCK_STATUS_UNKNOWN; - } - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "_BDN = %04x\n", sc->_bdn); - - if (ACPI_FAILURE(acpi_GetInteger(h, "_UID", &sc->_uid))) { + if (ACPI_FAILURE(acpi_GetInteger(h, "_UID", &sc->_uid))) sc->_uid = ACPI_DOCK_STATUS_UNKNOWN; - } ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "_UID = %04x\n", sc->_uid); + "_STA: %04x, _BDN: %04x, _UID: %04x\n", sc->_sta, + sc->_bdn, sc->_uid); } static int @@ -122,23 +113,21 @@ buf.Length = sizeof(retobj); status = AcpiEvaluateObject(h, "_DCK", &args, &buf); - if (dock == ACPI_DOCK_STATUS_UNDOCKED) { - /* - * When _DCK is called with 0, OSPM will ignore the return value. - */ + /* + * When _DCK is called with 0, OSPM will ignore the return value. + */ + if (dock == ACPI_DOCK_STATUS_UNDOCKED) return (0); - } - if (ACPI_SUCCESS(status)) { - if (retobj.Type == ACPI_TYPE_INTEGER && - retobj.Integer.Value == 1) { - return (0); - } - } + /* If _DCK returned 1, the request succeeded. */ + if (ACPI_SUCCESS(status) && retobj.Type == ACPI_TYPE_INTEGER && + retobj.Integer.Value == 1) + return (0); return (-1); } +/* Lock devices while docked. */ static void acpi_dock_execute_lck(device_t dev, int lock) { @@ -158,10 +147,8 @@ h = acpi_get_handle(dev); snprintf(ejx, sizeof(ejx), "_EJ%d", state); status = acpi_SetInteger(h, ejx, eject); - - if (ACPI_SUCCESS(status)) { + if (ACPI_SUCCESS(status)) return (0); - } return (-1); } @@ -179,17 +166,12 @@ ejd_buffer.Pointer = NULL; ejd_buffer.Length = ACPI_ALLOCATE_BUFFER; ret_status = AcpiEvaluateObject(handle, "_EJD", NULL, &ejd_buffer); - - if (ACPI_FAILURE(ret_status)) { + if (ACPI_FAILURE(ret_status)) goto out; - } obj = (ACPI_OBJECT *)ejd_buffer.Pointer; - if (dock_handle != acpi_GetReference(NULL, obj)) { - goto out; - } - - ret = 1; + if (dock_handle == acpi_GetReference(NULL, obj)) + ret = 1; out: if (ejd_buffer.Pointer != NULL) @@ -199,7 +181,7 @@ } /* - * Dock + * Docking functions */ static void @@ -209,9 +191,8 @@ dev = (device_t)context; - if (!device_is_enabled(dev)) { + if (!device_is_enabled(dev)) device_enable(dev); - } mtx_lock(&Giant); device_probe_and_attach(dev); @@ -219,7 +200,8 @@ } static ACPI_STATUS -acpi_dock_insert_child(ACPI_HANDLE handle, UINT32 level, void *context, void **status) +acpi_dock_insert_child(ACPI_HANDLE handle, UINT32 level, void *context, + void **status) { device_t dock_dev, dev; ACPI_HANDLE dock_handle; @@ -227,9 +209,8 @@ dock_dev = (device_t)context; dock_handle = acpi_get_handle(dock_dev); - if (!acpi_dock_is_ejd_device(dock_handle, handle)) { + if (!acpi_dock_is_ejd_device(dock_handle, handle)) goto out; - } ACPI_VPRINT(dock_dev, acpi_device_get_parent_softc(dock_dev), "inserting device for %s\n", acpi_name(handle)); @@ -251,8 +232,7 @@ dev = acpi_get_device(handle); if (dev == NULL) { - ACPI_VPRINT(dock_dev, acpi_device_get_parent_softc(dock_dev), - "%s has no device, something wrong\n", + device_printf(dock_dev, "error: %s has no associated device\n", acpi_name(handle)); goto out; } @@ -266,9 +246,11 @@ static void acpi_dock_insert_children(device_t dev) { + ACPI_STATUS status; ACPI_HANDLE sb_handle; - if (ACPI_SUCCESS(AcpiGetHandle(ACPI_ROOT_OBJECT, "\\_SB_", &sb_handle))) { + status = AcpiGetHandle(ACPI_ROOT_OBJECT, "\\_SB_", &sb_handle); + if (ACPI_SUCCESS(status)) { AcpiWalkNamespace(ACPI_TYPE_DEVICE, sb_handle, 100, acpi_dock_insert_child, dev, NULL); } @@ -287,26 +269,25 @@ if (acpi_dock_status == ACPI_DOCK_STATUS_UNDOCKED || acpi_dock_status == ACPI_DOCK_STATUS_UNKNOWN) { - acpi_dock_execute_lck(dev, 1); + acpi_dock_execute_lck(dev, ACPI_DOCK_LOCK); if (acpi_dock_execute_dck(dev, 1) != 0) { device_printf(dev, "_DCK failed\n"); return; } - if (!cold) { + if (!cold) acpi_dock_insert_children(dev); - } sc->status = acpi_dock_status = ACPI_DOCK_STATUS_DOCKED; } } - /* * Undock */ static ACPI_STATUS -acpi_dock_eject_child(ACPI_HANDLE handle, UINT32 level, void *context, void **status) +acpi_dock_eject_child(ACPI_HANDLE handle, UINT32 level, void *context, + void **status) { device_t dock_dev, dev; ACPI_HANDLE dock_handle; @@ -314,12 +295,11 @@ dock_dev = *(device_t *)context; dock_handle = acpi_get_handle(dock_dev); - if (!acpi_dock_is_ejd_device(dock_handle, handle)) { + if (!acpi_dock_is_ejd_device(dock_handle, handle)) goto out; - } ACPI_VPRINT(dock_dev, acpi_device_get_parent_softc(dock_dev), - "ejecting device for %s\n", acpi_name(handle)); + "ejecting device for %s\n", acpi_name(handle)); dev = acpi_get_device(handle); if (dev != NULL && device_is_attached(dev)) { @@ -337,8 +317,10 @@ acpi_dock_eject_children(device_t dev) { ACPI_HANDLE sb_handle; + ACPI_STATUS status; - if (ACPI_SUCCESS(AcpiGetHandle(ACPI_ROOT_OBJECT, "\\_SB_", &sb_handle))) { + status = AcpiGetHandle(ACPI_ROOT_OBJECT, "\\_SB_", &sb_handle); + if (ACPI_SUCCESS(status)) { AcpiWalkNamespace(ACPI_TYPE_DEVICE, sb_handle, 100, acpi_dock_eject_child, &dev, NULL); } @@ -355,11 +337,10 @@ if (acpi_dock_status == ACPI_DOCK_STATUS_DOCKED || acpi_dock_status == ACPI_DOCK_STATUS_UNKNOWN) { acpi_dock_eject_children(dev); - if (acpi_dock_execute_dck(dev, 0) != 0) { + if (acpi_dock_execute_dck(dev, 0) != 0) return; - } - acpi_dock_execute_lck(dev, 0); + acpi_dock_execute_lck(dev, ACPI_DOCK_UNLOCK); if (acpi_dock_execute_ejx(dev, 1, 0) != 0) { device_printf(dev, "_EJ0 failed\n"); @@ -370,9 +351,8 @@ } acpi_dock_get_info(dev); - if (sc->_sta != 0) { - device_printf(dev, "mechanical failures (%#x).\n", sc->_sta); - } + if (sc->_sta != 0) + device_printf(dev, "mechanical failure (%#x).\n", sc->_sta); } /* @@ -393,12 +373,10 @@ * If the _STA indicates 'present' and 'functioning', * the system is docked. */ - if (ACPI_DEVICE_PRESENT(sc->_sta)) { + if (ACPI_DEVICE_PRESENT(sc->_sta)) acpi_dock_insert(dev); - } - if (sc->_sta == 0x0) { + if (sc->_sta == 0) acpi_dock_removal(dev); - } } /* @@ -420,11 +398,9 @@ case ACPI_DOCK_NOTIFY_DEVICE_CHECK: acpi_dock_device_check(dev); break; - case ACPI_DOCK_NOTIFY_EJECT_REQUEST: acpi_dock_removal(dev); break; - default: device_printf(dev, "unknown notify %#x\n", notify); break; @@ -432,10 +408,6 @@ ACPI_SERIAL_END(dock); } -/* - * Sysctl proc - */ - static int acpi_dock_status_sysctl(SYSCTL_HANDLER_ARGS) { @@ -443,7 +415,6 @@ device_t dev; int status, err; - err = 0; dev = (device_t)arg1; sc = device_get_softc(dev); @@ -451,9 +422,8 @@ ACPI_SERIAL_BEGIN(dock); err = sysctl_handle_int(oidp, &status, 0, req); - if (err != 0 || req->newptr == NULL) { + if (err != 0 || req->newptr == NULL) goto out; - } if (status != ACPI_DOCK_STATUS_UNDOCKED && status != ACPI_DOCK_STATUS_DOCKED) { @@ -461,19 +431,16 @@ goto out; } - if (status == sc->status) { + if (status == sc->status) goto out; - } switch (status) { case ACPI_DOCK_STATUS_UNDOCKED: acpi_dock_removal(dev); break; - case ACPI_DOCK_STATUS_DOCKED: acpi_dock_device_check(dev); break; - default: err = EINVAL; break; @@ -483,10 +450,6 @@ return (err); } -/* - * probe/attach - */ - static int acpi_dock_probe(device_t dev) { @@ -497,11 +460,15 @@ ACPI_FAILURE(AcpiGetHandle(h, "_DCK", &tmp))) return (ENXIO); - if (acpi_dock_status == ACPI_DOCK_STATUS_DOCKED) { + if (acpi_dock_status == ACPI_DOCK_STATUS_DOCKED) return (ENXIO); - } + + device_set_desc(dev, "ACPI Docking Station"); - device_set_desc(dev, "ACPI Dock Station"); + /* + * XXX Somewhere else in the kernel panics on "sysctl kern" if we + * return a negative value here (reprobe ok). + */ return (0); } @@ -519,9 +486,8 @@ if (h == NULL) return (ENXIO); - if (acpi_dock_status == ACPI_DOCK_STATUS_DOCKED) { + if (acpi_dock_status == ACPI_DOCK_STATUS_DOCKED) return (ENXIO); - } sc->status = ACPI_DOCK_STATUS_UNKNOWN; ==== //depot/projects/smpng/sys/ia64/ia64/machdep.c#104 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.207 2006/02/22 18:57:49 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.208 2006/06/22 00:56:58 marcel Exp $"); #include "opt_compat.h" #include "opt_ddb.h" @@ -219,6 +219,14 @@ break; } break; + case 0x20: + family_name = "Itanium 2"; + switch (model) { + case 0x00: + model_name = "Montecito"; + break; + } + break; } snprintf(cpu_family, sizeof(cpu_family), "%s", family_name); snprintf(cpu_model, sizeof(cpu_model), "%s", model_name); ==== //depot/projects/smpng/sys/netinet/ip_fw2.c#72 (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/netinet/ip_fw2.c,v 1.135 2006/06/15 09:39:22 oleg Exp $ + * $FreeBSD: src/sys/netinet/ip_fw2.c,v 1.136 2006/06/22 13:22:54 ume Exp $ */ #define DEB(x) @@ -2189,7 +2189,10 @@ case IPPROTO_ROUTING: /* RFC 2460 */ PULLUP_TO(hlen, ulp, struct ip6_rthdr); - if (((struct ip6_rthdr *)ulp)->ip6r_type != 0) { + switch (((struct ip6_rthdr *)ulp)->ip6r_type) { + case 0: + break; + default: printf("IPFW2: IPV6 - Unknown Routing " "Header type(%d)\n", ((struct ip6_rthdr *)ulp)->ip6r_type); @@ -2260,11 +2263,20 @@ PULLUP_TO(hlen, ulp, struct ip6_ext); break; + case IPPROTO_IPV6: /* RFC 2893 */ + PULLUP_TO(hlen, ulp, struct ip6_hdr); + break; + + case IPPROTO_IPV4: /* RFC 2893 */ + PULLUP_TO(hlen, ulp, struct ip); + break; + default: printf("IPFW2: IPV6 - Unknown Extension " "Header(%d), ext_hd=%x\n", proto, ext_hd); if (fw_deny_unknown_exthdrs) return (IP_FW_DENY); + PULLUP_TO(hlen, ulp, struct ip6_ext); break; } /*switch */ } ==== //depot/projects/smpng/sys/netinet/tcp_syncache.c#50 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netinet/tcp_syncache.c,v 1.93 2006/06/20 08:11:30 andre Exp $ + * $FreeBSD: src/sys/netinet/tcp_syncache.c,v 1.94 2006/06/22 15:07:45 andre Exp $ */ #include "opt_inet.h" @@ -1289,8 +1289,6 @@ static int tcp_msstab[] = { 0, 536, 1460, 8960 }; -static MD5_CTX syn_ctx; - #define MD5Add(v) MD5Update(&syn_ctx, (u_char *)&v, sizeof(v)) struct md5_add { @@ -1329,6 +1327,7 @@ u_int32_t data; int idx, i; struct md5_add add; + MD5_CTX syn_ctx; idx = ((ticks << SYNCOOKIE_TIMESHIFT) / hz) & SYNCOOKIE_WNDMASK; SYNCOOKIE_RLOCK(tcp_secret[idx]); @@ -1380,6 +1379,7 @@ u_int32_t data; int wnd, idx; struct md5_add add; + MD5_CTX syn_ctx; data = (th->th_ack - 1) ^ (th->th_seq - 1); /* remove ISS */ idx = data & SYNCOOKIE_WNDMASK; ==== //depot/projects/smpng/sys/nfsserver/nfs_srvcache.c#12 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/nfsserver/nfs_srvcache.c,v 1.40 2005/01/07 01:45:51 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/nfsserver/nfs_srvcache.c,v 1.41 2006/06/23 00:42:26 mohans Exp $"); /* * Reference: Chet Juszczak, "Improving the Performance and Correctness @@ -49,6 +49,7 @@ #include #include #include /* for sodupsockaddr */ +#include #include #include @@ -57,7 +58,7 @@ #include static long numnfsrvcache; -static long desirednfsrvcache = NFSRVCACHESIZ; +static long desirednfsrvcache; #define NFSRCHASH(xid) \ (&nfsrvhashtbl[((xid) + ((xid) >> 24)) & nfsrvhash]) @@ -122,15 +123,32 @@ FALSE, }; +/* + * Size the NFS server's duplicate request cache at 1/2 the nmbclsters, floating + * within a (64, 2048) range. This is to prevent all mbuf clusters being tied up + * in the NFS dupreq cache for small values of nmbclusters. + */ +static void +nfsrvcache_size_change(void *tag) +{ + desirednfsrvcache = nmbclusters /2; + if (desirednfsrvcache > NFSRVCACHE_MAX_SIZE) + desirednfsrvcache = NFSRVCACHE_MAX_SIZE; + if (desirednfsrvcache < NFSRVCACHE_MIN_SIZE) + desirednfsrvcache = NFSRVCACHE_MIN_SIZE; +} + /* * Initialize the server request cache list */ void nfsrv_initcache(void) { - + nfsrvcache_size_change(NULL); nfsrvhashtbl = hashinit(desirednfsrvcache, M_NFSD, &nfsrvhash); TAILQ_INIT(&nfsrvlruhead); + EVENTHANDLER_REGISTER(nmbclusters_change, nfsrvcache_size_change, NULL, + EVENTHANDLER_PRI_FIRST); } /* ==== //depot/projects/smpng/sys/nfsserver/nfsrvcache.h#6 (text+ko) ==== @@ -30,7 +30,7 @@ * SUCH DAMAGE. * * @(#)nfsrvcache.h 8.3 (Berkeley) 3/30/95 - * $FreeBSD: src/sys/nfsserver/nfsrvcache.h,v 1.18 2006/04/25 00:21:56 mohans Exp $ + * $FreeBSD: src/sys/nfsserver/nfsrvcache.h,v 1.19 2006/06/23 00:42:26 mohans Exp $ */ #ifndef _NFSSERVER_NFSRVCACHE_H_ @@ -41,8 +41,8 @@ /* * Definitions for the server recent request cache */ - -#define NFSRVCACHESIZ 2048 +#define NFSRVCACHE_MAX_SIZE 2048 +#define NFSRVCACHE_MIN_SIZE 64 struct nfsrvcache { TAILQ_ENTRY(nfsrvcache) rc_lru; /* LRU chain */ ==== //depot/projects/smpng/sys/sys/gpt.h#7 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/gpt.h,v 1.9 2005/09/17 06:34:18 marcel Exp $ + * $FreeBSD: src/sys/sys/gpt.h,v 1.10 2006/06/22 22:11:12 marcel Exp $ */ #ifndef _SYS_GPT_H_ @@ -113,4 +113,7 @@ #define GPT_ENT_TYPE_LINUX_LVM \ {0xe6d6d379,0xf507,0x44c2,0xa2,0x3c,{0x23,0x8f,0x2a,0x3d,0xf9,0x28}} +#define GPT_ENT_TYPE_APPLE_HFS \ + {0x48465300,0x0000,0x11aa,0xaa,0x11,{0x00,0x30,0x65,0x43,0xec,0xac}} + #endif /* _SYS_GPT_H_ */ ==== //depot/projects/smpng/sys/vm/vm_page.c#78 (text+ko) ==== @@ -97,7 +97,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.316 2006/05/31 22:55:23 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.317 2006/06/23 16:44:24 jhb Exp $"); #include #include ==== //depot/projects/smpng/sys/vm/vm_pageq.c#20 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_pageq.c,v 1.26 2006/04/25 17:27:24 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_pageq.c,v 1.27 2006/06/23 16:44:24 jhb Exp $"); #include "opt_vmpage.h" From owner-p4-projects@FreeBSD.ORG Fri Jun 23 17:18:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5FB7716A4C8; Fri, 23 Jun 2006 17:18:27 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3C94616A4AB for ; Fri, 23 Jun 2006 17:18:27 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7CFB043D76 for ; Fri, 23 Jun 2006 17:17:57 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NHHv0s035764 for ; Fri, 23 Jun 2006 17:17:57 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NHHk3c035754 for perforce@freebsd.org; Fri, 23 Jun 2006 17:17:46 GMT (envelope-from piso@freebsd.org) Date: Fri, 23 Jun 2006 17:17:46 GMT Message-Id: <200606231717.k5NHHk3c035754@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99871 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 17:18:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=99871 Change 99871 by piso@piso_newluxor on 2006/06/23 17:17:46 break newbus API: bus_setup_intr() now accepts a new parameter: driver_filter_t filter; Previous API: bus_setup_intr(device_t dev, struct resource *r, int flags, driver_intr_t handler, void *arg, void **cookiep) New API: bus_setup_intr(device_t dev, struct resource *r, int flags, driver_filter_t filter, driver_intr_t handler, void *arg, void **cookiep) With the new interface, we can support 3 different interrupt handling models: -filter only (previously known as INTR_FAST) -filter+ithread -ithread only (legacy only?!?!) NOTA BENE: i didn't modify the various methods of different buses that overwrite bus_setup_intr() yet, that means even if GENERIC compiles fine, it will panic just after the reboot. Next step: modify all the methods (i.e. nexus_setup_intr()) that overwrite the bus_setup_intr method of newbus. Affected files ... .. //depot/projects/soc2006/intr_filter/compat/ndis/kern_ndis.c#2 edit .. //depot/projects/soc2006/intr_filter/contrib/dev/oltr/if_oltr.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/aac/aac.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/acpica/Osd/OsdInterrupt.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/advansys/adv_eisa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/advansys/adv_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/advansys/adv_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/advansys/adwcam.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/aha/aha_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ahb/ahb.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/aic/aic_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/aic/aic_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/aic7xxx/aic79xx_osm.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/aic7xxx/aic7xxx_osm.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/amd/amd.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/amr/amr_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/an/if_an_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/an/if_an_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/an/if_an_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ar/if_ar.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/arcmsr/arcmsr.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/arl/if_arl_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/asr/asr.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ata/ata-all.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.h#2 edit .. //depot/projects/soc2006/intr_filter/dev/ath/if_ath_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/atkbdc/atkbd.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/atkbdc/atkbd_atkbdc.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/atkbdc/psm.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/awi/if_awi_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/bce/if_bce.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/bktr/bktr_os.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/buslogic/bt.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ce/if_ce.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ciss/ciss.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/cm/if_cm_isa.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/cp/if_cp.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/cs/if_cs_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/cs/if_cs_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ctau/if_ct.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/cx/if_cx.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/dc/if_dc.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/de/if_de.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/dpt/dpt_eisa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/dpt/dpt_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/drm/drm_irq.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ed/if_ed_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ed/if_ed_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ed/if_ed_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/em/if_em.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/en/if_en_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ep/if_ep_eisa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ep/if_ep_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ep/if_ep_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ex/if_ex_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ex/if_ex_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/fatm/if_fatm.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/fdc/fdc.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/fe/if_fe.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/firewire/fwohci_pci.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/fxp/if_fxp.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/hatm/if_hatm.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/hfa/hfa_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/hifn/hifn7751.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/hme/if_hme_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/hptmv/entry.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ichsmb/ichsmb_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ida/ida_eisa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ida/ida_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/idt/idt_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ie/if_ie.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ie/if_ie_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/iir/iir_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ipmi/ipmi_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ips/ips_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ipw/if_ipw.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/isp/isp_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/iwi/if_iwi.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ixgb/if_ixgb.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/le/if_le_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/le/if_le_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/lge/if_lge.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/lmc/if_lmc.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/mfi/mfi.c#4 edit .. //depot/projects/soc2006/intr_filter/dev/mlx/mlx.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/mly/mly.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/mpt/mpt_pci.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/mse/mse.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/mxge/if_mxge.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/my/if_my.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ncv/ncr53c500_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/nge/if_nge.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/nsp/nsp_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/nve/if_nve.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/patm/if_patm_attach.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/pccard/pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbbvar.h#2 edit .. //depot/projects/soc2006/intr_filter/dev/pcf/pcf_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ppbus/if_plip.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ppbus/lpt.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ppbus/pps.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/ppc/ppc.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ppc/ppcvar.h#2 edit .. //depot/projects/soc2006/intr_filter/dev/pst/pst-iop.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/puc/puc.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/puc/puc_bfe.h#2 edit .. //depot/projects/soc2006/intr_filter/dev/ral/if_ral_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ray/if_ray.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/rc/rc.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/re/if_re.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/rr232x/osm_bsd.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/safe/safe.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sbni/if_sbni_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sbni/if_sbni_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sbsh/if_sbsh.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/sio/sio.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/sk/if_sk.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sn/if_sn.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sound/isa/gusc.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sound/pci/vibes.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sound/pcm/sound.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/sr/if_sr.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/stg/tmc18c30_isa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/stg/tmc18c30_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/stg/tmc18c30_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/sym/sym_hipd.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/ti/if_ti.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/trm/trm.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/twa/tw_osl_freebsd.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/twe/twe_freebsd.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/tx/if_tx.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/txp/if_txp.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/uart/uart_core.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/ubsec/ubsec.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/usb/ehci_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/usb/ohci_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/usb/uhci_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/vge/if_vge.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/vx/if_vx.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/vx/if_vx_eisa.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/vx/if_vx_pci.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/wi/if_wi.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/xe/if_xe.c#2 edit .. //depot/projects/soc2006/intr_filter/i386/isa/isa.c#2 edit .. //depot/projects/soc2006/intr_filter/i386/isa/npx.c#3 edit .. //depot/projects/soc2006/intr_filter/isa/isa_common.h#2 edit .. //depot/projects/soc2006/intr_filter/kern/bus_if.m#2 edit .. //depot/projects/soc2006/intr_filter/kern/subr_bus.c#2 edit .. //depot/projects/soc2006/intr_filter/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_pcn.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_rl.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_sf.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_sis.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_ste.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_tl.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_vr.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_wb.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/if_xl.c#2 edit .. //depot/projects/soc2006/intr_filter/pci/intpm.c#2 edit .. //depot/projects/soc2006/intr_filter/sys/bus.h#3 edit Differences ... ==== //depot/projects/soc2006/intr_filter/compat/ndis/kern_ndis.c#2 (text+ko) ==== @@ -1370,7 +1370,7 @@ if (sc->ndis_iftype == PCMCIABus || sc->ndis_iftype == PCIBus) { error = bus_setup_intr(sc->ndis_dev, sc->ndis_irq, INTR_TYPE_NET | INTR_MPSAFE, - ntoskrnl_intr, NULL, &sc->ndis_intrhand); + NULL, ntoskrnl_intr, NULL, &sc->ndis_intrhand); if (error) return(NDIS_STATUS_FAILURE); } ==== //depot/projects/soc2006/intr_filter/contrib/dev/oltr/if_oltr.c#2 (text+ko) ==== @@ -154,7 +154,7 @@ if_free(ifp); return (-1); } - if (bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, oltr_intr, + if (bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, NULL, oltr_intr, sc, &sc-> oltr_intrhand)) { device_printf(dev, "couldn't setup interrupt\n"); bus_release_resource(dev, SYS_RES_IRQ, 0, sc->irq_res); ==== //depot/projects/soc2006/intr_filter/dev/aac/aac.c#3 (text+ko) ==== @@ -305,22 +305,21 @@ } if (sc->flags & AAC_FLAGS_NEW_COMM) { if (bus_setup_intr(sc->aac_dev, sc->aac_irq, - INTR_MPSAFE|INTR_TYPE_BIO, aac_new_intr, + INTR_MPSAFE|INTR_TYPE_BIO, NULL, aac_new_intr, sc, &sc->aac_intr)) { device_printf(sc->aac_dev, "can't set up interrupt\n"); return (EINVAL); } } else { - // XXX - FIX_INTR_FILTER if (bus_setup_intr(sc->aac_dev, sc->aac_irq, INTR_FAST|INTR_TYPE_BIO, - (driver_intr_t *)aac_fast_intr, + aac_fast_intr, NULL, sc, &sc->aac_intr)) { device_printf(sc->aac_dev, "can't set up FAST interrupt\n"); if (bus_setup_intr(sc->aac_dev, sc->aac_irq, INTR_MPSAFE|INTR_TYPE_BIO, - aac_intr, sc, &sc->aac_intr)) { + NULL, aac_intr, sc, &sc->aac_intr)) { device_printf(sc->aac_dev, "can't set up MPSAFE interrupt\n"); return (EINVAL); ==== //depot/projects/soc2006/intr_filter/dev/acpica/Osd/OsdInterrupt.c#2 (text+ko) ==== @@ -86,7 +86,7 @@ goto error; } if (bus_setup_intr(sc->acpi_dev, sc->acpi_irq, INTR_TYPE_MISC|INTR_MPSAFE, - (driver_intr_t *)ServiceRoutine, Context, &sc->acpi_irq_handle)) { + NULL, (driver_intr_t *)ServiceRoutine, Context, &sc->acpi_irq_handle)) { device_printf(sc->acpi_dev, "could not set up interrupt\n"); goto error; } ==== //depot/projects/soc2006/intr_filter/dev/advansys/adv_eisa.c#2 (text+ko) ==== @@ -323,7 +323,8 @@ /* * Enable our interrupt handler. */ - bus_setup_intr(dev, irq, INTR_TYPE_CAM|INTR_ENTROPY, adv_intr, adv, &ih); + bus_setup_intr(dev, irq, INTR_TYPE_CAM|INTR_ENTROPY, NULL, adv_intr, + adv, &ih); /* Attach sub-devices - always succeeds */ adv_attach(adv); ==== //depot/projects/soc2006/intr_filter/dev/advansys/adv_isa.c#2 (text+ko) ==== @@ -337,7 +337,7 @@ RF_ACTIVE); if (irqres == NULL || bus_setup_intr(dev, irqres, INTR_TYPE_CAM|INTR_ENTROPY, - adv_intr, adv, &ih)) { + NULL, adv_intr, adv, &ih)) { bus_dmamap_unload(overrun_dmat, overrun_dmamap); bus_dmamem_free(overrun_dmat, overrun_buf, overrun_dmamap); ==== //depot/projects/soc2006/intr_filter/dev/advansys/adv_pci.c#2 (text+ko) ==== @@ -309,7 +309,7 @@ irqres = bus_alloc_resource_any(dev, SYS_RES_IRQ, &irqrid, RF_SHAREABLE | RF_ACTIVE); if (irqres == NULL || - bus_setup_intr(dev, irqres, INTR_TYPE_CAM|INTR_ENTROPY, adv_intr, adv, &ih)) { + bus_setup_intr(dev, irqres, INTR_TYPE_CAM|INTR_ENTROPY, NULL, adv_intr, adv, &ih)) { adv_free(adv); bus_release_resource(dev, SYS_RES_IOPORT, rid, iores); return ENXIO; ==== //depot/projects/soc2006/intr_filter/dev/advansys/adwcam.c#2 (text+ko) ==== @@ -1199,8 +1199,8 @@ s = splcam(); /* Hook up our interrupt handler */ if ((error = bus_setup_intr(adw->device, adw->irq, - INTR_TYPE_CAM | INTR_ENTROPY, adw_intr, - adw, &adw->ih)) != 0) { + INTR_TYPE_CAM | INTR_ENTROPY, NULL, + adw_intr, adw, &adw->ih)) != 0) { device_printf(adw->device, "bus_setup_intr() failed: %d\n", error); goto fail; ==== //depot/projects/soc2006/intr_filter/dev/aha/aha_isa.c#2 (text+ko) ==== @@ -272,7 +272,7 @@ } error = bus_setup_intr(dev, aha->irq, INTR_TYPE_CAM|INTR_ENTROPY, - aha_intr, aha, &ih); + NULL, aha_intr, aha, &ih); if (error) { device_printf(dev, "Unable to register interrupt handler\n"); goto fail; ==== //depot/projects/soc2006/intr_filter/dev/ahb/ahb.c#2 (text+ko) ==== @@ -378,7 +378,7 @@ goto error_exit; /* Enable our interrupt */ - bus_setup_intr(dev, irq, INTR_TYPE_CAM|INTR_ENTROPY, ahbintr, ahb, &ih); + bus_setup_intr(dev, irq, INTR_TYPE_CAM|INTR_ENTROPY, NULL, ahbintr, ahb, &ih); return (0); error_exit: ==== //depot/projects/soc2006/intr_filter/dev/aic/aic_isa.c#2 (text+ko) ==== @@ -188,7 +188,7 @@ } error = bus_setup_intr(dev, sc->sc_irq, INTR_TYPE_CAM|INTR_ENTROPY, - aic_intr, aic, &sc->sc_ih); + NULL, aic_intr, aic, &sc->sc_ih); if (error) { device_printf(dev, "failed to register interrupt handler\n"); aic_isa_release_resources(dev); ==== //depot/projects/soc2006/intr_filter/dev/aic/aic_pccard.c#2 (text+ko) ==== @@ -142,7 +142,7 @@ } error = bus_setup_intr(dev, sc->sc_irq, INTR_TYPE_CAM|INTR_ENTROPY, - aic_intr, aic, &sc->sc_ih); + NULL, aic_intr, aic, &sc->sc_ih); if (error) { device_printf(dev, "failed to register interrupt handler\n"); aic_pccard_release_resources(dev); ==== //depot/projects/soc2006/intr_filter/dev/aic7xxx/aic79xx_osm.c#2 (text+ko) ==== @@ -95,7 +95,7 @@ /* Hook up our interrupt handler */ error = bus_setup_intr(ahd->dev_softc, ahd->platform_data->irq, - INTR_TYPE_CAM, ahd_platform_intr, ahd, + INTR_TYPE_CAM, NULL, ahd_platform_intr, ahd, &ahd->platform_data->ih); if (error != 0) device_printf(ahd->dev_softc, "bus_setup_intr() failed: %d\n", ==== //depot/projects/soc2006/intr_filter/dev/aic7xxx/aic7xxx_osm.c#2 (text+ko) ==== @@ -107,7 +107,7 @@ /* Hook up our interrupt handler */ error = bus_setup_intr(ahc->dev_softc, ahc->platform_data->irq, - INTR_TYPE_CAM, ahc_platform_intr, ahc, + INTR_TYPE_CAM, NULL, ahc_platform_intr, ahc, &ahc->platform_data->ih); if (error != 0) ==== //depot/projects/soc2006/intr_filter/dev/amd/amd.c#2 (text+ko) ==== @@ -2435,7 +2435,7 @@ RF_SHAREABLE | RF_ACTIVE); if (irqres == NULL || bus_setup_intr(dev, irqres, INTR_TYPE_CAM | INTR_ENTROPY, - amd_intr, amd, &ih)) { + NULL, amd_intr, amd, &ih)) { if (bootverbose) printf("amd%d: unable to register interrupt handler!\n", unit); ==== //depot/projects/soc2006/intr_filter/dev/amr/amr_pci.c#2 (text+ko) ==== @@ -261,7 +261,7 @@ goto out; } if (bus_setup_intr(sc->amr_dev, sc->amr_irq, - INTR_TYPE_BIO | INTR_ENTROPY | INTR_MPSAFE, amr_pci_intr, + INTR_TYPE_BIO | INTR_ENTROPY | INTR_MPSAFE, NULL, amr_pci_intr, sc, &sc->amr_intr)) { device_printf(sc->amr_dev, "can't set up interrupt\n"); goto out; ==== //depot/projects/soc2006/intr_filter/dev/an/if_an_isa.c#2 (text+ko) ==== @@ -122,7 +122,7 @@ } error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - an_intr, sc, &sc->irq_handle); + NULL, an_intr, sc, &sc->irq_handle); if (error) { an_release_resources(dev); return (error); ==== //depot/projects/soc2006/intr_filter/dev/an/if_an_pccard.c#2 (text+ko) ==== @@ -153,7 +153,7 @@ * Must setup the interrupt after the an_attach to prevent racing. */ error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - an_intr, sc, &sc->irq_handle); + NULL, an_intr, sc, &sc->irq_handle); fail: if (error) an_release_resources(dev); ==== //depot/projects/soc2006/intr_filter/dev/an/if_an_pci.c#2 (text+ko) ==== @@ -240,7 +240,7 @@ * Must setup the interrupt after the an_attach to prevent racing. */ error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - an_intr, sc, &sc->irq_handle); + NULL, an_intr, sc, &sc->irq_handle); fail: if (error) ==== //depot/projects/soc2006/intr_filter/dev/ar/if_ar.c#2 (text+ko) ==== @@ -259,7 +259,7 @@ arc_init(hc); if(bus_setup_intr(device, hc->res_irq, - INTR_TYPE_NET, arintr, hc, &hc->intr_cookie) != 0) + INTR_TYPE_NET, NULL, arintr, hc, &hc->intr_cookie) != 0) return (1); sc = hc->sc; ==== //depot/projects/soc2006/intr_filter/dev/arcmsr/arcmsr.c#2 (text+ko) ==== @@ -2381,7 +2381,7 @@ /* After setting up the adapter,map our interrupt */ rid=0; irqres=bus_alloc_resource(dev,SYS_RES_IRQ,&rid,0,~0,1,RF_SHAREABLE | RF_ACTIVE); - if(irqres == NULL || bus_setup_intr(dev,irqres,INTR_TYPE_CAM,arcmsr_interrupt,pACB,&pACB->ih)) + if(irqres == NULL || bus_setup_intr(dev,irqres,INTR_TYPE_CAM,NULL,arcmsr_interrupt,pACB,&pACB->ih)) { arcmsr_free_resource(pACB); printf("arcmsr%d: unable to register interrupt handler!\n",unit); ==== //depot/projects/soc2006/intr_filter/dev/arl/if_arl_isa.c#2 (text+ko) ==== @@ -303,7 +303,7 @@ arl_alloc_irq(dev, sc->irq_rid, 0); error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - arl_intr, sc, &sc->irq_handle); + NULL, arl_intr, sc, &sc->irq_handle); if (error) { arl_release_resources(dev); return (error); ==== //depot/projects/soc2006/intr_filter/dev/asr/asr.c#2 (text+ko) ==== @@ -2294,7 +2294,7 @@ return (0); } if (bus_setup_intr(dev, sc->ha_irq_res, INTR_TYPE_CAM | INTR_ENTROPY, - (driver_intr_t *)asr_intr, (void *)sc, &(sc->ha_intr))) { + NULL, (driver_intr_t *)asr_intr, (void *)sc, &(sc->ha_intr))) { return (0); } sc->ha_irq = pci_read_config(dev, PCIR_INTLINE, sizeof(char)); ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-all.c#2 (text+ko) ==== @@ -134,7 +134,7 @@ device_printf(dev, "unable to allocate interrupt\n"); return ENXIO; } - if ((error = bus_setup_intr(dev, ch->r_irq, ATA_INTR_FLAGS, + if ((error = bus_setup_intr(dev, ch->r_irq, ATA_INTR_FLAGS, NULL, (driver_intr_t *)ata_interrupt, ch, &ch->ih))) { device_printf(dev, "unable to setup interrupt\n"); return error; ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#3 (text+ko) ==== @@ -3052,7 +3052,7 @@ u_int32_t dimm = ATA_INL(ctlr->r_res2, 0x000c0080); if (bus_teardown_intr(dev, ctlr->r_irq, ctlr->handle) || - bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, + bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, NULL, ata_promise_sx4_intr, ctlr, &ctlr->handle)) { device_printf(dev, "unable to setup interrupt\n"); goto failnfree; @@ -3086,7 +3086,7 @@ /* mio type controllers need an interrupt intercept */ if (bus_teardown_intr(dev, ctlr->r_irq, ctlr->handle) || - bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, + bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, NULL, ata_promise_mio_intr, ctlr, &ctlr->handle)) { device_printf(dev, "unable to setup interrupt\n"); goto failnfree; @@ -4876,7 +4876,7 @@ device_printf(dev, "unable to map interrupt\n"); return ENXIO; } - if ((bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, + if ((bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, NULL, ata_generic_intr, ctlr, &ctlr->handle))) { device_printf(dev, "unable to setup interrupt\n"); return ENXIO; ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#2 (text+ko) ==== @@ -335,12 +335,12 @@ int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, - int flags, driver_intr_t *function, void *argument, - void **cookiep) + int flags, driver_filter_t *filter, driver_intr_t *function, + void *argument, void **cookiep) { if (ata_legacy(dev)) { return BUS_SETUP_INTR(device_get_parent(dev), child, irq, - flags, function, argument, cookiep); + flags, filter, function, argument, cookiep); } else { struct ata_pci_controller *controller = device_get_softc(dev); ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.h#2 (text+ko) ==== @@ -400,7 +400,7 @@ int ata_pci_detach(device_t dev); struct resource * ata_pci_alloc_resource(device_t dev, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags); int ata_pci_release_resource(device_t dev, device_t child, int type, int rid, struct resource *r); -int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, int flags, driver_intr_t *function, void *argument, void **cookiep); +int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, int flags, driver_filter_t *filter, driver_intr_t *function, void *argument, void **cookiep); int ata_pci_teardown_intr(device_t dev, device_t child, struct resource *irq, void *cookie); int ata_pci_allocate(device_t dev); void ata_pci_hw(device_t dev); ==== //depot/projects/soc2006/intr_filter/dev/ath/if_ath_pci.c#2 (text+ko) ==== @@ -168,7 +168,7 @@ goto bad1; } if (bus_setup_intr(dev, psc->sc_irq, - INTR_TYPE_NET | INTR_MPSAFE, + INTR_TYPE_NET | INTR_MPSAFE, NULL, ath_intr, sc, &psc->sc_ih)) { device_printf(dev, "could not establish interrupt\n"); goto bad2; ==== //depot/projects/soc2006/intr_filter/dev/atkbdc/atkbd.c#2 (text+ko) ==== ==== //depot/projects/soc2006/intr_filter/dev/atkbdc/atkbd_atkbdc.c#2 (text+ko) ==== @@ -136,7 +136,7 @@ RF_SHAREABLE | RF_ACTIVE); if (sc->intr == NULL) return ENXIO; - error = bus_setup_intr(dev, sc->intr, INTR_TYPE_TTY, atkbdintr, + error = bus_setup_intr(dev, sc->intr, INTR_TYPE_TTY, NULL, atkbdintr, kbd, &sc->ih); if (error) bus_release_resource(dev, SYS_RES_IRQ, rid, sc->intr); ==== //depot/projects/soc2006/intr_filter/dev/atkbdc/psm.c#2 (text+ko) ==== @@ -1275,7 +1275,7 @@ RF_SHAREABLE | RF_ACTIVE); if (sc->intr == NULL) return (ENXIO); - error = bus_setup_intr(dev, sc->intr, INTR_TYPE_TTY, psmintr, sc, &sc->ih); + error = bus_setup_intr(dev, sc->intr, INTR_TYPE_TTY, NULL, psmintr, sc, &sc->ih); if (error) { bus_release_resource(dev, SYS_RES_IRQ, rid, sc->intr); return (error); ==== //depot/projects/soc2006/intr_filter/dev/awi/if_awi_pccard.c#2 (text+ko) ==== @@ -238,7 +238,7 @@ if (psc->sc_intrhand == 0) { error = bus_setup_intr(dev, psc->sc_irq_res, INTR_TYPE_NET, - (void (*)(void *))awi_intr, sc, &psc->sc_intrhand); + NULL, (void (*)(void *))awi_intr, sc, &psc->sc_intrhand); if (error) { device_printf(dev, "couldn't establish interrupt error=%d\n", error); ==== //depot/projects/soc2006/intr_filter/dev/bce/if_bce.c#2 (text) ==== @@ -765,7 +765,7 @@ #endif /* Hookup IRQ last. */ - rc = bus_setup_intr(dev, sc->bce_irq, INTR_TYPE_NET | INTR_MPSAFE, + rc = bus_setup_intr(dev, sc->bce_irq, INTR_TYPE_NET | INTR_MPSAFE, NULL, bce_intr, sc, &sc->bce_intrhand); if (rc) { ==== //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#2 (text+ko) ==== @@ -419,7 +419,7 @@ * Hook interrupt last to avoid having to lock softc */ error = bus_setup_intr(dev, sc->bfe_irq, INTR_TYPE_NET | INTR_MPSAFE, - bfe_intr, sc, &sc->bfe_intrhand); + NULL, bfe_intr, sc, &sc->bfe_intrhand); if (error) { printf("bfe%d: couldn't set up irq\n", unit); ==== //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#3 (text+ko) ==== @@ -2218,7 +2218,7 @@ * Hookup IRQ last. */ error = bus_setup_intr(dev, sc->bge_irq, INTR_TYPE_NET | INTR_MPSAFE, - bge_intr, sc, &sc->bge_intrhand); + NULL, bge_intr, sc, &sc->bge_intrhand); if (error) { bge_detach(dev); ==== //depot/projects/soc2006/intr_filter/dev/bktr/bktr_os.c#2 (text+ko) ==== @@ -384,7 +384,7 @@ } error = bus_setup_intr(dev, bktr->res_irq, INTR_TYPE_TTY, - bktr_intr, bktr, &bktr->res_ih); + NULL, bktr_intr, bktr, &bktr->res_ih); if (error) { device_printf(dev, "could not setup irq\n"); goto fail; ==== //depot/projects/soc2006/intr_filter/dev/buslogic/bt.c#2 (text+ko) ==== @@ -895,7 +895,7 @@ /* * Setup interrupt. */ - error = bus_setup_intr(dev, bt->irq, INTR_TYPE_CAM|INTR_ENTROPY, + error = bus_setup_intr(dev, bt->irq, INTR_TYPE_CAM|INTR_ENTROPY, NULL, bt_intr, bt, &bt->ih); if (error) { device_printf(dev, "bus_setup_intr() failed: %d\n", error); ==== //depot/projects/soc2006/intr_filter/dev/ce/if_ce.c#2 (text+ko) ==== @@ -666,7 +666,7 @@ #else INTR_TYPE_NET, #endif - ce_intr, bd, &bd->ce_intrhand); + NULL, ce_intr, bd, &bd->ce_intrhand); if (error) { printf ("ce%d: cannot set up irq\n", unit); bus_release_resource (dev, SYS_RES_IRQ, 0, bd->ce_irq); ==== //depot/projects/soc2006/intr_filter/dev/ciss/ciss.c#2 (text+ko) ==== @@ -653,7 +653,7 @@ return(ENXIO); } if (bus_setup_intr(sc->ciss_dev, sc->ciss_irq_resource, - INTR_TYPE_CAM|INTR_ENTROPY, ciss_intr, sc, + INTR_TYPE_CAM|INTR_ENTROPY, NULL, ciss_intr, sc, &sc->ciss_intr)) { ciss_printf(sc, "can't set up interrupt\n"); return(ENXIO); ==== //depot/projects/soc2006/intr_filter/dev/cm/if_cm_isa.c#3 (text+ko) ==== @@ -107,7 +107,7 @@ mtx_init(&sc->sc_mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK, MTX_DEF); error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET | INTR_MPSAFE, - cmintr, sc, &sc->irq_handle); + NULL, cmintr, sc, &sc->irq_handle); if (error) goto err; ==== //depot/projects/soc2006/intr_filter/dev/cp/if_cp.c#2 (text+ko) ==== @@ -480,7 +480,7 @@ callout_init (&led_timo[unit], cp_mpsafenet ? CALLOUT_MPSAFE : 0); error = bus_setup_intr (dev, bd->cp_irq, INTR_TYPE_NET|(cp_mpsafenet?INTR_MPSAFE:0), - cp_intr, bd, &bd->cp_intrhand); + NULL, cp_intr, bd, &bd->cp_intrhand); if (error) { cp_destroy = 1; printf ("cp%d: cannot set up irq\n", unit); ==== //depot/projects/soc2006/intr_filter/dev/cs/if_cs_isa.c#2 (text+ko) ==== @@ -99,7 +99,7 @@ cs_alloc_irq(dev, sc->irq_rid, 0); error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - csintr, sc, &sc->irq_handle); + NULL, csintr, sc, &sc->irq_handle); if (error) { cs_release_resources(dev); return (error); ==== //depot/projects/soc2006/intr_filter/dev/cs/if_cs_pccard.c#2 (text+ko) ==== @@ -91,7 +91,7 @@ if (error != 0) goto bad; error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - csintr, sc, &sc->irq_handle); + NULL, csintr, sc, &sc->irq_handle); if (error != 0) goto bad; ==== //depot/projects/soc2006/intr_filter/dev/ctau/if_ct.c#2 (text+ko) ==== @@ -681,7 +681,7 @@ s = splimp (); if (bus_setup_intr (dev, bd->irq_res, INTR_TYPE_NET|(ct_mpsafenet?INTR_MPSAFE:0), - ct_intr, bd, &bd->intrhand)) { + NULL, ct_intr, bd, &bd->intrhand)) { printf ("ct%d: Can't setup irq %ld\n", unit, irq); bd->board = 0; adapter [unit] = 0; ==== //depot/projects/soc2006/intr_filter/dev/cx/if_cx.c#2 (text+ko) ==== @@ -779,7 +779,7 @@ s = splhigh (); if (bus_setup_intr (dev, bd->irq_res, INTR_TYPE_NET|(cx_mpsafenet?INTR_MPSAFE:0), - cx_intr, bd, &bd->intrhand)) { + NULL, cx_intr, bd, &bd->intrhand)) { printf ("cx%d: Can't setup irq %ld\n", unit, irq); bd->board = 0; b->sys = 0; ==== //depot/projects/soc2006/intr_filter/dev/dc/if_dc.c#2 (text+ko) ==== @@ -2258,7 +2258,7 @@ /* Hook interrupt last to avoid having to lock softc */ error = bus_setup_intr(dev, sc->dc_irq, INTR_TYPE_NET | INTR_MPSAFE, - dc_intr, sc, &sc->dc_intrhand); + NULL, dc_intr, sc, &sc->dc_intrhand); if (error) { device_printf(dev, "couldn't set up irq\n"); ==== //depot/projects/soc2006/intr_filter/dev/de/if_de.c#2 (text) ==== @@ -4892,7 +4892,7 @@ res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, RF_SHAREABLE | RF_ACTIVE); if (res == 0 || bus_setup_intr(dev, res, INTR_TYPE_NET | - INTR_MPSAFE, intr_rtn, sc, &ih)) { + INTR_MPSAFE, NULL, intr_rtn, sc, &ih)) { device_printf(dev, "couldn't map interrupt\n"); tulip_busdma_cleanup(sc); ether_ifdetach(sc->tulip_ifp); ==== //depot/projects/soc2006/intr_filter/dev/dpt/dpt_eisa.c#2 (text+ko) ==== @@ -153,7 +153,7 @@ splx(s); if (bus_setup_intr(dev, dpt->irq_res, INTR_TYPE_CAM | INTR_ENTROPY, - dpt_intr, dpt, &dpt->ih)) { + NULL, dpt_intr, dpt, &dpt->ih)) { device_printf(dev, "Unable to register interrupt handler\n"); error = ENXIO; goto bad; ==== //depot/projects/soc2006/intr_filter/dev/dpt/dpt_pci.c#2 (text+ko) ==== @@ -163,7 +163,7 @@ splx(s); if (bus_setup_intr(dev, dpt->irq_res, INTR_TYPE_CAM | INTR_ENTROPY, - dpt_intr, dpt, &dpt->ih)) { + NULL, dpt_intr, dpt, &dpt->ih)) { device_printf(dev, "Unable to register interrupt handler\n"); error = ENXIO; goto bad; ==== //depot/projects/soc2006/intr_filter/dev/drm/drm_irq.c#2 (text+ko) ==== @@ -110,7 +110,7 @@ dev->irq_handler, dev, &dev->irqh); #else retcode = bus_setup_intr(dev->device, dev->irqr, INTR_TYPE_TTY | INTR_MPSAFE, - drm_irq_handler_wrap, dev, &dev->irqh); + NULL, drm_irq_handler_wrap, dev, &dev->irqh); #endif if (retcode != 0) goto err; ==== //depot/projects/soc2006/intr_filter/dev/ed/if_ed_isa.c#2 (text+ko) ==== @@ -170,7 +170,7 @@ ed_alloc_irq(dev, sc->irq_rid, 0); error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET | INTR_MPSAFE, - edintr, sc, &sc->irq_handle); + NULL, edintr, sc, &sc->irq_handle); if (error) { ed_release_resources(dev); return (error); ==== //depot/projects/soc2006/intr_filter/dev/ed/if_ed_pccard.c#2 (text+ko) ==== @@ -478,7 +478,7 @@ goto bad; error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET | INTR_MPSAFE, - edintr, sc, &sc->irq_handle); + NULL, edintr, sc, &sc->irq_handle); if (error) { device_printf(dev, "setup intr failed %d \n", error); goto bad; ==== //depot/projects/soc2006/intr_filter/dev/ed/if_ed_pci.c#2 (text+ko) ==== @@ -107,7 +107,7 @@ return (error); } error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET | INTR_MPSAFE, - edintr, sc, &sc->irq_handle); + NULL, edintr, sc, &sc->irq_handle); if (error) { ed_release_resources(dev); return (error); ==== //depot/projects/soc2006/intr_filter/dev/em/if_em.c#3 (text+ko) ==== @@ -1976,7 +1976,7 @@ #ifdef DEVICE_POLLING if (sc->int_handler_tag == NULL && (error = bus_setup_intr(dev, - sc->res_interrupt, INTR_TYPE_NET | INTR_MPSAFE, em_intr, sc, + sc->res_interrupt, INTR_TYPE_NET | INTR_MPSAFE, NULL, em_intr, sc, &sc->int_handler_tag)) != 0) { device_printf(dev, "Failed to register interrupt handler"); return (error); @@ -1994,7 +1994,7 @@ device_get_nameunit(sc->dev)); // XXX - FIX_INTR_FILTER if ((error = bus_setup_intr(dev, sc->res_interrupt, - INTR_TYPE_NET | INTR_FAST, (driver_intr_t *)em_intr_fast, sc, + INTR_TYPE_NET | INTR_FAST, em_intr_fast, NULL, sc, &sc->int_handler_tag)) != 0) { device_printf(dev, "Failed to register fast interrupt " "handler: %d\n", error); ==== //depot/projects/soc2006/intr_filter/dev/en/if_en_pci.c#2 (text+ko) ==== @@ -277,7 +277,7 @@ * Do the interrupt SETUP last just before returning */ error = bus_setup_intr(dev, scp->irq, INTR_TYPE_NET, - en_intr, sc, &scp->ih); + NULL, en_intr, sc, &scp->ih); if (error) { en_reset(sc); atm_ifdetach(sc->ifp); ==== //depot/projects/soc2006/intr_filter/dev/ep/if_ep_eisa.c#2 (text+ko) ==== @@ -217,8 +217,8 @@ device_printf(dev, "ep_attach() failed! (%d)\n", error); goto bad; } - if ((error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET | INTR_MPSAFE, ep_intr, - sc, &sc->ep_intrhand))) { + if ((error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET | INTR_MPSAFE, + NULL, ep_intr, sc, &sc->ep_intrhand))) { device_printf(dev, "bus_setup_intr() failed! (%d)\n", error); goto bad; } ==== //depot/projects/soc2006/intr_filter/dev/ep/if_ep_isa.c#2 (text+ko) ==== @@ -336,8 +336,8 @@ device_printf(sc->dev, "Invalid EEPROM checksum!\n"); goto bad; } - if ((error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET | INTR_MPSAFE, ep_intr, - sc, &sc->ep_intrhand))) { + if ((error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET | INTR_MPSAFE, + NULL, ep_intr, sc, &sc->ep_intrhand))) { device_printf(dev, "bus_setup_intr() failed! (%d)\n", error); goto bad; } ==== //depot/projects/soc2006/intr_filter/dev/ep/if_ep_pccard.c#2 (text+ko) ==== @@ -204,7 +204,7 @@ goto bad; } if ((error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET | INTR_MPSAFE, - ep_intr, sc, &sc->ep_intrhand))) { + NULL, ep_intr, sc, &sc->ep_intrhand))) { device_printf(dev, "bus_setup_intr() failed! (%d)\n", error); goto bad; } ==== //depot/projects/soc2006/intr_filter/dev/ex/if_ex_isa.c#2 (text+ko) ==== @@ -314,7 +314,7 @@ } error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET, - ex_intr, (void *)sc, &sc->ih); + NULL, ex_intr, (void *)sc, &sc->ih); if (error) { device_printf(dev, "bus_setup_intr() failed!\n"); goto bad; ==== //depot/projects/soc2006/intr_filter/dev/ex/if_ex_pccard.c#2 (text+ko) ==== @@ -165,7 +165,7 @@ } error = bus_setup_intr(dev, sc->irq, INTR_TYPE_NET, - ex_intr, (void *)sc, &sc->ih); + NULL, ex_intr, (void *)sc, &sc->ih); if (error) { device_printf(dev, "bus_setup_intr() failed!\n"); goto bad; ==== //depot/projects/soc2006/intr_filter/dev/fatm/if_fatm.c#2 (text+ko) ==== @@ -3060,7 +3060,7 @@ #endif error = bus_setup_intr(dev, sc->irqres, INTR_TYPE_NET | INTR_MPSAFE, - fatm_intr, sc, &sc->ih); + NULL, fatm_intr, sc, &sc->ih); if (error) { if_printf(ifp, "couldn't setup irq\n"); goto fail; ==== //depot/projects/soc2006/intr_filter/dev/fdc/fdc.c#3 (text+ko) ==== @@ -1745,11 +1745,11 @@ device_printf(dev, "does not respond\n"); return (error); } - // XXX - FIX_INTR_FILTER error = bus_setup_intr(dev, fdc->res_irq, INTR_TYPE_BIO | INTR_ENTROPY | INTR_MPSAFE | - ((fdc->flags & FDC_NOFAST) ? 0 : INTR_FAST), - ((fdc->flags & FDC_NOFAST) ? fdc_intr : (driver_intr_t *)fdc_intr_fast), + ((fdc->flags & FDC_NOFAST) ? 0 : INTR_FAST), + ((fdc->flags & FDC_NOFAST) ? NULL : fdc_intr_fast), + ((fdc->flags & FDC_NOFAST) ? fdc_intr : NULL), fdc, &fdc->fdc_intr); if (error) { device_printf(dev, "cannot setup interrupt\n"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jun 23 17:36:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 357B016A4A6; Fri, 23 Jun 2006 17:36:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 10D4016A492 for ; Fri, 23 Jun 2006 17:36:24 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E648643D72 for ; Fri, 23 Jun 2006 17:36:21 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NHaLI2036747 for ; Fri, 23 Jun 2006 17:36:21 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NHaLZj036744 for perforce@freebsd.org; Fri, 23 Jun 2006 17:36:21 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 17:36:21 GMT Message-Id: <200606231736.k5NHaLZj036744@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99873 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 17:36:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=99873 Change 99873 by jhb@jhb_mutex on 2006/06/23 17:36:16 kern_kldload() already does the permissions checks. Affected files ... .. //depot/projects/smpng/sys/kern/vfs_init.c#24 edit Differences ... ==== //depot/projects/smpng/sys/kern/vfs_init.c#24 (text+ko) ==== @@ -115,13 +115,7 @@ if (vfsp != NULL) return (vfsp); - /* Only load modules for root (very important!). */ - *error = suser(td); - if (*error) - return (NULL); - *error = securelevel_gt(td->td_ucred, 0); - if (*error) - return (NULL); + /* Try to load the respective module. */ *error = kern_kldload(td, fstype, &fileid); if (*error) return (NULL); From owner-p4-projects@FreeBSD.ORG Fri Jun 23 17:44:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D1CFC16A49A; Fri, 23 Jun 2006 17:44:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8ED6416A492 for ; Fri, 23 Jun 2006 17:44:33 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2F56343D46 for ; Fri, 23 Jun 2006 17:44:33 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NHiXrq037314 for ; Fri, 23 Jun 2006 17:44:33 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NHiWVw037311 for perforce@freebsd.org; Fri, 23 Jun 2006 17:44:32 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 17:44:32 GMT Message-Id: <200606231744.k5NHiWVw037311@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99875 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 17:44:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=99875 Change 99875 by jhb@jhb_mutex on 2006/06/23 17:43:51 Oops, something I missed when peeling Giant off of the linker: hold Giant around all module event handlers for now. Affected files ... .. //depot/projects/smpng/sys/kern/kern_module.c#20 edit Differences ... ==== //depot/projects/smpng/sys/kern/kern_module.c#20 (text+ko) ==== @@ -99,10 +99,12 @@ if (arg2 & RB_NOSYNC) return; + mtx_lock(&Giant); MOD_SLOCK; TAILQ_FOREACH(mod, &modules, link) MOD_EVENT(mod, MOD_SHUTDOWN); MOD_SUNLOCK; + mtx_unlock(&Giant); } void @@ -112,6 +114,7 @@ int error; module_t mod; + mtx_lock(&Giant); MOD_SLOCK; mod = module_lookupbyname(data->name); if (mod == NULL) @@ -128,6 +131,7 @@ " %d\n", data->name, (void *)data->evhand, data->priv, error); } + mtx_unlock(&Giant); } int @@ -232,12 +236,14 @@ { int error; + mtx_lock(&Giant); error = MOD_EVENT(mod, MOD_QUIESCE); if (error == EOPNOTSUPP || error == EINVAL) error = 0; - if (flags == LINKER_UNLOAD_NORMAL && error != 0) - return (error); - return (MOD_EVENT(mod, MOD_UNLOAD)); + if (error == 0 || flags == LINKER_UNLOAD_FORCE) + error = MOD_EVENT(mod, MOD_UNLOAD); + mtx_unlock(&Giant); + return (error); } int From owner-p4-projects@FreeBSD.ORG Fri Jun 23 17:56:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0655A16A4A0; Fri, 23 Jun 2006 17:56:51 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BD6AC16A492 for ; Fri, 23 Jun 2006 17:56:50 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C62843D46 for ; Fri, 23 Jun 2006 17:56:50 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NHuowE037915 for ; Fri, 23 Jun 2006 17:56:50 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NHuoWY037912 for perforce@freebsd.org; Fri, 23 Jun 2006 17:56:50 GMT (envelope-from clem1@FreeBSD.org) Date: Fri, 23 Jun 2006 17:56:50 GMT Message-Id: <200606231756.k5NHuoWY037912@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 99877 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 17:56:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=99877 Change 99877 by clem1@clem1_ipv6vulns on 2006/06/23 17:56:08 - partial icmp6 integration... - echo reply/request - packet toobig - parameter problem - destination unreachable - redirect message - sample test programs (ping6, toobig6...) - icmp6 checksum bug fix. - redir6.c : implementation of the routing table alteration attack presented by Vanhauser. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-headers.h#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-structures.h#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/sample/paramprob6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/sample/ping6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/sample/redir6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/sample/toobig6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.am#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.in#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_build_icmp.c#2 delete .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_build_icmpv4.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_build_icmpv6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_checksum.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_internal.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_pblock.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_resolve.c#2 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#2 (text+ko) ==== @@ -252,6 +252,15 @@ char *host_name, int host_name_len); /** + * Takes a human readable mac address and returns a network bytes ordered + * ethernet address. + * @param human readable mac address (aa:bb:cc:dd:ee) + * @return network byte ordered ethernet address. + */ +u_int8_t * +libnet_mac2eth(int8_t *); + +/** * Creates a new port list. Port list chains are useful for TCP and UDP-based * applications that need to send packets to a range of ports (contiguous or * otherwise). The port list chain, which token_list points to, should contain @@ -776,6 +785,118 @@ u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); /** + * Builds an IP version 6 RFC 2463 Internet Control Message Protocol (ICMP) + * echo request/reply header + * @param type type of ICMP packet (should be ICMP6_ECHOREPLY or ICMP6_ECHO) + * @param code code of ICMP packet (should be 0) + * @param sum checksum (0 for libnet to autofill) + * @param id identification number + * @param seq packet sequence number + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_echo(u_int8_t type, u_int8_t code, u_int16_t sum, +u_int16_t id, u_int16_t seq, u_int8_t *payload, u_int32_t payload_s, +libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2463 Internet Control Message Protocol (ICMP) + * parameter problem header + * @param type type of ICMP packet (should be ICMP6_PARAMPB) + * @param code code of ICMP packet (should be ICMP6_PARAMPROB_HEADER or ICMP6_PARAMPROB_NEXTHEADER or ICMP6_PARAMPROB_OPTION) + * @param sum checksum (0 for libnet to autofill) + * @param pointer number + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_parampb(u_int8_t type, u_int8_t code, u_int16_t sum, +u_int32_t pointer, u_int8_t *payload, u_int32_t payload_s, +libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2463 Internet Control Message Protocol (ICMP) + * time exceeded header + * @param type type of ICMP packet (should be ICMP6_TIMXCEED) + * @param code code of ICMP packet (should be ICMP6_TIMXCEED_TRANSIT or ICMP6_TIMXCEED_REASSEMBLY) + * @param sum checksum (0 for libnet to autofill) + * @param unused number + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_timxceed(u_int8_t type, u_int8_t code, u_int16_t sum, +u_int32_t unused, u_int8_t *payload, u_int32_t payload_s, +libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2463 Internet Control Message Protocol (ICMP) + * destination unreachable header + * @param type type of ICMP packet (should be ICMP6_UNREACH) + * @param code code of ICMP packet (should be ICMP6_UNREACH_NOROUTE or ICMP6_UNREACH_ADMIN or ICMP6_UNREACH_ADDR or ICMP6_UNREACH_NOTNEIGHBOR or ICMP6_UNREACH_PORT) + * @param sum checksum (0 for libnet to autofill) + * @param unused number that must be zero. + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_unreach(u_int8_t type, u_int8_t code, u_int16_t sum, +u_int32_t unused, u_int8_t *payload, u_int32_t payload_s, +libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2463 Internet Control Message Protocol (ICMP) + * packet too big header + * @param type type of ICMP packet (should be ICMP6_TOOBIG) + * @param code code of ICMP packet (should be 0) + * @param sum checksum (0 for libnet to autofill) + * @param MTU. + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_toobig(u_int8_t type, u_int8_t code, u_int16_t sum, +u_int32_t mtu, u_int8_t *payload, u_int32_t payload_s, +libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2463 Internet Control Message Protocol (ICMP) + * redirect message header + * @param type type of ICMP packet (should be ICMP6_REDIRECT) + * @param code code of ICMP packet (should be 0) + * @param sum checksum (0 for libnet to autofill) + * @param unused. + * @param target ipv6 address + * @param destination ipv6 address + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_redirect(u_int8_t type, u_int8_t code, u_int16_t sum, +u_int32_t unused, struct libnet_in6_addr, struct libnet_in6_addr, +u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); + + +/** * Builds an RFC 1112 Internet Group Memebership Protocol (IGMP) header. * @param type packet type * @param code packet code (should be 0) @@ -1924,6 +2045,16 @@ void libnet_diag_dump_hex(u_int8_t *packet, u_int32_t len, int swap, FILE *stream); +/** + * [Diagnostic] + * Function returns in raw format the contents the packet associated + * to the libnet handle. + * @param libnet handle. + * @return buffer with contents of the packet in raw format + */ +char * +libnet_dump_packet(libnet_t *); + /* * [Internal] */ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-headers.h#2 (text+ko) ==== @@ -63,7 +63,13 @@ #define LIBNET_ICMPV4_TIMXCEED_H 0x08 /**< ICMP_TIMXCEED header: 8 bytes */ #define LIBNET_ICMPV4_REDIRECT_H 0x08 /**< ICMP_REDIRECT header: 8 bytes */ #define LIBNET_ICMPV4_TS_H 0x14 /**< ICMP_TIMESTAMP headr:20 bytes */ -#define LIBNET_ICMPV6_H 0x08 /**< ICMP6 header base: 8 bytes */ +#define LIBNET_ICMPV6_H 0x04 /**< ICMP6 header base: 4 bytes */ +#define LIBNET_ICMPV6_ECHO_H 0x08 /**< ICMPV6_ECHO header: 8 bytes */ +#define LIBNET_ICMPV6_TIMXCEED_H 0x08 /**< ICMPV6_TIMXCEED header: 8 bytes */ +#define LIBNET_ICMPV6_PARAMPB_H 0x08 /**< ICMPV6_PARAMPB header: 8 bytes */ +#define LIBNET_ICMPV6_UNREACH_H 0x08 /**< ICMPV6_UNREACH header: 8 bytes */ +#define LIBNET_ICMPV6_TOOBIG_H 0x08 /**< ICMPV6_TOOBIG header: 8 bytes */ +#define LIBNET_ICMPV6_REDIRECT_H 0x28 /**< ICMPV6_REDIRECT header: 40 bytes */ #define LIBNET_IGMP_H 0x08 /**< IGMP header: 8 bytes */ #define LIBNET_IPV4_H 0x14 /**< IPv4 header: 20 bytes */ #define LIBNET_IPV6_H 0x28 /**< IPv6 header: 40 bytes */ @@ -489,6 +495,9 @@ #ifndef ETHERTYPE_IP #define ETHERTYPE_IP 0x0800 /* IP protocol */ #endif +#ifndef ETHERTYPE_IPV6 +#define ETHERTYPE_IPV6 0x86dd /* IPV6 protocol */ +#endif #ifndef ETHERTYPE_ARP #define ETHERTYPE_ARP 0x0806 /* addr. resolution protocol */ #endif @@ -820,20 +829,132 @@ #ifndef ICMP6_PKTTOOBIG #define ICMP6_PKTTOOBIG 2 #endif +#ifndef ICMP6_TOOBIG +#define ICMP6_TOOBIG 2 +#endif #ifndef ICMP6_TIMXCEED #define ICMP6_TIMXCEED 3 #endif #ifndef ICMP6_PARAMPROB #define ICMP6_PARAMPROB 4 #endif +#ifndef ICMP6_MLQUERY +#define ICMP6_MLQUERY 130 +#endif +#ifndef ICMP6_MLREPORT +#define ICMP6_MLREPORT 131 +#endif +#ifndef ICMP6_MLDONE +#define ICMP6_MLDONE 132 +#endif +#ifndef ICMP6_NEIGHBORSO +#define ICMP6_NEIGHBORSO 135 +#endif +#ifndef ICMP6_NEIGHBORADV +#define ICMP6_NEIGHBORADV 136 +#endif +#ifndef ICMP6_ROUTERSO +#define ICMP6_ROUTEURSO 133 +#endif +#ifndef ICMP6_ROUTERADV +#define ICMP6_ROUTERADV 134 +#endif +#ifndef ICMP6_WRUQUERY +#define ICMP6_WRUQUERY 139 +#endif +#ifndef ICMP6_WRUREPLY +#define ICMP6_WRUREPLY 140 +#endif +#ifndef ICMP6_REDIRECT +#define ICMP6_REDIRECT 137 +#endif u_int8_t icmp_code; /* ICMP code */ - u_int16_t icmp_sum; /* ICMP Checksum */ - u_int16_t id; /* ICMP id */ - u_int16_t seq; /* ICMP sequence number */ +#ifndef ICMP6_UNREACH_NOROUTE +#define ICMP6_UNREACH_NOROUTE 0 +#endif +#ifndef ICMP6_UNREACH_ADMIN +#define ICMP6_UNREACH_ADMIN 1 +#endif +#ifndef ICMP6_UNREACH_NOTNEIGHBOR +#define ICMP6_UNREACH_NOTNEIGHBOR 2 +#endif +#ifndef ICMP6_UNREACH_ADDR +#define ICMP6_UNREACH_ADDR 3 +#endif +#ifndef ICMP6_UNREACH_PORT +#define ICMP6_UNREACH_PORT 4 +#endif +#ifndef ICMP6_TIMXCEED_TRANSIT +#define ICMP6_TIMXCEED_TRANSIT 0 +#endif +#ifndef ICMP6_TIMXCEED_REASSEMBLY +#define ICMP6_TIMXCEED_REASSEMBLY 1 +#endif +#ifndef ICMP6_PARAMPROB_HEADER +#define ICMP6_PARAMPROB_HEADER 0 +#endif +#ifndef ICMP6_PARAMPROB_NEXTHEADER +#define ICMP6_PARAMPROB_NEXTHEADER 1 +#endif +#ifndef ICMP6_PARAMPROB_OPTION +#define ICMP6_PARAMPROB_OPTION 2 +#endif +#ifndef ICMP6_WRUQUERY_IPV6 +#define ICMP6_WRUQUERY_IPV6 0 +#endif +#ifndef ICMP6_WRUQUERY_FQDN +#define ICMP6_WRUQUERY_FQDN 1 +#endif +#ifndef ICMP6_WRUQUERY_IPV4 +#define ICMP6_WRUQUERY_IPV4 2 +#endif +#ifndef ICMP6_WRUREPLY_SUCCESS +#define ICMP6_WRUREPLY_SUCCESS 0 +#endif +#ifndef ICMP6_WRUREPLY_REFUSED +#define ICMP6_WRUREPLY_REFUSED 1 +#endif +#ifndef ICMP6_WRUREPLY_UNKNOWN +#define ICMP6_WRUREPLY_UNKNOWN 2 +#endif +#ifndef ICMP6_REDIRECT_ONLINK +#define ICMP6_REDIRECT_ONLINK 0 +#endif +#ifndef ICMP6_REDIRECT_ROUTER +#define ICMP6_REDIRECT_ROUTER 1 +#endif + u_int16_t icmp_sum; /* ICMP Checksum */ + union{ + struct { + u_int16_t id; /* ICMP id */ + u_int16_t seq; /* ICMP sequence number */ + }echo; +#undef icmp_id +#undef icmp_seq +#define icmp_id hun.echo.id +#define icmp_seq hun.echo.seq + u_int32_t pointer; /* ICMP pointer */ +#undef icmp_pointer +#define icmp_pointer hun.pointer + u_int32_t unused; /* ICMP unused bytes in TIMEEXCEED, DEST UNREACH and REDIRECT */ +#undef icmp_unused +#define icmp_unused hun.unused + u_int32_t mtu; /* ICMP mtu (TOOBIG) */ +#undef icmp_mtu +#define icmp_mtu hun.mtu + }hun; + union{ + struct { + struct libnet_in6_addr target, dst; + } redir; +#undef icmp_target +#define icmp_target dun.redir.target +#undef icmp_dst +#define icmp_dst dun.redir.dst + }dun; }; - /* * ICMP header * Internet Control Message Protocol ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-structures.h#2 (text+ko) ==== @@ -146,6 +146,19 @@ #define LIBNET_PBLOCK_IPV6_DESTOPTS_H 0x3d /* IPv6 dest opts header */ #define LIBNET_PBLOCK_IPV6_HBHOPTS_H 0x3e /* IPv6 hop/hop opts header */ #define LIBNET_PBLOCK_SEBEK_H 0x3f /* Sebek header */ +#define LIBNET_PBLOCK_ICMPV6_H 0x40 /* ICMP6 header */ +#define LIBNET_PBLOCK_ICMPV6_ECHO_H 0x41 /* ICMP6 echo header */ +#define LIBNET_PBLOCK_ICMPV6_TOOBIG_H 0x42 /* ICMP6 pkt too big header */ +#define LIBNET_PBLOCK_ICMPV6_TIMXCEED_H 0x43 /* ICMP6 time exceeded header */ +#define LIBNET_PBLOCK_ICMPV6_PARAMPB_H 0x44 /* ICMP6 parameter problem header */ +#define LIBNET_PBLOCK_ICMPV6_ROUTERSO_H 0x45 /* ICMP6 router solicitation header */ +#define LIBNET_PBLOCK_ICMPV6_ROUTERADV_H 0x46 /* ICMP6 router advertisement header */ +#define LIBNET_PBLOCK_ICMPV6_NEIGHBORSO_H 0x47 /* ICMP6 neighbor solicitation header */ +#define LIBNET_PBLOCK_ICMPV6_NEIGHBORADV_H 0x48 /* ICMP6 neighbor advertisement header */ +#define LIBNET_PBLOCK_ICMPV6_REDIRECT_H 0x49 /* ICMP6 redirect message header */ +#define LIBNET_PBLOCK_ICMPV6_MULTICAST_H 0x4a /* ICMP6 multicast group management header */ +#define LIBNET_PBLOCK_ICMPV6_WRU_H 0x4b /* ICMP6 Who Are You name lookup header */ +#define LIBNET_PBLOCK_ICMPV6_UNREACH_H 0x4c /* ICMP6 destination unreach packet */ u_int8_t flags; /* control flags */ #define LIBNET_PBLOCK_DO_CHECKSUM 0x01 /* needs a checksum */ libnet_ptag_t ptag; /* protocol block tag */ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.am#2 (text+ko) ==== @@ -24,7 +24,8 @@ libnet_build_ethernet.c \ libnet_build_fddi.c \ libnet_build_gre.c \ - libnet_build_icmp.c \ + libnet_build_icmpv4.c \ + libnet_build_icmpv6.c \ libnet_build_igmp.c \ libnet_build_ip.c \ libnet_build_ipsec.c \ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.in#2 (text+ko) ==== @@ -125,7 +125,8 @@ libnet_build_ethernet.c \ libnet_build_fddi.c \ libnet_build_gre.c \ - libnet_build_icmp.c \ + libnet_build_icmpv4.c \ + libnet_build_icmpv6.c \ libnet_build_igmp.c \ libnet_build_ip.c \ libnet_build_ipsec.c \ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_checksum.c#2 (text+ko) ==== @@ -44,7 +44,6 @@ int sum; sum = 0; - while (len > 1) { sum += *addr++; @@ -123,11 +122,12 @@ * and overlay a header structure to yank out the version. */ iph_p = (struct libnet_ipv4_hdr *)buf; + if (iph_p && iph_p->ip_v == 6) { - ip6h_p = (struct libnet_ipv6_hdr *)buf; + ip6h_p = (struct libnet_ipv6_hdr *)buf; is_ipv6 = 1; - ip_hl = 40; + ip_hl = LIBNET_IPV6_H; } else { @@ -199,10 +199,10 @@ break; } case IPPROTO_ICMP: + case IPPROTO_ICMP6: { struct libnet_icmpv4_hdr *icmph_p = (struct libnet_icmpv4_hdr *)(buf + ip_hl); - icmph_p->icmp_sum = 0; if (is_ipv6) { ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_internal.c#2 (text+ko) ==== @@ -307,4 +307,38 @@ } return ("unreachable code"); } + +char * +libnet_dump_packet(libnet_t *l) +{ + u_int32_t size = 1500, curr = 0, n, a = 0; + libnet_pblock_t *p; + char *pkt; + + pkt = (char *)malloc(size); + + if (pkt == NULL) + { + return (NULL); + } + + for (p = l->pblock_end; p; p = p->prev) + { + curr += p->b_len; + if (curr > size) + { + pkt = realloc(pkt, curr + size); + if (pkt == NULL) + { + return (NULL); + } + size += curr; + } + for(n = 0; n < p->b_len; n++) + { + pkt[a++] = p->buf[n]; + } + } + return (pkt); +} /* EOF */ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_pblock.c#2 (text+ko) ==== @@ -389,7 +389,37 @@ { if ((q->flags) & LIBNET_PBLOCK_DO_CHECKSUM) { - int offset = (l->total_size + l->aligner) - q->ip_offset; + int offset; + if (l->injection_type != LIBNET_LINK) + { + offset = (l->total_size + l->aligner) - q->ip_offset; + } + else + { + offset = l->aligner; + switch(l->pblock_end->type){ + case LIBNET_PBLOCK_ETH_H: + offset += LIBNET_ETH_H; + break; + case LIBNET_PBLOCK_TOKEN_RING_H: + offset += LIBNET_TOKEN_RING_H; + break; + case LIBNET_PBLOCK_FDDI_H: + offset += LIBNET_FDDI_H; + break; + case LIBNET_PBLOCK_802_1Q_H: + offset += LIBNET_802_1Q_H; + break; + case LIBNET_PBLOCK_ISL_H: + offset += LIBNET_ISL_H; + break; + case LIBNET_PBLOCK_802_3_H: + offset += LIBNET_802_3_H; + break; + default: + break; + } + } c = libnet_do_checksum(l, *packet + offset, libnet_pblock_p2p(q->type), q->h_len); if (c == -1) @@ -472,6 +502,20 @@ case LIBNET_PBLOCK_ICMPV4_REDIRECT_H: case LIBNET_PBLOCK_ICMPV4_TS_H: return (IPPROTO_ICMP); + case LIBNET_PBLOCK_ICMPV6_H: + case LIBNET_PBLOCK_ICMPV6_ECHO_H: + case LIBNET_PBLOCK_ICMPV6_PARAMPB_H: + case LIBNET_PBLOCK_ICMPV6_TIMXCEED_H: + case LIBNET_PBLOCK_ICMPV6_TOOBIG_H: + case LIBNET_PBLOCK_ICMPV6_UNREACH_H: + case LIBNET_PBLOCK_ICMPV6_WRU_H: + case LIBNET_PBLOCK_ICMPV6_MULTICAST_H: + case LIBNET_PBLOCK_ICMPV6_REDIRECT_H: + case LIBNET_PBLOCK_ICMPV6_NEIGHBORADV_H: + case LIBNET_PBLOCK_ICMPV6_NEIGHBORSO_H: + case LIBNET_PBLOCK_ICMPV6_ROUTERADV_H: + case LIBNET_PBLOCK_ICMPV6_ROUTERSO_H: + return (IPPROTO_ICMP6); case LIBNET_PBLOCK_IGMP_H: return (IPPROTO_IGMP); case LIBNET_PBLOCK_IPV4_H: ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_resolve.c#2 (text+ko) ==== @@ -411,4 +411,10 @@ return (buf); } +u_int8_t * +libnet_mac2eth(int8_t *s) +{ + int len = 6; + return libnet_hex_aton(s, &len); +} /* EOF */ From owner-p4-projects@FreeBSD.ORG Fri Jun 23 18:22:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8FAB016A4A9; Fri, 23 Jun 2006 18:22:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 565F716A4A6 for ; Fri, 23 Jun 2006 18:22:31 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 836F043D78 for ; Fri, 23 Jun 2006 18:22:23 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NIMNKA040369 for ; Fri, 23 Jun 2006 18:22:23 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NIMMDV040366 for perforce@freebsd.org; Fri, 23 Jun 2006 18:22:22 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 18:22:22 GMT Message-Id: <200606231822.k5NIMMDV040366@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99879 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 18:22:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=99879 Change 99879 by jhb@jhb_mutex on 2006/06/23 18:22:14 - Expand Giant coverage in mount(). Something has to protect against the vfsp being free'd out from under us while we are doing the unmount. - Expand Giant coverage in unmount(). Something has to protect mp from being free'd out from under us by another concurrent unmount() on another CPU (or due to preemption). Affected files ... .. //depot/projects/smpng/sys/kern/vfs_mount.c#62 edit Differences ... ==== //depot/projects/smpng/sys/kern/vfs_mount.c#62 (text+ko) ==== @@ -744,19 +744,23 @@ fstype = malloc(MFSNAMELEN, M_TEMP, M_WAITOK); error = copyinstr(uap->type, fstype, MFSNAMELEN, NULL); - if (!error) { - AUDIT_ARG(text, fstype); - mtx_lock(&Giant); /* XXX ? */ - vfsp = vfs_byname_kld(fstype, td, &error); - mtx_unlock(&Giant); + if (error) { + free(fstype, M_TEMP); + return (error); } + + AUDIT_ARG(text, fstype); + mtx_lock(&Giant); + vfsp = vfs_byname_kld(fstype, td, &error); free(fstype, M_TEMP); - if (error) - return (error); - if (vfsp == NULL) + if (vfsp == NULL) { + mtx_unlock(&Giant); return (ENOENT); - if (vfsp->vfc_vfsops->vfs_cmount == NULL) + } + if (vfsp->vfc_vfsops->vfs_cmount == NULL) { + mtx_unlock(&Giant); return (EOPNOTSUPP); + } ma = mount_argsu(ma, "fstype", uap->type, MNAMELEN); ma = mount_argsu(ma, "fspath", uap->path, MNAMELEN); @@ -765,6 +769,7 @@ ma = mount_argb(ma, !(uap->flags & MNT_NOEXEC), "noexec"); error = vfsp->vfc_vfsops->vfs_cmount(ma, uap->data, uap->flags, td); + mtx_unlock(&Giant); return (error); } @@ -1063,9 +1068,11 @@ return (error); } AUDIT_ARG(upath, td, pathbuf, ARG_UPATH1); + mtx_lock(&Giant); if (uap->flags & MNT_BYFSID) { /* Decode the filesystem ID. */ if (sscanf(pathbuf, "FSID:%d:%d", &id0, &id1) != 2) { + mtx_unlock(&Giant); free(pathbuf, M_TEMP); return (EINVAL); } @@ -1093,6 +1100,7 @@ * now, so in the !MNT_BYFSID case return the more likely * EINVAL for compatibility. */ + mtx_unlock(&Giant); return ((uap->flags & MNT_BYFSID) ? ENOENT : EINVAL); } @@ -1101,15 +1109,18 @@ * original mount is permitted to unmount this filesystem. */ error = vfs_suser(mp, td); - if (error) + if (error) { + mtx_unlock(&Giant); return (error); + } /* * Don't allow unmounting the root filesystem. */ - if (mp->mnt_flag & MNT_ROOTFS) + if (mp->mnt_flag & MNT_ROOTFS) { + mtx_unlock(&Giant); return (EINVAL); - mtx_lock(&Giant); + } error = dounmount(mp, uap->flags, td); mtx_unlock(&Giant); return (error); From owner-p4-projects@FreeBSD.ORG Fri Jun 23 18:26:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3DAB316A47E; Fri, 23 Jun 2006 18:26:29 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 042BF16A47B for ; Fri, 23 Jun 2006 18:26:29 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A7B7B43D48 for ; Fri, 23 Jun 2006 18:26:28 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NIQSVv040588 for ; Fri, 23 Jun 2006 18:26:28 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NIQSvE040585 for perforce@freebsd.org; Fri, 23 Jun 2006 18:26:28 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 18:26:28 GMT Message-Id: <200606231826.k5NIQSvE040585@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99880 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 18:26:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=99880 Change 99880 by jhb@jhb_mutex on 2006/06/23 18:25:29 mount(2) and friends are MPSAFE now. Affected files ... .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#30 edit .. //depot/projects/smpng/sys/kern/syscalls.master#72 edit Differences ... ==== //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#30 (text+ko) ==== @@ -79,9 +79,9 @@ int flags); } 19 AUE_LSEEK OBSOL olseek 20 AUE_GETPID MNOPROTO { pid_t getpid(void); } -21 AUE_MOUNT NOPROTO { int mount(char *type, char *path, \ +21 AUE_MOUNT MNOPROTO { int mount(char *type, char *path, \ int flags, caddr_t data); } -22 AUE_UMOUNT NOPROTO { int unmount(char *path, int flags); } +22 AUE_UMOUNT MNOPROTO { int unmount(char *path, int flags); } 23 AUE_SETUID MNOPROTO { int setuid(uid_t uid); } 24 AUE_GETUID MNOPROTO { uid_t getuid(void); } 25 AUE_GETEUID MNOPROTO { uid_t geteuid(void); } @@ -644,7 +644,7 @@ 375 AUE_NULL UNIMPL nfsclnt 376 AUE_NULL MNOPROTO { int eaccess(char *path, int flags); } 377 AUE_NULL UNIMPL afs_syscall -378 AUE_NULL NOPROTO { int nmount(struct iovec *iovp, \ +378 AUE_NULL MNOPROTO { int nmount(struct iovec *iovp, \ unsigned int iovcnt, int flags); } 379 AUE_NULL MNOPROTO { int kse_exit(void); } 380 AUE_NULL MNOPROTO { int kse_wakeup(struct kse_mailbox *mbx); } ==== //depot/projects/smpng/sys/kern/syscalls.master#72 (text+ko) ==== @@ -82,10 +82,10 @@ 19 AUE_LSEEK MCOMPAT { long lseek(int fd, long offset, \ int whence); } 20 AUE_GETPID MSTD { pid_t getpid(void); } -21 AUE_MOUNT STD { int mount(char *type, char *path, \ +21 AUE_MOUNT MSTD { int mount(char *type, char *path, \ int flags, caddr_t data); } ; XXX `path' should have type `const char *' but we're not ready for that. -22 AUE_UMOUNT STD { int unmount(char *path, int flags); } +22 AUE_UMOUNT MSTD { int unmount(char *path, int flags); } 23 AUE_SETUID MSTD { int setuid(uid_t uid); } 24 AUE_GETUID MSTD { uid_t getuid(void); } 25 AUE_GETEUID MSTD { uid_t geteuid(void); } @@ -662,7 +662,7 @@ 375 AUE_NULL NOIMPL { int nfsclnt(int flag, caddr_t argp); } 376 AUE_EACCESS MSTD { int eaccess(char *path, int flags); } 377 AUE_NULL UNIMPL afs_syscall -378 AUE_NMOUNT STD { int nmount(struct iovec *iovp, \ +378 AUE_NMOUNT MSTD { int nmount(struct iovec *iovp, \ unsigned int iovcnt, int flags); } 379 AUE_NULL MSTD { int kse_exit(void); } 380 AUE_NULL MSTD { int kse_wakeup(struct kse_mailbox *mbx); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 18:34:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C6BFE16A4A9; Fri, 23 Jun 2006 18:34:39 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 729BD16A4A0 for ; Fri, 23 Jun 2006 18:34:39 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 202EE43D46 for ; Fri, 23 Jun 2006 18:34:39 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NIYcOo041087 for ; Fri, 23 Jun 2006 18:34:38 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NIYcUJ041084 for perforce@freebsd.org; Fri, 23 Jun 2006 18:34:38 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 18:34:38 GMT Message-Id: <200606231834.k5NIYcUJ041084@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99881 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 18:34:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=99881 Change 99881 by jhb@jhb_mutex on 2006/06/23 18:33:38 Add conditional VFS-Giant locking to ogetdirentries(). Affected files ... .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#106 edit Differences ... ==== //depot/projects/smpng/sys/kern/vfs_syscalls.c#106 (text+ko) ==== @@ -3569,7 +3569,7 @@ struct iovec aiov, kiov; struct dirent *dp, *edp; caddr_t dirbuf; - int error, eofflag, readcnt; + int error, eofflag, readcnt, vfslocked; long loff; /* XXX arbitrary sanity limit on `count'. */ @@ -3583,7 +3583,9 @@ } vp = fp->f_vnode; unionread: + vfslocked = VFS_LOCK_GIANT(vp->v_mount); if (vp->v_type != VDIR) { + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (EINVAL); } @@ -3601,6 +3603,7 @@ error = mac_check_vnode_readdir(td->td_ucred, vp); if (error) { VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (error); } @@ -3658,15 +3661,19 @@ } VOP_UNLOCK(vp, 0, td); if (error) { + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (error); } if (uap->count == auio.uio_resid) { if (union_dircheckp) { error = union_dircheckp(td, &vp, fp); - if (error == -1) + if (error == -1) { + VFS_UNLOCK_GIANT(vfslocked); goto unionread; + } if (error) { + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (error); } @@ -3685,10 +3692,12 @@ fp->f_data = vp; fp->f_offset = 0; vput(tvp); + VFS_UNLOCK_GIANT(vfslocked); goto unionread; } VOP_UNLOCK(vp, 0, td); } + VFS_UNLOCK_GIANT(vfslocked); error = copyout(&loff, uap->basep, sizeof(long)); fdrop(fp, td); td->td_retval[0] = uap->count - auio.uio_resid; From owner-p4-projects@FreeBSD.ORG Fri Jun 23 18:36:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F46416A47E; Fri, 23 Jun 2006 18:36:42 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 61AC116A49E for ; Fri, 23 Jun 2006 18:36:42 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2CA9D43D45 for ; Fri, 23 Jun 2006 18:36:42 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NIagOH041236 for ; Fri, 23 Jun 2006 18:36:42 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NIafuv041233 for perforce@freebsd.org; Fri, 23 Jun 2006 18:36:41 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 18:36:41 GMT Message-Id: <200606231836.k5NIafuv041233@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99882 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 18:36:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=99882 Change 99882 by jhb@jhb_mutex on 2006/06/23 18:35:52 ogetdirentries() now MPSAFE. Affected files ... .. //depot/projects/smpng/sys/kern/syscalls.master#73 edit Differences ... ==== //depot/projects/smpng/sys/kern/syscalls.master#73 (text+ko) ==== @@ -304,7 +304,7 @@ 154 AUE_NULL UNIMPL nosys ; 155 is initialized by the NFS code, if present. 155 AUE_NFSSVC MNOIMPL { int nfssvc(int flag, caddr_t argp); } -156 AUE_GETDIRENTRIES COMPAT { int getdirentries(int fd, char *buf, \ +156 AUE_GETDIRENTRIES MCOMPAT { int getdirentries(int fd, char *buf, \ u_int count, long *basep); } 157 AUE_STATFS MCOMPAT4 { int statfs(char *path, \ struct ostatfs *buf); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 18:49:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D4EAA16A4C8; Fri, 23 Jun 2006 18:48:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 91AA816A4C2 for ; Fri, 23 Jun 2006 18:48:59 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 47F7643D4C for ; Fri, 23 Jun 2006 18:48:59 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NImx46041824 for ; Fri, 23 Jun 2006 18:48:59 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NImwob041821 for perforce@freebsd.org; Fri, 23 Jun 2006 18:48:58 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 18:48:58 GMT Message-Id: <200606231848.k5NImwob041821@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99884 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 18:49:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=99884 Change 99884 by jhb@jhb_mutex on 2006/06/23 18:48:41 - Add VFS Giant locking to the Linux ABI's getdents_common() function. - The linux mount(2) and getdents(2) families are MPSAFE. Affected files ... .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#9 edit .. //depot/projects/smpng/sys/compat/linux/linux_file.c#29 edit .. //depot/projects/smpng/sys/i386/linux/syscalls.master#27 edit Differences ... ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#9 (text+ko) ==== @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -111,7 +111,7 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock 54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -169,7 +169,7 @@ 87 AUE_SWAPON MNOPROTO { int swapon(char *name); } 88 AUE_REBOOT MSTD { int linux_reboot(l_int magic1, \ l_int magic2, l_uint cmd, void *arg); } -89 AUE_O_GETDENTS STD { int linux_readdir(l_uint fd, \ +89 AUE_O_GETDENTS MSTD { int linux_readdir(l_uint fd, \ struct l_dirent *dent, l_uint count); } 90 AUE_MMAP MSTD { int linux_mmap(struct l_mmap_argv *ptr); } 91 AUE_MUNMAP MNOPROTO { int munmap(caddr_t addr, int len); } @@ -246,7 +246,7 @@ 140 AUE_LSEEK MSTD { int linux_llseek(l_int fd, l_ulong ohigh, \ l_ulong olow, l_loff_t *res, \ l_uint whence); } -141 AUE_O_GETDENTS STD { int linux_getdents(l_uint fd, void *dent, \ +141 AUE_O_GETDENTS MSTD { int linux_getdents(l_uint fd, void *dent, \ l_uint count); } 142 AUE_SELECT MSTD { int linux_select(l_int nfds, \ l_fd_set *readfds, l_fd_set *writefds, \ @@ -381,7 +381,7 @@ l_size_t len, u_char *vec); } 219 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, \ int behav); } -220 AUE_O_GETDENTS STD { int linux_getdents64(l_uint fd, \ +220 AUE_O_GETDENTS MSTD { int linux_getdents64(l_uint fd, \ void *dirent, l_uint count); } 221 AUE_FCNTL MSTD { int linux_fcntl64(l_uint fd, l_uint cmd, \ uintptr_t arg); } ==== //depot/projects/smpng/sys/compat/linux/linux_file.c#29 (text+ko) ==== @@ -259,7 +259,7 @@ struct l_dirent64 linux_dirent64; int buflen, error, eofflag, nbytes, justone; u_long *cookies = NULL, *cookiep; - int ncookies; + int ncookies, vfslocked; if ((error = getvnode(td->td_proc->p_fd, args->fd, &fp)) != 0) return (error); @@ -270,7 +270,9 @@ } vp = fp->f_vnode; + vfslocked = VFS_LOCK_GIANT(vp->v_mount); if (vp->v_type != VDIR) { + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (EINVAL); } @@ -279,6 +281,7 @@ if (nbytes == 1) { /* readdir(2) case. Always struct dirent. */ if (is64bit) { + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (EINVAL); } @@ -439,6 +442,7 @@ free(cookies, M_TEMP); VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); free(buf, M_TEMP); return (error); ==== //depot/projects/smpng/sys/i386/linux/syscalls.master#27 (text+ko) ==== @@ -74,10 +74,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -111,7 +111,7 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock 54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ l_ulong arg); } @@ -169,7 +169,7 @@ 87 AUE_SWAPON MNOPROTO { int swapon(char *name); } 88 AUE_REBOOT MSTD { int linux_reboot(l_int magic1, \ l_int magic2, l_uint cmd, void *arg); } -89 AUE_O_GETDENTS STD { int linux_readdir(l_uint fd, \ +89 AUE_O_GETDENTS MSTD { int linux_readdir(l_uint fd, \ struct l_dirent *dent, l_uint count); } 90 AUE_MMAP MSTD { int linux_mmap(struct l_mmap_argv *ptr); } 91 AUE_MUNMAP MNOPROTO { int munmap(caddr_t addr, int len); } @@ -248,7 +248,7 @@ 140 AUE_LSEEK MSTD { int linux_llseek(l_int fd, l_ulong ohigh, \ l_ulong olow, l_loff_t *res, \ l_uint whence); } -141 AUE_O_GETDENTS STD { int linux_getdents(l_uint fd, void *dent, \ +141 AUE_O_GETDENTS MSTD { int linux_getdents(l_uint fd, void *dent, \ l_uint count); } 142 AUE_SELECT MSTD { int linux_select(l_int nfds, \ l_fd_set *readfds, l_fd_set *writefds, \ @@ -383,7 +383,7 @@ l_size_t len, u_char *vec); } 219 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, \ int behav); } -220 AUE_O_GETDENTS STD { int linux_getdents64(l_uint fd, \ +220 AUE_O_GETDENTS MSTD { int linux_getdents64(l_uint fd, \ void *dirent, l_uint count); } 221 AUE_FCNTL MSTD { int linux_fcntl64(l_uint fd, l_uint cmd, \ l_ulong arg); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 18:53:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C76616A49A; Fri, 23 Jun 2006 18:53:06 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DF8ED16A47C for ; Fri, 23 Jun 2006 18:53:05 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A95AB43D48 for ; Fri, 23 Jun 2006 18:53:05 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NIr5LA042096 for ; Fri, 23 Jun 2006 18:53:05 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NIr5vP042093 for perforce@freebsd.org; Fri, 23 Jun 2006 18:53:05 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 18:53:05 GMT Message-Id: <200606231853.k5NIr5vP042093@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99886 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 18:53:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=99886 Change 99886 by jhb@jhb_mutex on 2006/06/23 18:52:18 linux_brk() is MPSAFE - just a wrapper around obreak(). Affected files ... .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#10 edit .. //depot/projects/smpng/sys/i386/linux/syscalls.master#28 edit Differences ... ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#10 (text+ko) ==== @@ -103,7 +103,7 @@ 42 AUE_PIPE MSTD { int linux_pipe(l_ulong *pipefds); } 43 AUE_NULL MSTD { int linux_times(struct l_times_argv *buf); } 44 AUE_NULL UNIMPL prof -45 AUE_NULL STD { int linux_brk(l_ulong dsend); } +45 AUE_NULL MSTD { int linux_brk(l_ulong dsend); } 46 AUE_SETGID MSTD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID MSTD { int linux_getgid16(void); } 48 AUE_NULL MSTD { int linux_signal(l_int sig, \ ==== //depot/projects/smpng/sys/i386/linux/syscalls.master#28 (text+ko) ==== @@ -103,7 +103,7 @@ 42 AUE_PIPE MSTD { int linux_pipe(l_ulong *pipefds); } 43 AUE_NULL MSTD { int linux_times(struct l_times_argv *buf); } 44 AUE_NULL UNIMPL prof -45 AUE_NULL STD { int linux_brk(l_ulong dsend); } +45 AUE_NULL MSTD { int linux_brk(l_ulong dsend); } 46 AUE_SETGID MSTD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID MSTD { int linux_getgid16(void); } 48 AUE_NULL MSTD { int linux_signal(l_int sig, \ From owner-p4-projects@FreeBSD.ORG Fri Jun 23 19:12:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D9DA16A49E; Fri, 23 Jun 2006 19:12:38 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E50EB16A492 for ; Fri, 23 Jun 2006 19:12:37 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D83343D5A for ; Fri, 23 Jun 2006 19:12:32 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NJCVN0044241 for ; Fri, 23 Jun 2006 19:12:32 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NJCVRS044238 for perforce@freebsd.org; Fri, 23 Jun 2006 19:12:31 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 19:12:31 GMT Message-Id: <200606231912.k5NJCVRS044238@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99888 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 19:12:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=99888 Change 99888 by jhb@jhb_mutex on 2006/06/23 19:12:01 - Add an sx lock to protect the list of linux ioctl handlers. - Punt and just hold Giant while calling ioctl handlers for now. - linux_ioctl() is now MPSAFE. Affected files ... .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#11 edit .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#46 edit .. //depot/projects/smpng/sys/i386/linux/syscalls.master#29 edit Differences ... ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#11 (text+ko) ==== @@ -113,7 +113,7 @@ 51 AUE_ACCT MNOPROTO { int acct(char *path); } 52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } ==== //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#46 (text+ko) ==== @@ -43,7 +43,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -51,6 +53,7 @@ #include #include #include +#include #include #include #include @@ -126,6 +129,8 @@ static TAILQ_HEAD(, handler_element) handlers = TAILQ_HEAD_INITIALIZER(handlers); +static struct sx linux_ioctl_sx; +SX_SYSINIT(linux_ioctl, &linux_ioctl_sx, "linux ioctl handlers"); /* * hdio related ioctls for VMWare support @@ -2571,15 +2576,21 @@ /* Iterate over the ioctl handlers */ cmd = args->cmd & 0xffff; + sx_slock(&linux_ioctl_sx); + mtx_lock(&Giant); TAILQ_FOREACH(he, &handlers, list) { if (cmd >= he->low && cmd <= he->high) { error = (*he->func)(td, args); if (error != ENOIOCTL) { + mtx_unlock(&Giant); + sx_sunlock(&linux_ioctl_sx); fdrop(fp, td); return (error); } } } + mtx_unlock(&Giant); + sx_sunlock(&linux_ioctl_sx); fdrop(fp, td); linux_msg(td, "ioctl fd=%d, cmd=0x%x ('%c',%d) is not implemented", @@ -2601,6 +2612,7 @@ * Reuse the element if the handler is already on the list, otherwise * create a new element. */ + sx_xlock(&linux_ioctl_sx); TAILQ_FOREACH(he, &handlers, list) { if (he->func == h->func) break; @@ -2621,10 +2633,12 @@ TAILQ_FOREACH(cur, &handlers, list) { if (cur->span > he->span) { TAILQ_INSERT_BEFORE(cur, he, list); + sx_xunlock(&linux_ioctl_sx); return (0); } } TAILQ_INSERT_TAIL(&handlers, he, list); + sx_xunlock(&linux_ioctl_sx); return (0); } @@ -2637,13 +2651,16 @@ if (h == NULL || h->func == NULL) return (EINVAL); + sx_xlock(&linux_ioctl_sx); TAILQ_FOREACH(he, &handlers, list) { if (he->func == h->func) { TAILQ_REMOVE(&handlers, he, list); + sx_xunlock(&linux_ioctl_sx); FREE(he, M_LINUX); return (0); } } + sx_xunlock(&linux_ioctl_sx); return (EINVAL); } ==== //depot/projects/smpng/sys/i386/linux/syscalls.master#29 (text+ko) ==== @@ -113,7 +113,7 @@ 51 AUE_ACCT MNOPROTO { int acct(char *path); } 52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ l_ulong arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ l_ulong arg); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 19:14:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2195A16A4A0; Fri, 23 Jun 2006 19:14:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C3DF116A47C for ; Fri, 23 Jun 2006 19:14:35 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 781E943D49 for ; Fri, 23 Jun 2006 19:14:35 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NJEZMP044322 for ; Fri, 23 Jun 2006 19:14:35 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NJEZFx044319 for perforce@freebsd.org; Fri, 23 Jun 2006 19:14:35 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 19:14:35 GMT Message-Id: <200606231914.k5NJEZFx044319@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99889 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 19:14:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=99889 Change 99889 by jhb@jhb_mutex on 2006/06/23 19:14:26 C scoping rules 101. Affected files ... .. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#33 edit Differences ... ==== //depot/projects/smpng/sys/i386/linux/linux_machdep.c#33 (text+ko) ==== @@ -174,12 +174,12 @@ } case LINUX_MSGRCV: { struct linux_msgrcv_args a; + struct l_ipc_kludge tmp; a.msqid = args->arg1; a.msgsz = args->arg2; a.msgflg = args->arg3; if ((args->what >> 16) == 0) { - struct l_ipc_kludge tmp; int error; if (args->ptr == NULL) From owner-p4-projects@FreeBSD.ORG Fri Jun 23 19:54:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2887B16A4A9; Fri, 23 Jun 2006 19:54:27 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0406416A4A6 for ; Fri, 23 Jun 2006 19:54:27 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ABF1243D45 for ; Fri, 23 Jun 2006 19:54:26 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NJsQb2046290 for ; Fri, 23 Jun 2006 19:54:26 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NJsQTp046287 for perforce@freebsd.org; Fri, 23 Jun 2006 19:54:26 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 23 Jun 2006 19:54:26 GMT Message-Id: <200606231954.k5NJsQTp046287@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 99891 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 19:54:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=99891 Change 99891 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/23 19:53:42 re-factor MUTEX_PROFILING code into inline functions re-enable (in a architecture dependent way) hold time collection Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#11 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#11 (text+ko) ==== @@ -156,24 +156,19 @@ #endif #ifdef MUTEX_PROFILING -SYSCTL_NODE(_debug, OID_AUTO, mutex, CTLFLAG_RD, NULL, "mutex debugging"); -SYSCTL_NODE(_debug_mutex, OID_AUTO, prof, CTLFLAG_RD, NULL, "mutex profiling"); -static int mutex_prof_enable = 0; -SYSCTL_INT(_debug_mutex_prof, OID_AUTO, enable, CTLFLAG_RW, - &mutex_prof_enable, 0, "Enable tracing of mutex holdtime/contention"); -static int mutex_prof_global = 1; -SYSCTL_INT(_debug_mutex_prof, OID_AUTO, global, CTLFLAG_RW, - &mutex_prof_global, 0, "Enable tracing of all mutexes"); +#include +#ifndef MPROF_HASH_SIZE +#define MPROF_HASH_SIZE 4096 +#define MPROF_HASH_MASK (MPROF_HASH_SIZE - 1) +#endif struct mutex_prof { const char *name; + const char *file; u_int namehash; - const char *file; int line; -#if 0 uintmax_t cnt_max; uintmax_t cnt_tot; -#endif uintmax_t cnt_cur; uintmax_t cnt_contest_holding; uintmax_t cnt_contest_locking; @@ -183,10 +178,6 @@ * mprof_buf is a static pool of profiling records to avoid possible * reentrance of the memory allocation functions. */ -#ifndef MPROF_HASH_SIZE -#define MPROF_HASH_SIZE 4096 -#define MPROF_HASH_MASK (MPROF_HASH_SIZE - 1) -#endif static struct mutex_prof mprof_buf[MPROF_HASH_SIZE]; static int allocated_mprof_buf; /* SWAG: sbuf size = avg stat. line size * number of locks */ @@ -199,9 +190,13 @@ #define MPROF_LOCK(hash) mtx_lock_spin(&mprof_locks[MPROF_LHASH(hash)]) #define MPROF_UNLOCK(hash) mtx_unlock_spin(&mprof_locks[MPROF_LHASH(hash)]) - struct mtx mprof_locks[MPROF_LOCK_SIZE]; +SYSCTL_NODE(_debug, OID_AUTO, mutex, CTLFLAG_RD, NULL, "mutex debugging"); +SYSCTL_NODE(_debug_mutex, OID_AUTO, prof, CTLFLAG_RD, NULL, "mutex profiling"); +static int mutex_prof_enable = 0; +SYSCTL_INT(_debug_mutex_prof, OID_AUTO, enable, CTLFLAG_RW, + &mutex_prof_enable, 0, "Enable tracing of mutex holdtime/contention"); static int mutex_prof_acquisitions; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, acquisitions, CTLFLAG_RD, &mutex_prof_acquisitions, 0, "Number of mutex acquistions recorded"); @@ -226,17 +221,148 @@ &stack_scale, 0, "How often to sample stack traces"); #endif + + +static inline void +mtx_profile_init(struct mtx *m, const char *name) { + const char *p; + u_int hash = 0; + + m->mtx_acqtime = 0; + m->mtx_filename = NULL; + m->mtx_lineno = 0; + m->mtx_contest_holding = 0; + m->mtx_contest_locking = 0; + + /* Hash the mutex name to an int so we don't have to strcmp() it repeatedly */ + for (p = name; *p != '\0'; p++) + hash = 31 * hash + *p; + m->mtx_namehash = hash; +#if 0 + if (opts & MTX_PROFILE) + m->mtx_stack = stack_create(); +#endif +} + +static inline void +mtx_profile_destroy(struct mtx *m) +{ #if 0 -static u_int64_t -nanoseconds(void) + if (m->mtx_object.lo_flags & LO_PROFILE) + stack_destroy(m->mtx_stack); +#endif +} + +static inline void +mutex_profile_init(void) { - struct timespec tv; + int i; + /* Initialize the mutex profiling locks */ + for (i = 0; i < MPROF_LOCK_SIZE; i++) { + mtx_init(&mprof_locks[i], "mprof lock", + NULL, MTX_SPIN|MTX_QUIET); + } +} - nanotime(&tv); - return (tv.tv_sec * (u_int64_t)1000000000 + tv.tv_nsec); +static inline void +mtx_profile_obtain_lock_failed(struct mtx *m, int *contested) +{ + if (mutex_prof_enable) { + *contested = 1; + atomic_add_int(&m->mtx_contest_holding, 1); + } } + +static inline void +mtx_profile_obtain_lock_success(struct mtx *m, const char *file, int line) +{ + /* don't reset the timer when/if recursing */ + if (mutex_prof_enable && m->mtx_acqtime == 0) { + m->mtx_filename = file; + m->mtx_lineno = line; + m->mtx_acqtime = rd(tick); /* substitute for more general TSC read */ +#if 0 + ++mutex_prof_acquisitions; #endif + } +} + +static void +mtx_profile_release_lock(struct mtx *m) +{ + + if (m->mtx_acqtime) { + const char *unknown = "(unknown)"; + struct mutex_prof *mpp; + u_int64_t acqtime, now; + u_int hash; + const char *p = m->mtx_filename; + int collision = 0; + + now = rd(tick); + acqtime = m->mtx_acqtime; + m->mtx_acqtime = 0; + if (now <= acqtime) + return; + if (p == NULL || *p == '\0') + p = unknown; + hash = (m->mtx_namehash * 31 * 31 + (uintptr_t)p * 31 + m->mtx_lineno) & MPROF_HASH_MASK; + CTR5(KTR_SPARE1, "Hashing %s(%x) %s:%d to %d", mtx_name(m), m->mtx_namehash, p, m->mtx_lineno, hash); + mpp = &mprof_buf[hash]; + while (mpp->name != NULL) { + if (mpp->line == m->mtx_lineno && + mpp->file == p && + mpp->namehash == m->mtx_namehash) + break; + /* If the mprof_hash entry is allocated to someone else, try the next one */ + collision = 1; + CTR4(KTR_SPARE1, "Hash collision, %s:%d %s(%x)", mpp->file, mpp->line, mpp->name, mpp->namehash); + hash = (hash + 1) & MPROF_HASH_MASK; + mpp = &mprof_buf[hash]; + } + if (mpp->name == NULL) { + int buf; + buf = atomic_fetchadd_int(&allocated_mprof_buf, 1); + /* Just exit if we cannot get a trace buffer */ + if (buf >= MPROF_HASH_SIZE) { + ++mutex_prof_rejected; + return; + } + mpp->file = p; + mpp->line = m->mtx_lineno; + mpp->name = mtx_name(m); + mpp->namehash = m->mtx_namehash; + if (collision) + ++mutex_prof_collisions; + /* We might have raced someone else but who cares, they'll try again next time */ + ++mutex_prof_records; + } + MPROF_LOCK(hash); + /* + * Record if the mutex has been held longer now than ever + * before. + */ + if (now - acqtime > mpp->cnt_max) + mpp->cnt_max = now - acqtime; + mpp->cnt_tot += now - acqtime; + mpp->cnt_cur++; + /* + * There's a small race, really we should cmpxchg + * 0 with the current value, but that would bill + * the contention to the wrong lock instance if + * it followed this also. + */ + mpp->cnt_contest_holding += m->mtx_contest_holding; + m->mtx_contest_holding = 0; + mpp->cnt_contest_locking += m->mtx_contest_locking; + m->mtx_contest_locking = 0; + MPROF_UNLOCK(hash); + } +} + + + static int dump_mutex_prof_stats(SYSCTL_HANDLER_ARGS) { @@ -260,18 +386,11 @@ p != NULL && strncmp(p, "../", 3) == 0; p += 3) /* nothing */ ; sbuf_printf(sb, "%6ju %12ju %11ju %5ju %12ju %12ju %s:%d (%s)\n", -#if 0 mprof_buf[i].cnt_max / 1000, mprof_buf[i].cnt_tot / 1000, -#endif - (uintmax_t)0, - (uintmax_t)0, mprof_buf[i].cnt_cur, - (uintmax_t)0, -#if 0 mprof_buf[i].cnt_cur == 0 ? (uintmax_t)0 : mprof_buf[i].cnt_tot / (mprof_buf[i].cnt_cur * 1000), -#endif mprof_buf[i].cnt_contest_holding, mprof_buf[i].cnt_contest_locking, p, mprof_buf[i].line, mprof_buf[i].name); @@ -313,6 +432,15 @@ } SYSCTL_PROC(_debug_mutex_prof, OID_AUTO, reset, CTLTYPE_INT | CTLFLAG_RW, NULL, 0, reset_mutex_prof_stats, "I", "Reset mutex profiling statistics"); + +#else +static inline void mtx_profile_init(struct mtx *m, const char *name) {;} +static inline void mtx_profile_destroy(struct mtx *m) {;} +static inline void mtx_profile_obtain_lock_failed(struct mtx *m, int *contested) {;} +static inline void mtx_profile_obtain_lock_success(struct mtx *m, const char *file, int line) {;} +static inline void mtx_profile_release_lock(struct mtx *m) {;} + +static inline void mutex_profile_init(void) {;} #endif /* @@ -333,17 +461,7 @@ LOCK_LOG_LOCK("LOCK", &m->mtx_object, opts, m->mtx_recurse, file, line); WITNESS_LOCK(&m->mtx_object, opts | LOP_EXCLUSIVE, file, line); -#ifdef MUTEX_PROFILING - /* don't reset the timer when/if recursing */ - if (mutex_prof_enable == 1 && mutex_prof_global && m->mtx_acqtime == 0) { - m->mtx_filename = file; - m->mtx_lineno = line; - m->mtx_acqtime = 1; -#if 0 - ++mutex_prof_acquisitions; -#endif - } -#endif + mtx_profile_obtain_lock_success(m, file, line); } void @@ -358,79 +476,8 @@ LOCK_LOG_LOCK("UNLOCK", &m->mtx_object, opts, m->mtx_recurse, file, line); mtx_assert(m, MA_OWNED); -#ifdef MUTEX_PROFILING - if (mutex_prof_global && m->mtx_acqtime != 0) { - const char *unknown = "(unknown)"; - struct mutex_prof *mpp; - u_int64_t acqtime, now; - u_int hash; - const char *p = m->mtx_filename; - int collision = 0; - now = 2; - acqtime = m->mtx_acqtime; - m->mtx_acqtime = 0; - if (now <= acqtime) - goto out; - if (p == NULL || *p == '\0') - p = unknown; - hash = (m->mtx_namehash * 31 * 31 + (uintptr_t)p * 31 + m->mtx_lineno) & MPROF_HASH_MASK; - CTR5(KTR_SPARE1, "Hashing %s(%x) %s:%d to %d", mtx_name(m), m->mtx_namehash, p, m->mtx_lineno, hash); - mpp = &mprof_buf[hash]; - while (mpp->name != NULL) { - if (mpp->line == m->mtx_lineno && - mpp->file == p && - mpp->namehash == m->mtx_namehash) - break; - /* If the mprof_hash entry is allocated to someone else, try the next one */ - collision = 1; - CTR4(KTR_SPARE1, "Hash collision, %s:%d %s(%x)", mpp->file, mpp->line, mpp->name, mpp->namehash); - hash = (hash + 1) & MPROF_HASH_MASK; - mpp = &mprof_buf[hash]; - } - if (mpp->name == NULL) { - int buf; - - buf = atomic_fetchadd_int(&allocated_mprof_buf, 1); - /* Just exit if we cannot get a trace buffer */ - if (buf >= MPROF_HASH_SIZE) { - ++mutex_prof_rejected; - goto out; - } - mpp->file = p; - mpp->line = m->mtx_lineno; - mpp->name = mtx_name(m); - mpp->namehash = m->mtx_namehash; - if (collision) - ++mutex_prof_collisions; - /* We might have raced someone else but who cares, they'll try again next time */ - ++mutex_prof_records; - } - MPROF_LOCK(hash); - /* - * Record if the mutex has been held longer now than ever - * before. - */ -#if 0 - if (now - acqtime > mpp->cnt_max) - mpp->cnt_max = now - acqtime; - mpp->cnt_tot += now - acqtime; -#endif - mpp->cnt_cur++; - /* - * There's a small race, really we should cmpxchg - * 0 with the current value, but that would bill - * the contention to the wrong lock instance if - * it followed this also. - */ - mpp->cnt_contest_holding += m->mtx_contest_holding; - m->mtx_contest_holding = 0; - mpp->cnt_contest_locking += m->mtx_contest_locking; - m->mtx_contest_locking = 0; - MPROF_UNLOCK(hash); - } -out: -#endif + mtx_profile_release_lock(m); _rel_sleep_lock(m, curthread, opts, file, line); } @@ -514,9 +561,7 @@ int cont_logged = 0; #endif #endif -#ifdef MUTEX_PROFILING - int contested, oldhold, fine_profiling = 0; -#endif + int contested; if (mtx_owned(m)) { KASSERT((m->mtx_object.lo_flags & LO_RECURSABLE) != 0, @@ -534,35 +579,8 @@ "_mtx_lock_sleep: %s contested (lock=%p) at %s:%d", m->mtx_object.lo_name, (void *)m->mtx_lock, file, line); -#ifdef MUTEX_PROFILING - contested = 0; - if (m->mtx_object.lo_flags & LO_PROFILE) - fine_profiling = 1; -#endif while (!_obtain_lock(m, tid)) { -#ifdef MUTEX_PROFILING - if (mutex_prof_global) { - contested = 1; - atomic_add_int(&m->mtx_contest_holding, 1); - } else if (fine_profiling && !contested) { - contested = 1; - oldhold = atomic_fetchadd_int(&m->mtx_contest_holding, 1); -#if 0 - if (!((oldhold + 1) % stack_scale)) { - mtx_lock_spin(&mprof_mtx); - stack_save(&mtx_stack); - CTR2(KTR_CONTENTION, "cont_hold (%d) of %s", oldhold, m->mtx_object.lo_name); - CTRSTACK(KTR_CONTENTION, &mtx_stack, 4, 0); - mtx_unlock_spin(&mprof_mtx); - } - CTR3(KTR_CONTENTION, - "%s held by %s:%d", - m->mtx_object.lo_name, - m->mtx_filename, - m->mtx_lineno); -#endif - } -#endif + mtx_profile_obtain_lock_failed(m, &contested); turnstile_lock(&m->mtx_object); v = m->mtx_lock; @@ -645,7 +663,7 @@ #endif #endif #ifdef MUTEX_PROFILING - if (fine_profiling || mutex_prof_global) { + if (mutex_prof_enable) { m->mtx_contest_locking = contested; atomic_store_rel_int(&m->mtx_contest_holding,0); } @@ -920,10 +938,6 @@ { struct lock_class *class; int flags; -#ifdef MUTEX_PROFILING - const char *p; - u_int hash = 0; -#endif MPASS((opts & ~(MTX_SPIN | MTX_QUIET | MTX_RECURSE | MTX_NOWITNESS | MTX_DUPOK)) == 0); @@ -953,23 +967,8 @@ /* Initialize mutex. */ m->mtx_lock = MTX_UNOWNED; m->mtx_recurse = 0; -#ifdef MUTEX_PROFILING - m->mtx_acqtime = 0; - m->mtx_filename = NULL; - m->mtx_lineno = 0; - m->mtx_contest_holding = 0; - m->mtx_contest_locking = 0; - /* Hash the mutex name to an int so we don't have to strcmp() it repeatedly */ - for (p = name; *p != '\0'; p++) - hash = 31 * hash + *p; - m->mtx_namehash = hash; -#if 0 - if (opts & MTX_PROFILE) - m->mtx_stack = stack_create(); -#endif -#endif - + mtx_profile_init(m, name); lock_init(&m->mtx_object, class, name, type, flags); } @@ -996,14 +995,8 @@ WITNESS_UNLOCK(&m->mtx_object, LOP_EXCLUSIVE, __FILE__, __LINE__); } - -#ifdef MUTEX_PROFILING -#if 0 - if (m->mtx_object.lo_flags & LO_PROFILE) - stack_destroy(m->mtx_stack); -#endif -#endif - + + mtx_profile_destroy(m); lock_destroy(&m->mtx_object); } @@ -1015,20 +1008,12 @@ void mutex_init(void) { -#ifdef MUTEX_PROFILING - int i; -#endif - /* Setup turnstiles so that sleep mutexes work. */ init_turnstiles(); -#ifdef MUTEX_PROFILING - /* Initialize the mutex profiling locks */ - for (i = 0; i < MPROF_LOCK_SIZE; i++) { - mtx_init(&mprof_locks[i], "mprof lock", - NULL, MTX_SPIN|MTX_QUIET); - } -#endif + printf("calling profile init\n"); + mutex_profile_init(); + printf("called profile init\n"); /* * Initialize mutexes. From owner-p4-projects@FreeBSD.ORG Fri Jun 23 21:06:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A854716A4C8; Fri, 23 Jun 2006 21:06:03 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6948E16A4B3 for ; Fri, 23 Jun 2006 21:06:03 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C4DF43D49 for ; Fri, 23 Jun 2006 21:05:56 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NL5tNR059584 for ; Fri, 23 Jun 2006 21:05:56 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NL5tBc059581 for perforce@freebsd.org; Fri, 23 Jun 2006 21:05:55 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 21:05:55 GMT Message-Id: <200606232105.k5NL5tBc059581@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99892 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 21:06:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=99892 Change 99892 by jhb@jhb_mutex on 2006/06/23 21:05:48 - Add a kern_semctl() and use it to cleanup linux_semctl() and svr4_semctl(). (Both of which are MPSAFE now.) Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_ipc.c#24 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#12 edit .. //depot/projects/smpng/sys/kern/sysv_sem.c#36 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#29 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_ipc.c#24 (text+ko) ==== @@ -491,69 +491,56 @@ linux_semctl(struct thread *td, struct linux_semctl_args *args) { struct l_semid_ds linux_semid; - struct __semctl_args /* { - int semid; - int semnum; - int cmd; - union semun *arg; - } */ bsd_args; struct l_seminfo linux_seminfo; - int error; - union semun *unptr; - caddr_t sg; - - sg = stackgap_init(); - - /* Make sure the arg parameter can be copied in. */ - unptr = stackgap_alloc(&sg, sizeof(union semun)); - bcopy(&args->arg, unptr, sizeof(union semun)); - - bsd_args.semid = args->semid; - bsd_args.semnum = args->semnum; - bsd_args.arg = unptr; + struct semid_ds semid; + union semun semun; + int cmd, error; switch (args->cmd & ~LINUX_IPC_64) { case LINUX_IPC_RMID: - bsd_args.cmd = IPC_RMID; + cmd = IPC_RMID; break; case LINUX_GETNCNT: - bsd_args.cmd = GETNCNT; + cmd = GETNCNT; break; case LINUX_GETPID: - bsd_args.cmd = GETPID; + cmd = GETPID; break; case LINUX_GETVAL: - bsd_args.cmd = GETVAL; + cmd = GETVAL; break; case LINUX_GETZCNT: - bsd_args.cmd = GETZCNT; + cmd = GETZCNT; break; case LINUX_SETVAL: - bsd_args.cmd = SETVAL; + cmd = SETVAL; + semun.val = args->arg.val; break; case LINUX_IPC_SET: - bsd_args.cmd = IPC_SET; + cmd = IPC_SET; error = linux_semid_pullup(args->cmd & LINUX_IPC_64, &linux_semid, (caddr_t)PTRIN(args->arg.buf)); if (error) return (error); - unptr->buf = stackgap_alloc(&sg, sizeof(struct semid_ds)); - linux_to_bsd_semid_ds(&linux_semid, unptr->buf); - return __semctl(td, &bsd_args); + linux_to_bsd_semid_ds(&linux_semid, &semid); + semun.buf = &semid; + return kern_semctl(td, args->semid, args->semnum, cmd, &semun, + UIO_SYSSPACE); case LINUX_IPC_STAT: case LINUX_SEM_STAT: if((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) - bsd_args.cmd = IPC_STAT; + cmd = IPC_STAT; else - bsd_args.cmd = SEM_STAT; - unptr->buf = stackgap_alloc(&sg, sizeof(struct semid_ds)); - error = __semctl(td, &bsd_args); + cmd = SEM_STAT; + semun.buf = &semid; + error = kern_semctl(td, args->semid, args->semnum, cmd, &semun, + UIO_SYSSPACE); if (error) - return error; - td->td_retval[0] = (bsd_args.cmd == SEM_STAT) ? - IXSEQ_TO_IPCID(bsd_args.semid, unptr->buf->sem_perm) : + return (error); + td->td_retval[0] = (cmd == SEM_STAT) ? + IXSEQ_TO_IPCID(args->semid, semid.sem_perm) : 0; - bsd_to_linux_semid_ds(unptr->buf, &linux_semid); + bsd_to_linux_semid_ds(&semid, &linux_semid); return (linux_semid_pushdown(args->cmd & LINUX_IPC_64, &linux_semid, (caddr_t)PTRIN(args->arg.buf))); case LINUX_IPC_INFO: @@ -580,7 +567,8 @@ args->cmd & ~LINUX_IPC_64); return EINVAL; } - return __semctl(td, &bsd_args); + return kern_semctl(td, args->semid, args->semnum, cmd, &semun, + UIO_USERSPACE); } int ==== //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#12 (text+ko) ==== @@ -105,8 +105,6 @@ struct svr4_semid_ds *); static void svr4_to_bsd_semid_ds(const struct svr4_semid_ds *, struct semid_ds *); -static int svr4_setsemun(caddr_t *sgp, union semun **argp, - union semun *usp); static int svr4_semop(struct thread *, void *); static int svr4_semget(struct thread *, void *); static int svr4_semctl(struct thread *, void *); @@ -194,16 +192,6 @@ bds->sem_pad2 = sds->sem_pad2; } -static int -svr4_setsemun(sgp, argp, usp) - caddr_t *sgp; - union semun **argp; - union semun *usp; -{ - *argp = stackgap_alloc(sgp, sizeof(union semun)); - return copyout((caddr_t)usp, *argp, sizeof(union semun)); -} - struct svr4_sys_semctl_args { int what; int semid; @@ -217,108 +205,71 @@ struct thread *td; void *v; { - int error; struct svr4_sys_semctl_args *uap = v; - struct __semctl_args ap; struct svr4_semid_ds ss; - struct semid_ds bs, *bsp; - caddr_t sg = stackgap_init(); - - ap.semid = uap->semid; - ap.semnum = uap->semnum; + struct semid_ds bs; + union semun semun; + int cmd, error; switch (uap->cmd) { case SVR4_SEM_GETZCNT: + cmd = GETZCNT; + break; + case SVR4_SEM_GETNCNT: + cmd = GETNCNT; + break; + case SVR4_SEM_GETPID: + cmd = GETPID; + break; + case SVR4_SEM_GETVAL: - switch (uap->cmd) { - case SVR4_SEM_GETZCNT: - ap.cmd = GETZCNT; - break; - case SVR4_SEM_GETNCNT: - ap.cmd = GETNCNT; - break; - case SVR4_SEM_GETPID: - ap.cmd = GETPID; - break; - case SVR4_SEM_GETVAL: - ap.cmd = GETVAL; - break; - } - return __semctl(td, &ap); + cmd = GETVAL; + break; case SVR4_SEM_SETVAL: - error = svr4_setsemun(&sg, &ap.arg, &uap->arg); - if (error) - return error; - ap.cmd = SETVAL; - return __semctl(td, &ap); + cmd = SETVAL; + break; case SVR4_SEM_GETALL: - error = svr4_setsemun(&sg, &ap.arg, &uap->arg); - if (error) - return error; - ap.cmd = GETVAL; - return __semctl(td, &ap); + cmd = GETVAL; + break; case SVR4_SEM_SETALL: - error = svr4_setsemun(&sg, &ap.arg, &uap->arg); - if (error) - return error; - ap.cmd = SETVAL; - return __semctl(td, &ap); + cmd = SETVAL; + break; case SVR4_IPC_STAT: - ap.cmd = IPC_STAT; - bsp = stackgap_alloc(&sg, sizeof(bs)); - error = svr4_setsemun(&sg, &ap.arg, - (union semun *)&bsp); + cmd = IPC_STAT; + semun.buf = &bs; + error = kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, + UIO_SYSSPACE); if (error) - return error; - if ((error = __semctl(td, &ap)) != 0) - return error; - error = copyin((caddr_t)bsp, (caddr_t)&bs, sizeof(bs)); - if (error) return error; bsd_to_svr4_semid_ds(&bs, &ss); return copyout(&ss, uap->arg.buf, sizeof(ss)); case SVR4_IPC_SET: - ap.cmd = IPC_SET; - bsp = stackgap_alloc(&sg, sizeof(bs)); - error = svr4_setsemun(&sg, &ap.arg, - (union semun *)&bsp); - if (error) - return error; + cmd = IPC_SET; error = copyin(uap->arg.buf, (caddr_t) &ss, sizeof ss); if (error) return error; svr4_to_bsd_semid_ds(&ss, &bs); - error = copyout(&bs, bsp, sizeof(bs)); - if (error) - return error; - return __semctl(td, &ap); + semun.buf = &bs; + return kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, + UIO_SYSSPACE); case SVR4_IPC_RMID: - ap.cmd = IPC_RMID; - bsp = stackgap_alloc(&sg, sizeof(bs)); - error = svr4_setsemun(&sg, &ap.arg, - (union semun *)&bsp); - if (error) - return error; - error = copyin(uap->arg.buf, &ss, sizeof ss); - if (error) - return error; - svr4_to_bsd_semid_ds(&ss, &bs); - error = copyout(&bs, bsp, sizeof(bs)); - if (error) - return error; - return __semctl(td, &ap); + cmd = IPC_RMID; + break; default: return EINVAL; } + + return kern_semctl(td, uap->semid, uap->semnum, cmd, &uap->arg, + UIO_USERSPACE); } struct svr4_sys_semget_args { ==== //depot/projects/smpng/sys/kern/sysv_sem.c#36 (text+ko) ==== @@ -53,8 +53,10 @@ #include #include #include +#include #include #include +#include #include #include #include @@ -554,12 +556,35 @@ struct thread *td; struct __semctl_args *uap; { - int semid = uap->semid; - int semnum = uap->semnum; - int cmd = uap->cmd; + union semun real_arg; + union semun *arg; + int error; + + switch (uap->cmd) { + case SEM_STAT: + case IPC_SET: + case IPC_STAT: + case GETALL: + case SETVAL: + case SETALL: + error = copyin(uap->arg, &real_arg, sizeof(real_arg)); + if (error) + return (error); + arg = &real_arg; + break; + default: + arg = NULL; + break; + } + return (kern_semctl(td, uap->semid, uap->semnum, uap->cmd, arg, + UIO_USERSPACE)); +} + +int +kern_semctl(struct thread *td, int semid, int semnum, int cmd, union semun *arg, + enum uio_seg bufseg) +{ u_short *array; - union semun *arg = uap->arg; - union semun real_arg; struct ucred *cred = td->td_ucred; int i, rval, error; struct semid_ds sbuf; @@ -578,8 +603,6 @@ case SEM_STAT: if (semid < 0 || semid >= seminfo.semmni) return (EINVAL); - if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) - return (error); semakptr = &sema[semid]; sema_mtxp = &sema_mtx[semid]; mtx_lock(sema_mtxp); @@ -598,8 +621,11 @@ } #endif mtx_unlock(sema_mtxp); - error = copyout(&semakptr->u, real_arg.buf, - sizeof(struct semid_ds)); + if (bufseg == UIO_USERSPACE) + error = copyout(&semakptr->u, arg->buf, + sizeof(struct semid_ds)); + else + bcopy(&semakptr->u, arg->buf, sizeof(struct semid_ds)); rval = IXSEQ_TO_IPCID(semid, semakptr->u.sem_perm); if (error == 0) td->td_retval[0] = rval; @@ -629,7 +655,7 @@ switch (cmd) { case IPC_RMID: mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_M))) goto done2; @@ -654,12 +680,14 @@ break; case IPC_SET: - if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) - goto done2; - if ((error = copyin(real_arg.buf, &sbuf, sizeof(sbuf))) != 0) - goto done2; + if (bufseg == UIO_USERSPACE) { + error = copyin(arg->buf, &sbuf, sizeof(sbuf)); + if (error) + goto done2; + } else + bcopy(arg->buf, &sbuf, sizeof(sbuf)); mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_M))) goto done2; @@ -671,22 +699,23 @@ break; case IPC_STAT: - if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) - goto done2; mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; sbuf = semakptr->u; mtx_unlock(sema_mtxp); - error = copyout(&semakptr->u, real_arg.buf, - sizeof(struct semid_ds)); + if (bufseg == UIO_USERSPACE) + error = copyout(&semakptr->u, arg->buf, + sizeof(struct semid_ds)); + else + bcopy(&semakptr->u, arg->buf, sizeof(struct semid_ds)); break; case GETNCNT: mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; @@ -699,7 +728,7 @@ case GETPID: mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; @@ -712,7 +741,7 @@ case GETVAL: mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; @@ -724,25 +753,31 @@ break; case GETALL: - if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) - goto done2; + /* + * Given the fact that this copies out a variable amount + * of data into userland, I don't see any feasible way of + * doing this with a kmem copy of the userland buffer. + */ + if (bufseg == UIO_SYSSPACE) + return (EINVAL); + array = malloc(sizeof(*array) * semakptr->u.sem_nsems, M_TEMP, M_WAITOK); mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; for (i = 0; i < semakptr->u.sem_nsems; i++) array[i] = semakptr->u.sem_base[i].semval; mtx_unlock(sema_mtxp); - error = copyout(array, real_arg.array, - i * sizeof(real_arg.array[0])); + error = copyout(array, arg->array, + i * sizeof(arg->array[0])); break; case GETZCNT: mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; @@ -754,10 +789,8 @@ break; case SETVAL: - if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) - goto done2; mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_W))) goto done2; @@ -765,11 +798,11 @@ error = EINVAL; goto done2; } - if (real_arg.val < 0 || real_arg.val > seminfo.semvmx) { + if (arg->val < 0 || arg->val > seminfo.semvmx) { error = ERANGE; goto done2; } - semakptr->u.sem_base[semnum].semval = real_arg.val; + semakptr->u.sem_base[semnum].semval = arg->val; SEMUNDO_LOCK(); semundo_clear(semid, semnum); SEMUNDO_UNLOCK(); @@ -777,20 +810,25 @@ break; case SETALL: + /* + * Given the fact that this copies in variable amounts of + * userland data in a loop, I don't see any feasible way + * of doing this with a kmem copy of the userland buffer. + */ + if (bufseg == UIO_SYSSPACE) + return (EINVAL); mtx_lock(sema_mtxp); raced: - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; count = semakptr->u.sem_nsems; mtx_unlock(sema_mtxp); - if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) - goto done2; array = malloc(sizeof(*array) * count, M_TEMP, M_WAITOK); - error = copyin(real_arg.array, array, count * sizeof(*array)); + error = copyin(arg->array, array, count * sizeof(*array)); if (error) break; mtx_lock(sema_mtxp); - if ((error = semvalid(uap->semid, semakptr)) != 0) + if ((error = semvalid(semid, semakptr)) != 0) goto done2; /* we could have raced? */ if (count != semakptr->u.sem_nsems) { ==== //depot/projects/smpng/sys/sys/syscallsubr.h#29 (text+ko) ==== @@ -41,6 +41,7 @@ struct msqid_ds; struct rlimit; struct rusage; +union semun; struct sockaddr; struct stat; struct kevent; @@ -123,6 +124,8 @@ int kern_rmdir(struct thread *td, char *path, enum uio_seg pathseg); int kern_sched_rr_get_interval(struct thread *td, pid_t pid, struct timespec *ts); +int kern_semctl(struct thread *td, int semid, int semnum, int cmd, + union semun *arg, enum uio_seg bufseg); int kern_select(struct thread *td, int nd, fd_set *fd_in, fd_set *fd_ou, fd_set *fd_ex, struct timeval *tvp); int kern_sendfile(struct thread *td, struct sendfile_args *uap, From owner-p4-projects@FreeBSD.ORG Fri Jun 23 21:17:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AC16E16A4AB; Fri, 23 Jun 2006 21:17:11 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7F92316A4A7 for ; Fri, 23 Jun 2006 21:17:11 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 399E743D46 for ; Fri, 23 Jun 2006 21:17:11 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NLHBdZ060193 for ; Fri, 23 Jun 2006 21:17:11 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NLHB4w060189 for perforce@freebsd.org; Fri, 23 Jun 2006 21:17:11 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 21:17:11 GMT Message-Id: <200606232117.k5NLHB4w060189@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99893 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 21:17:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=99893 Change 99893 by jhb@jhb_mutex on 2006/06/23 21:16:40 No more stackgap in Linux ABIs! Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_util.h#15 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_util.h#15 (text+ko) ==== @@ -49,32 +49,6 @@ #include #include -static __inline caddr_t stackgap_init(void); -static __inline void *stackgap_alloc(caddr_t *, size_t); - -#define szsigcode (*(curthread->td_proc->p_sysent->sv_szsigcode)) -#define psstrings (curthread->td_proc->p_sysent->sv_psstrings) - -static __inline caddr_t -stackgap_init() -{ - return (caddr_t)(psstrings - szsigcode - SPARE_USRSPACE); -} - -static __inline void * -stackgap_alloc(sgp, sz) - caddr_t *sgp; - size_t sz; -{ - void *p = (void *) *sgp; - - sz = ALIGN(sz); - if (*sgp + sz > (caddr_t)(psstrings - szsigcode)) - return NULL; - *sgp += sz; - return p; -} - extern const char linux_emul_path[]; int linux_emul_convpath(struct thread *, char *, enum uio_seg, char **, int); From owner-p4-projects@FreeBSD.ORG Fri Jun 23 21:17:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 135CD16A555; Fri, 23 Jun 2006 21:17:12 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C8BE616A529 for ; Fri, 23 Jun 2006 21:17:11 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8EEBE43D46 for ; Fri, 23 Jun 2006 21:17:11 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NLHBYa060199 for ; Fri, 23 Jun 2006 21:17:11 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NLHBqx060196 for perforce@freebsd.org; Fri, 23 Jun 2006 21:17:11 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 21:17:11 GMT Message-Id: <200606232117.k5NLHBqx060196@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99894 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 21:17:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=99894 Change 99894 by jhb@jhb_mutex on 2006/06/23 21:17:07 linux_ipc() MPSAFE. Affected files ... .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#12 edit .. //depot/projects/smpng/sys/i386/linux/syscalls.master#30 edit Differences ... ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#12 (text+ko) ==== @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/smpng/sys/i386/linux/syscalls.master#30 (text+ko) ==== @@ -213,7 +213,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 21:19:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CBC8A16A5BA; Fri, 23 Jun 2006 21:19:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AA42516A58D for ; Fri, 23 Jun 2006 21:19:14 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5B98443D49 for ; Fri, 23 Jun 2006 21:19:14 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NLJE39060381 for ; Fri, 23 Jun 2006 21:19:14 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NLJEIi060377 for perforce@freebsd.org; Fri, 23 Jun 2006 21:19:14 GMT (envelope-from jhb@freebsd.org) Date: Fri, 23 Jun 2006 21:19:14 GMT Message-Id: <200606232119.k5NLJEIi060377@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 99895 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 21:19:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=99895 Change 99895 by jhb@jhb_mutex on 2006/06/23 21:19:11 Sync with master: mkdir, rmdir, and extattr* are all MPSAFE. Affected files ... .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#31 edit Differences ... ==== //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#31 (text+ko) ==== @@ -251,8 +251,8 @@ 134 AUE_SHUTDOWN MNOPROTO { int shutdown(int s, int how); } 135 AUE_SOCKETPAIR MNOPROTO { int socketpair(int domain, int type, \ int protocol, int *rsv); } -136 AUE_MKDIR NOPROTO { int mkdir(char *path, int mode); } -137 AUE_RMDIR NOPROTO { int rmdir(char *path); } +136 AUE_MKDIR MNOPROTO { int mkdir(char *path, int mode); } +137 AUE_RMDIR MNOPROTO { int rmdir(char *path); } 138 AUE_UTIMES STD { int freebsd32_utimes(char *path, \ struct timeval32 *tptr); } 139 AUE_NULL OBSOL 4.2 sigreturn @@ -601,16 +601,16 @@ acl_type_t type, struct acl *aclp); } 354 AUE_NULL MNOPROTO { int __acl_aclcheck_fd(int filedes, \ acl_type_t type, struct acl *aclp); } -355 AUE_NULL NOPROTO { int extattrctl(const char *path, int cmd, \ +355 AUE_NULL MNOPROTO { int extattrctl(const char *path, int cmd, \ const char *filename, int attrnamespace, \ const char *attrname); } -356 AUE_NULL NOPROTO { int extattr_set_file(const char *path, \ +356 AUE_NULL MNOPROTO { int extattr_set_file(const char *path, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -357 AUE_NULL NOPROTO { ssize_t extattr_get_file(const char *path, \ +357 AUE_NULL MNOPROTO { ssize_t extattr_get_file(const char *path, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -358 AUE_NULL NOPROTO { int extattr_delete_file(const char *path, \ +358 AUE_NULL MNOPROTO { int extattr_delete_file(const char *path, \ int attrnamespace, \ const char *attrname); } 359 AUE_NULL UNIMPL aio_waitcomplete @@ -631,13 +631,13 @@ 368 AUE_NULL UNIMPL __cap_set_fd 369 AUE_NULL UNIMPL __cap_set_file 370 AUE_NULL UNIMPL lkmressys -371 AUE_NULL NOPROTO { int extattr_set_fd(int fd, \ +371 AUE_NULL MNOPROTO { int extattr_set_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -372 AUE_NULL NOPROTO { ssize_t extattr_get_fd(int fd, \ +372 AUE_NULL MNOPROTO { ssize_t extattr_get_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -373 AUE_NULL NOPROTO { int extattr_delete_fd(int fd, \ +373 AUE_NULL MNOPROTO { int extattr_delete_fd(int fd, \ int attrnamespace, \ const char *attrname); } 374 AUE_NULL MNOPROTO { int __setugid(int flag); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 22:08:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CFF9F16A47E; Fri, 23 Jun 2006 22:08:18 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 850C916A47B for ; Fri, 23 Jun 2006 22:08:18 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B39D843D45 for ; Fri, 23 Jun 2006 22:08:17 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NM8Hx8063749 for ; Fri, 23 Jun 2006 22:08:17 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NM8H2X063746 for perforce@freebsd.org; Fri, 23 Jun 2006 22:08:17 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 23 Jun 2006 22:08:17 GMT Message-Id: <200606232208.k5NM8H2X063746@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 99899 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 22:08:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=99899 Change 99899 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/23 22:07:42 re-factor MUTEX_PROFILING into the lock object to facilitate use by other lock types Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#12 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#16 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/_lock.h#3 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/_mutex.h#4 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#12 (text+ko) ==== @@ -59,6 +59,7 @@ #include #include #include +#include #include #include @@ -156,63 +157,34 @@ #endif #ifdef MUTEX_PROFILING -#include - -#ifndef MPROF_HASH_SIZE -#define MPROF_HASH_SIZE 4096 -#define MPROF_HASH_MASK (MPROF_HASH_SIZE - 1) -#endif -struct mutex_prof { - const char *name; - const char *file; - u_int namehash; - int line; - uintmax_t cnt_max; - uintmax_t cnt_tot; - uintmax_t cnt_cur; - uintmax_t cnt_contest_holding; - uintmax_t cnt_contest_locking; -}; /* * mprof_buf is a static pool of profiling records to avoid possible * reentrance of the memory allocation functions. */ -static struct mutex_prof mprof_buf[MPROF_HASH_SIZE]; -static int allocated_mprof_buf; +struct mutex_prof mprof_buf[MPROF_HASH_SIZE]; +int allocated_mprof_buf; /* SWAG: sbuf size = avg stat. line size * number of locks */ -#define MPROF_SBUF_SIZE 256 * 400 - -/* We keep a smaller pool of spin mutexes for protecting the mprof hash entries */ -#define MPROF_LOCK_SIZE 16 -#define MPROF_LOCK_MASK (MPROF_LOCK_SIZE - 1) -#define MPROF_LHASH(hash) ((hash) & MPROF_LOCK_MASK) - -#define MPROF_LOCK(hash) mtx_lock_spin(&mprof_locks[MPROF_LHASH(hash)]) -#define MPROF_UNLOCK(hash) mtx_unlock_spin(&mprof_locks[MPROF_LHASH(hash)]) struct mtx mprof_locks[MPROF_LOCK_SIZE]; SYSCTL_NODE(_debug, OID_AUTO, mutex, CTLFLAG_RD, NULL, "mutex debugging"); SYSCTL_NODE(_debug_mutex, OID_AUTO, prof, CTLFLAG_RD, NULL, "mutex profiling"); -static int mutex_prof_enable = 0; +int mutex_prof_enable = 0; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, enable, CTLFLAG_RW, &mutex_prof_enable, 0, "Enable tracing of mutex holdtime/contention"); -static int mutex_prof_acquisitions; -SYSCTL_INT(_debug_mutex_prof, OID_AUTO, acquisitions, CTLFLAG_RD, - &mutex_prof_acquisitions, 0, "Number of mutex acquistions recorded"); -static int mutex_prof_records; +int mutex_prof_records; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, records, CTLFLAG_RD, &mutex_prof_records, 0, "Number of profiling records"); static int mutex_prof_maxrecords = MPROF_HASH_SIZE; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, maxrecords, CTLFLAG_RD, &mutex_prof_maxrecords, 0, "Maximum number of profiling records"); -static int mutex_prof_rejected; +int mutex_prof_rejected; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, rejected, CTLFLAG_RD, &mutex_prof_rejected, 0, "Number of rejected profiling records"); static int mutex_prof_hashsize = MPROF_HASH_SIZE; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, hashsize, CTLFLAG_RD, &mutex_prof_hashsize, 0, "Hash size"); -static int mutex_prof_collisions = 0; +int mutex_prof_collisions = 0; SYSCTL_INT(_debug_mutex_prof, OID_AUTO, collisions, CTLFLAG_RD, &mutex_prof_collisions, 0, "Number of hash collisions"); #ifdef KTR @@ -221,148 +193,6 @@ &stack_scale, 0, "How often to sample stack traces"); #endif - - -static inline void -mtx_profile_init(struct mtx *m, const char *name) { - const char *p; - u_int hash = 0; - - m->mtx_acqtime = 0; - m->mtx_filename = NULL; - m->mtx_lineno = 0; - m->mtx_contest_holding = 0; - m->mtx_contest_locking = 0; - - /* Hash the mutex name to an int so we don't have to strcmp() it repeatedly */ - for (p = name; *p != '\0'; p++) - hash = 31 * hash + *p; - m->mtx_namehash = hash; -#if 0 - if (opts & MTX_PROFILE) - m->mtx_stack = stack_create(); -#endif -} - -static inline void -mtx_profile_destroy(struct mtx *m) -{ -#if 0 - if (m->mtx_object.lo_flags & LO_PROFILE) - stack_destroy(m->mtx_stack); -#endif -} - -static inline void -mutex_profile_init(void) -{ - int i; - /* Initialize the mutex profiling locks */ - for (i = 0; i < MPROF_LOCK_SIZE; i++) { - mtx_init(&mprof_locks[i], "mprof lock", - NULL, MTX_SPIN|MTX_QUIET); - } -} - -static inline void -mtx_profile_obtain_lock_failed(struct mtx *m, int *contested) -{ - if (mutex_prof_enable) { - *contested = 1; - atomic_add_int(&m->mtx_contest_holding, 1); - } -} - -static inline void -mtx_profile_obtain_lock_success(struct mtx *m, const char *file, int line) -{ - /* don't reset the timer when/if recursing */ - if (mutex_prof_enable && m->mtx_acqtime == 0) { - m->mtx_filename = file; - m->mtx_lineno = line; - m->mtx_acqtime = rd(tick); /* substitute for more general TSC read */ -#if 0 - ++mutex_prof_acquisitions; -#endif - } -} - -static void -mtx_profile_release_lock(struct mtx *m) -{ - - if (m->mtx_acqtime) { - const char *unknown = "(unknown)"; - struct mutex_prof *mpp; - u_int64_t acqtime, now; - u_int hash; - const char *p = m->mtx_filename; - int collision = 0; - - now = rd(tick); - acqtime = m->mtx_acqtime; - m->mtx_acqtime = 0; - if (now <= acqtime) - return; - if (p == NULL || *p == '\0') - p = unknown; - hash = (m->mtx_namehash * 31 * 31 + (uintptr_t)p * 31 + m->mtx_lineno) & MPROF_HASH_MASK; - CTR5(KTR_SPARE1, "Hashing %s(%x) %s:%d to %d", mtx_name(m), m->mtx_namehash, p, m->mtx_lineno, hash); - mpp = &mprof_buf[hash]; - while (mpp->name != NULL) { - if (mpp->line == m->mtx_lineno && - mpp->file == p && - mpp->namehash == m->mtx_namehash) - break; - /* If the mprof_hash entry is allocated to someone else, try the next one */ - collision = 1; - CTR4(KTR_SPARE1, "Hash collision, %s:%d %s(%x)", mpp->file, mpp->line, mpp->name, mpp->namehash); - hash = (hash + 1) & MPROF_HASH_MASK; - mpp = &mprof_buf[hash]; - } - if (mpp->name == NULL) { - int buf; - - buf = atomic_fetchadd_int(&allocated_mprof_buf, 1); - /* Just exit if we cannot get a trace buffer */ - if (buf >= MPROF_HASH_SIZE) { - ++mutex_prof_rejected; - return; - } - mpp->file = p; - mpp->line = m->mtx_lineno; - mpp->name = mtx_name(m); - mpp->namehash = m->mtx_namehash; - if (collision) - ++mutex_prof_collisions; - /* We might have raced someone else but who cares, they'll try again next time */ - ++mutex_prof_records; - } - MPROF_LOCK(hash); - /* - * Record if the mutex has been held longer now than ever - * before. - */ - if (now - acqtime > mpp->cnt_max) - mpp->cnt_max = now - acqtime; - mpp->cnt_tot += now - acqtime; - mpp->cnt_cur++; - /* - * There's a small race, really we should cmpxchg - * 0 with the current value, but that would bill - * the contention to the wrong lock instance if - * it followed this also. - */ - mpp->cnt_contest_holding += m->mtx_contest_holding; - m->mtx_contest_holding = 0; - mpp->cnt_contest_locking += m->mtx_contest_locking; - m->mtx_contest_locking = 0; - MPROF_UNLOCK(hash); - } -} - - - static int dump_mutex_prof_stats(SYSCTL_HANDLER_ARGS) { @@ -433,14 +263,6 @@ SYSCTL_PROC(_debug_mutex_prof, OID_AUTO, reset, CTLTYPE_INT | CTLFLAG_RW, NULL, 0, reset_mutex_prof_stats, "I", "Reset mutex profiling statistics"); -#else -static inline void mtx_profile_init(struct mtx *m, const char *name) {;} -static inline void mtx_profile_destroy(struct mtx *m) {;} -static inline void mtx_profile_obtain_lock_failed(struct mtx *m, int *contested) {;} -static inline void mtx_profile_obtain_lock_success(struct mtx *m, const char *file, int line) {;} -static inline void mtx_profile_release_lock(struct mtx *m) {;} - -static inline void mutex_profile_init(void) {;} #endif /* @@ -461,7 +283,7 @@ LOCK_LOG_LOCK("LOCK", &m->mtx_object, opts, m->mtx_recurse, file, line); WITNESS_LOCK(&m->mtx_object, opts | LOP_EXCLUSIVE, file, line); - mtx_profile_obtain_lock_success(m, file, line); + mtx_profile_obtain_lock_success(&m->mtx_object, file, line); } void @@ -477,7 +299,7 @@ line); mtx_assert(m, MA_OWNED); - mtx_profile_release_lock(m); + mtx_profile_release_lock(&m->mtx_object); _rel_sleep_lock(m, curthread, opts, file, line); } @@ -580,7 +402,7 @@ m->mtx_object.lo_name, (void *)m->mtx_lock, file, line); while (!_obtain_lock(m, tid)) { - mtx_profile_obtain_lock_failed(m, &contested); + mtx_profile_obtain_lock_failed(&m->mtx_object, &contested); turnstile_lock(&m->mtx_object); v = m->mtx_lock; @@ -664,8 +486,8 @@ #endif #ifdef MUTEX_PROFILING if (mutex_prof_enable) { - m->mtx_contest_locking = contested; - atomic_store_rel_int(&m->mtx_contest_holding,0); + m->mtx_object.lo_profile_obj.lpo_contest_locking = contested; + atomic_store_rel_int(&m->mtx_object.lo_profile_obj.lpo_contest_holding, 0); } #endif return; @@ -968,7 +790,7 @@ m->mtx_lock = MTX_UNOWNED; m->mtx_recurse = 0; - mtx_profile_init(m, name); + mtx_profile_init(&m->mtx_object, name); lock_init(&m->mtx_object, class, name, type, flags); } @@ -996,7 +818,7 @@ __LINE__); } - mtx_profile_destroy(m); + mtx_profile_destroy(&m->mtx_object); lock_destroy(&m->mtx_object); } ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#16 (text+ko) ==== @@ -39,6 +39,14 @@ #define ALT_STACK_SIZE 128 struct pmap; +#if defined(WITNESS) +#define SUN4V_PAD 7 + +#elif defined(MUTEX_PROFILING) +#define SUN4V_PAD 4 +#else +#define SUN4V_PAD 0 +#endif /* * Inside the kernel, the globally reserved register g7 is used to @@ -79,7 +87,7 @@ struct rwindow pc_tsbwbuf[2]; \ u_int pc_node; \ uint16_t pc_cpulist[MAXCPU]; \ - uint64_t pad[7]; + uint64_t pad[SUN4V_PAD]; /* XXX SUN4V_FIXME - as we access the *_ra and *_size fields in quick * succession we _really_ want them to be L1 cache line size aligned ==== //depot/projects/kmacy_sun4v/src/sys/sys/_lock.h#3 (text+ko) ==== @@ -31,14 +31,39 @@ #ifndef _SYS__LOCK_H_ #define _SYS__LOCK_H_ +struct lock_profile_object { + /* + * This does not result in variant structure sizes because + * MUTEX_PROFILING is in opt_global.h + */ + u_int64_t lpo_acqtime; + const char *lpo_filename; + u_int lpo_namehash; + int lpo_lineno; + /* + * Fields relating to measuring contention on mutexes. + * holding must be accessed atomically since it's + * modified by threads that don't yet hold the mutex. + * locking is only modified and referenced while + * the mutex is held. + */ + u_int lpo_contest_holding; + u_int lpo_contest_locking; +}; + struct lock_object { const char *lo_name; /* Individual lock name. */ const char *lo_type; /* General lock type. */ u_int lo_flags; +#ifdef MUTEX_PROFILING + struct lock_profile_object lo_profile_obj; +#endif +#ifdef WITNESS union { /* Data for witness. */ STAILQ_ENTRY(lock_object) lod_list; struct witness *lod_witness; } lo_witness_data; +#endif }; #endif /* !_SYS__LOCK_H_ */ ==== //depot/projects/kmacy_sun4v/src/sys/sys/_mutex.h#4 (text+ko) ==== @@ -38,27 +38,6 @@ struct lock_object mtx_object; /* Common lock properties. */ volatile uintptr_t mtx_lock; /* Owner and flags. */ volatile u_int mtx_recurse; /* Number of recursive holds. */ - -#ifdef MUTEX_PROFILING - /* - * This does not result in variant structure sizes because - * MUTEX_PROFILING is in opt_global.h - */ - u_int64_t mtx_acqtime; - u_int mtx_namehash; - const char *mtx_filename; - int mtx_lineno; - /* - * Fields relating to measuring contention on mutexes. - * holding must be accessed atomically since it's - * modified by threads that don't yet hold the mutex. - * locking is only modified and referenced while - * the mutex is held. - */ - u_int mtx_contest_holding; - u_int mtx_contest_locking; - struct stack *mtx_stack; -#endif }; #endif /* !_SYS__MUTEX_H_ */ From owner-p4-projects@FreeBSD.ORG Fri Jun 23 22:20:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD99A16A49E; Fri, 23 Jun 2006 22:20:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 811C116A492 for ; Fri, 23 Jun 2006 22:20:33 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FCC843D45 for ; Fri, 23 Jun 2006 22:20:33 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NMKXc5064300 for ; Fri, 23 Jun 2006 22:20:33 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NMKWZ2064288 for perforce@freebsd.org; Fri, 23 Jun 2006 22:20:32 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 23 Jun 2006 22:20:32 GMT Message-Id: <200606232220.k5NMKWZ2064288@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 99900 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 22:20:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=99900 Change 99900 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/23 22:19:32 rename mtx_profile_* to lock_profile_* Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#13 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#1 add Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#13 (text+ko) ==== @@ -283,7 +283,7 @@ LOCK_LOG_LOCK("LOCK", &m->mtx_object, opts, m->mtx_recurse, file, line); WITNESS_LOCK(&m->mtx_object, opts | LOP_EXCLUSIVE, file, line); - mtx_profile_obtain_lock_success(&m->mtx_object, file, line); + lock_profile_obtain_lock_success(&m->mtx_object, file, line); } void @@ -299,7 +299,7 @@ line); mtx_assert(m, MA_OWNED); - mtx_profile_release_lock(&m->mtx_object); + lock_profile_release_lock(&m->mtx_object); _rel_sleep_lock(m, curthread, opts, file, line); } @@ -402,7 +402,7 @@ m->mtx_object.lo_name, (void *)m->mtx_lock, file, line); while (!_obtain_lock(m, tid)) { - mtx_profile_obtain_lock_failed(&m->mtx_object, &contested); + lock_profile_obtain_lock_failed(&m->mtx_object, &contested); turnstile_lock(&m->mtx_object); v = m->mtx_lock; @@ -790,7 +790,7 @@ m->mtx_lock = MTX_UNOWNED; m->mtx_recurse = 0; - mtx_profile_init(&m->mtx_object, name); + lock_profile_init(&m->mtx_object, name); lock_init(&m->mtx_object, class, name, type, flags); } @@ -818,7 +818,7 @@ __LINE__); } - mtx_profile_destroy(&m->mtx_object); + lock_profile_destroy(&m->mtx_object); lock_destroy(&m->mtx_object); } From owner-p4-projects@FreeBSD.ORG Fri Jun 23 22:53:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B17C316A492; Fri, 23 Jun 2006 22:53:19 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8D34616A47C for ; Fri, 23 Jun 2006 22:53:19 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4369043D45 for ; Fri, 23 Jun 2006 22:53:19 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NMrJSS065840 for ; Fri, 23 Jun 2006 22:53:19 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NMrJOa065837 for perforce@freebsd.org; Fri, 23 Jun 2006 22:53:19 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 23 Jun 2006 22:53:19 GMT Message-Id: <200606232253.k5NMrJOa065837@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 99905 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 22:53:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=99905 Change 99905 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/23 22:52:43 add profiling to sx locks Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sx.c#3 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_sx.c#3 (text+ko) ==== @@ -47,6 +47,7 @@ #include #include #include +#include #include @@ -85,6 +86,8 @@ cv_init(&sx->sx_excl_cv, description); sx->sx_excl_wcnt = 0; sx->sx_xholder = NULL; + + lock_profile_init(&sx->sx_object, description); lock_init(&sx->sx_object, &lock_class_sx, description, NULL, LO_WITNESS | LO_RECURSABLE | LO_SLEEPABLE | LO_UPGRADABLE); } @@ -101,6 +104,7 @@ cv_destroy(&sx->sx_shrd_cv); cv_destroy(&sx->sx_excl_cv); + lock_profile_destroy(&sx->sx_object); lock_destroy(&sx->sx_object); } @@ -108,6 +112,8 @@ _sx_slock(struct sx *sx, const char *file, int line) { + int contested; + mtx_lock(sx->sx_lock); KASSERT(sx->sx_xholder != curthread, ("%s (%s): slock while xlock is held @ %s:%d\n", __func__, @@ -119,13 +125,18 @@ */ while (sx->sx_cnt < 0) { sx->sx_shrd_wcnt++; + lock_profile_obtain_lock_failed(&sx->sx_object, &contested); cv_wait(&sx->sx_shrd_cv, sx->sx_lock); sx->sx_shrd_wcnt--; } + /* Acquire a shared lock. */ sx->sx_cnt++; + if (sx->sx_cnt == 1) + lock_profile_obtain_lock_success(&sx->sx_object, file, line); + LOCK_LOG_LOCK("SLOCK", &sx->sx_object, 0, 0, file, line); WITNESS_LOCK(&sx->sx_object, 0, file, line); @@ -153,7 +164,9 @@ void _sx_xlock(struct sx *sx, const char *file, int line) { - + + int contested; + mtx_lock(sx->sx_lock); /* @@ -172,6 +185,7 @@ /* Loop in case we lose the race for lock acquisition. */ while (sx->sx_cnt != 0) { sx->sx_excl_wcnt++; + lock_profile_obtain_lock_failed(&sx->sx_object, &contested); cv_wait(&sx->sx_excl_cv, sx->sx_lock); sx->sx_excl_wcnt--; } @@ -182,6 +196,7 @@ sx->sx_cnt--; sx->sx_xholder = curthread; + lock_profile_obtain_lock_success(&sx->sx_object, file, line); LOCK_LOG_LOCK("XLOCK", &sx->sx_object, 0, 0, file, line); WITNESS_LOCK(&sx->sx_object, LOP_EXCLUSIVE, file, line); @@ -226,6 +241,9 @@ * lockers won't be blocked forever, don't wake shared lock waiters if * there are exclusive lock waiters. */ + if (sx->sx_cnt == 0) + lock_profile_release_lock(&sx->sx_object); + if (sx->sx_excl_wcnt > 0) { if (sx->sx_cnt == 0) cv_signal(&sx->sx_excl_cv); @@ -251,6 +269,7 @@ sx->sx_cnt++; sx->sx_xholder = NULL; + lock_profile_release_lock(&sx->sx_object); /* * Wake up waiters if there are any. Give precedence to slock waiters. */ From owner-p4-projects@FreeBSD.ORG Fri Jun 23 23:57:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 65EB816A47E; Fri, 23 Jun 2006 23:57:42 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3E05A16A47B for ; Fri, 23 Jun 2006 23:57:42 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DEE5943D46 for ; Fri, 23 Jun 2006 23:57:41 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5NNvfdP070268 for ; Fri, 23 Jun 2006 23:57:41 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5NNvf5j070265 for perforce@freebsd.org; Fri, 23 Jun 2006 23:57:41 GMT (envelope-from kmacy@freebsd.org) Date: Fri, 23 Jun 2006 23:57:41 GMT Message-Id: <200606232357.k5NNvf5j070265@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 99908 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 23 Jun 2006 23:57:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=99908 Change 99908 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/23 23:56:41 track wait time for mutex acquisition Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#14 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#17 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/_lock.h#4 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#2 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#8 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#14 (text+ko) ==== @@ -207,20 +207,23 @@ retry_sbufops: sb = sbuf_new(NULL, NULL, MPROF_SBUF_SIZE * multiplier, SBUF_FIXEDLEN); - sbuf_printf(sb, "\n%6s %12s %11s %5s %12s %12s %s\n", - "max", "total", "count", "avg", "cnt_hold", "cnt_lock", "name"); + sbuf_printf(sb, "\n%6s %12s %12s %11s %5s %5s %12s %12s %s\n", + "max", "total", "wait_total", "count", "avg", "wait_avg", "cnt_hold", "cnt_lock", "name"); for (i = 0; i < MPROF_HASH_SIZE; ++i) { if (mprof_buf[i].name == NULL) continue; for (p = mprof_buf[i].file; p != NULL && strncmp(p, "../", 3) == 0; p += 3) /* nothing */ ; - sbuf_printf(sb, "%6ju %12ju %11ju %5ju %12ju %12ju %s:%d (%s)\n", + sbuf_printf(sb, "%6ju %12ju %12ju %11ju %5ju %5ju %12ju %12ju %s:%d (%s)\n", mprof_buf[i].cnt_max / 1000, mprof_buf[i].cnt_tot / 1000, + mprof_buf[i].cnt_wait / 1000, mprof_buf[i].cnt_cur, mprof_buf[i].cnt_cur == 0 ? (uintmax_t)0 : mprof_buf[i].cnt_tot / (mprof_buf[i].cnt_cur * 1000), + mprof_buf[i].cnt_cur == 0 ? (uintmax_t)0 : + mprof_buf[i].cnt_wait / (mprof_buf[i].cnt_cur * 1000), mprof_buf[i].cnt_contest_holding, mprof_buf[i].cnt_contest_locking, p, mprof_buf[i].line, mprof_buf[i].name); ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#17 (text+ko) ==== @@ -41,9 +41,8 @@ struct pmap; #if defined(WITNESS) #define SUN4V_PAD 7 - #elif defined(MUTEX_PROFILING) -#define SUN4V_PAD 4 +#define SUN4V_PAD 3 #else #define SUN4V_PAD 0 #endif ==== //depot/projects/kmacy_sun4v/src/sys/sys/_lock.h#4 (text+ko) ==== @@ -37,6 +37,7 @@ * MUTEX_PROFILING is in opt_global.h */ u_int64_t lpo_acqtime; + u_int64_t lpo_waittime; const char *lpo_filename; u_int lpo_namehash; int lpo_lineno; ==== //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#2 (text+ko) ==== @@ -16,6 +16,7 @@ int line; uintmax_t cnt_max; uintmax_t cnt_tot; + uintmax_t cnt_wait; uintmax_t cnt_cur; uintmax_t cnt_contest_holding; uintmax_t cnt_contest_locking; @@ -45,6 +46,7 @@ struct lock_profile_object *l = &lo->lo_profile_obj; l->lpo_acqtime = 0; + l->lpo_waittime = 0; l->lpo_filename = NULL; l->lpo_lineno = 0; l->lpo_contest_holding = 0; @@ -88,6 +90,8 @@ if (mutex_prof_enable) { *contested = 1; atomic_add_int(&l->lpo_contest_holding, 1); + if (curthread->td_waittime == 0) + curthread->td_waittime = rd(tick); } } @@ -100,6 +104,12 @@ l->lpo_filename = file; l->lpo_lineno = line; l->lpo_acqtime = rd(tick); /* substitute for more general TSC read */ + if (curthread->td_waittime) { + struct thread *td = curthread; + if (l->lpo_acqtime > td->td_waittime) + l->lpo_waittime = l->lpo_acqtime - td->td_waittime; + td->td_waittime = 0; + } } } @@ -110,14 +120,16 @@ if (l->lpo_acqtime) { const char *unknown = "(unknown)"; struct mutex_prof *mpp; - u_int64_t acqtime, now; + u_int64_t acqtime, now, waittime; u_int hash; const char *p = l->lpo_filename; int collision = 0; now = rd(tick); acqtime = l->lpo_acqtime; + waittime = l->lpo_waittime; l->lpo_acqtime = 0; + l->lpo_waittime = 0; if (now <= acqtime) return; if (p == NULL || *p == '\0') @@ -162,6 +174,7 @@ if (now - acqtime > mpp->cnt_max) mpp->cnt_max = now - acqtime; mpp->cnt_tot += now - acqtime; + mpp->cnt_wait += waittime; mpp->cnt_cur++; /* * There's a small race, really we should cmpxchg ==== //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#8 (text+ko) ==== @@ -256,6 +256,9 @@ struct mdthread td_md; /* (k) Any machine-dependent fields. */ struct td_sched *td_sched; /* (*) Scheduler-specific data. */ struct kaudit_record *td_ar; /* (k) Active audit record, if any. */ +#ifdef MUTEX_PROFILING + uint64_t td_waittime; /* time in ns that thread started waiting for lock */ +#endif }; /* From owner-p4-projects@FreeBSD.ORG Sat Jun 24 00:49:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3319A16A492; Sat, 24 Jun 2006 00:49:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D41EA16A47C for ; Sat, 24 Jun 2006 00:49:47 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A10C943D48 for ; Sat, 24 Jun 2006 00:49:47 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O0nliF081231 for ; Sat, 24 Jun 2006 00:49:47 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O0nl2H081228 for perforce@freebsd.org; Sat, 24 Jun 2006 00:49:47 GMT (envelope-from kmacy@freebsd.org) Date: Sat, 24 Jun 2006 00:49:47 GMT Message-Id: <200606240049.k5O0nl2H081228@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 99909 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 00:49:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=99909 Change 99909 by kmacy@kmacy_storage:sun4v_work_sleepq on 2006/06/24 00:49:07 profile spin locks Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#15 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/lock.h#6 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#3 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/mutex.h#7 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#15 (text+ko) ==== @@ -320,6 +320,7 @@ LOCK_LOG_LOCK("LOCK", &m->mtx_object, opts, m->mtx_recurse, file, line); WITNESS_LOCK(&m->mtx_object, opts | LOP_EXCLUSIVE, file, line); + lock_profile_obtain_lock_success(&m->mtx_object, file, line); } void @@ -334,6 +335,7 @@ LOCK_LOG_LOCK("UNLOCK", &m->mtx_object, opts, m->mtx_recurse, file, line); mtx_assert(m, MA_OWNED); + lock_profile_release_lock(&m->mtx_object); _rel_spin_lock(m); } @@ -356,14 +358,15 @@ m->mtx_recurse++; atomic_set_ptr(&m->mtx_lock, MTX_RECURSED); rval = 1; - } else + } else rval = _obtain_lock(m, (uintptr_t)curthread); LOCK_LOG_TRY("LOCK", &m->mtx_object, opts, rval, file, line); - if (rval) + if (rval) { WITNESS_LOCK(&m->mtx_object, opts | LOP_EXCLUSIVE | LOP_TRYLOCK, file, line); - + lock_profile_obtain_lock_success(&m->mtx_object, file, line); + } return (rval); } @@ -507,7 +510,7 @@ _mtx_lock_spin(struct mtx *m, uintptr_t tid, int opts, const char *file, int line) { - int i = 0; + int contested, i = 0; #ifdef SPIN_PROFILING int profiling = 0; volatile struct thread *td = NULL; @@ -520,9 +523,10 @@ CTR1(KTR_LOCK, "_mtx_lock_spin: %p spinning", m); while (!_obtain_lock(m, tid)) { - + lock_profile_obtain_lock_failed(&m->mtx_object, &contested); /* Give interrupts a chance while we spin. */ spinlock_exit(); + #ifdef SPIN_PROFILING td = mtx_owner(m); #endif @@ -788,6 +792,8 @@ flags |= LO_DUPOK; if (opts & MTX_PROFILE) flags |= LO_PROFILE; + if (opts & MTX_NOPROFILE) + flags |= LO_NOPROFILE; /* Initialize mutex. */ m->mtx_lock = MTX_UNOWNED; ==== //depot/projects/kmacy_sun4v/src/sys/sys/lock.h#6 (text+ko) ==== @@ -70,6 +70,7 @@ #define LO_ENROLLPEND 0x00800000 /* On the pending enroll list. */ #define LO_CLASSMASK 0x0f000000 /* Class index bitmask. */ #define LO_PROFILE 0x10000000 /* Enable per-lock profiling */ +#define LO_NOPROFILE 0x20000000 /* Disable mutex profiling */ /* * Lock classes are statically assigned an index into the global lock_classes ==== //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#3 (text+ko) ==== @@ -80,7 +80,7 @@ /* Initialize the mutex profiling locks */ for (i = 0; i < MPROF_LOCK_SIZE; i++) { mtx_init(&mprof_locks[i], "mprof lock", - NULL, MTX_SPIN|MTX_QUIET); + NULL, MTX_SPIN|MTX_QUIET|MTX_NOPROFILE); } } @@ -117,7 +117,7 @@ { struct lock_profile_object *l = &lo->lo_profile_obj; - if (l->lpo_acqtime) { + if (l->lpo_acqtime && !(lo->lo_flags & LO_NOPROFILE)) { const char *unknown = "(unknown)"; struct mutex_prof *mpp; u_int64_t acqtime, now, waittime; ==== //depot/projects/kmacy_sun4v/src/sys/sys/mutex.h#7 (text+ko) ==== @@ -57,6 +57,7 @@ #define MTX_RECURSE 0x00000004 /* Option: lock allowed to recurse */ #define MTX_NOWITNESS 0x00000008 /* Don't do any witness checking. */ #define MTX_PROFILE 0x00000020 /* Enable spinlock profiling for this spin lock */ +#define MTX_NOPROFILE 0x00000040 /* Disable mutex profiling for this spin lock */ /* * Option flags passed to certain lock/unlock routines, through the use From owner-p4-projects@FreeBSD.ORG Sat Jun 24 00:51:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7DAEC16A494; Sat, 24 Jun 2006 00:51:51 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5087816A47E for ; Sat, 24 Jun 2006 00:51:51 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 070A243D45 for ; Sat, 24 Jun 2006 00:51:51 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O0pooM081374 for ; Sat, 24 Jun 2006 00:51:50 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O0poZZ081371 for perforce@freebsd.org; Sat, 24 Jun 2006 00:51:50 GMT (envelope-from wsalamon@computer.org) Date: Sat, 24 Jun 2006 00:51:50 GMT Message-Id: <200606240051.k5O0poZZ081371@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 99910 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 00:51:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=99910 Change 99910 by wsalamon@vh3 on 2006/06/24 00:51:45 Audit the extattr system calls. Re-gen the system call table and related files with the AUE_ events. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/init_sysent.c#30 edit .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.c#21 edit .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#34 edit .. //depot/projects/trustedbsd/audit3/sys/kern/vfs_syscalls.c#33 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#15 edit .. //depot/projects/trustedbsd/audit3/sys/sys/syscall.h#20 edit .. //depot/projects/trustedbsd/audit3/sys/sys/syscall.mk#21 edit .. //depot/projects/trustedbsd/audit3/sys/sys/sysproto.h#24 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#22 $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 $ * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.5 2006/02/06 01:12:46 rwatson Exp $ */ @@ -384,7 +384,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/trustedbsd/audit3/sys/kern/init_sysent.c#30 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.211 2006/03/23 08:48:37 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.213 2006/03/23 08:46:41 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp */ #include "opt_compat.h" @@ -384,10 +384,10 @@ { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd, AUE_NULL }, /* 352 = __acl_delete_fd */ { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file, AUE_NULL }, /* 353 = __acl_aclcheck_file */ { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd, AUE_NULL }, /* 354 = __acl_aclcheck_fd */ - { SYF_MPSAFE | AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_NULL }, /* 355 = extattrctl */ - { SYF_MPSAFE | AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_NULL }, /* 356 = extattr_set_file */ - { SYF_MPSAFE | AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_NULL }, /* 357 = extattr_get_file */ - { SYF_MPSAFE | AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_NULL }, /* 358 = extattr_delete_file */ + { SYF_MPSAFE | AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_EXTATTRCTL }, /* 355 = extattrctl */ + { SYF_MPSAFE | AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_EXTATTR_SET_FILE }, /* 356 = extattr_set_file */ + { SYF_MPSAFE | AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_EXTATTR_GET_FILE }, /* 357 = extattr_get_file */ + { SYF_MPSAFE | AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_EXTATTR_DELETE_FILE }, /* 358 = extattr_delete_file */ { SYF_MPSAFE | AS(aio_waitcomplete_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 359 = aio_waitcomplete */ { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid, AUE_GETRESUID }, /* 360 = getresuid */ { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid, AUE_GETRESGID }, /* 361 = getresgid */ @@ -400,9 +400,9 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 368 = __cap_set_fd */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 369 = __cap_set_file */ { AS(nosys_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 370 = lkmressys */ - { SYF_MPSAFE | AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_NULL }, /* 371 = extattr_set_fd */ - { SYF_MPSAFE | AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_NULL }, /* 372 = extattr_get_fd */ - { SYF_MPSAFE | AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_NULL }, /* 373 = extattr_delete_fd */ + { SYF_MPSAFE | AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_EXTATTR_SET_FD }, /* 371 = extattr_set_fd */ + { SYF_MPSAFE | AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_EXTATTR_GET_FD }, /* 372 = extattr_get_fd */ + { SYF_MPSAFE | AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_EXTATTR_DELETE_FD }, /* 373 = extattr_delete_fd */ { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid, AUE_NULL }, /* 374 = __setugid */ { AS(nfsclnt_args), (sy_call_t *)nosys, AUE_NULL }, /* 375 = nfsclnt */ { SYF_MPSAFE | AS(eaccess_args), (sy_call_t *)eaccess, AUE_EACCESS }, /* 376 = eaccess */ @@ -441,9 +441,9 @@ { SYF_MPSAFE | AS(__mac_get_pid_args), (sy_call_t *)__mac_get_pid, AUE_NULL }, /* 409 = __mac_get_pid */ { SYF_MPSAFE | AS(__mac_get_link_args), (sy_call_t *)__mac_get_link, AUE_NULL }, /* 410 = __mac_get_link */ { SYF_MPSAFE | AS(__mac_set_link_args), (sy_call_t *)__mac_set_link, AUE_NULL }, /* 411 = __mac_set_link */ - { SYF_MPSAFE | AS(extattr_set_link_args), (sy_call_t *)extattr_set_link, AUE_NULL }, /* 412 = extattr_set_link */ - { SYF_MPSAFE | AS(extattr_get_link_args), (sy_call_t *)extattr_get_link, AUE_NULL }, /* 413 = extattr_get_link */ - { SYF_MPSAFE | AS(extattr_delete_link_args), (sy_call_t *)extattr_delete_link, AUE_NULL }, /* 414 = extattr_delete_link */ + { SYF_MPSAFE | AS(extattr_set_link_args), (sy_call_t *)extattr_set_link, AUE_EXTATTR_SET_LINK }, /* 412 = extattr_set_link */ + { SYF_MPSAFE | AS(extattr_get_link_args), (sy_call_t *)extattr_get_link, AUE_EXTATTR_GET_LINK }, /* 413 = extattr_get_link */ + { SYF_MPSAFE | AS(extattr_delete_link_args), (sy_call_t *)extattr_delete_link, AUE_EXTATTR_DELETE_LINK }, /* 414 = extattr_delete_link */ { SYF_MPSAFE | AS(__mac_execve_args), (sy_call_t *)__mac_execve, AUE_NULL }, /* 415 = __mac_execve */ { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction, AUE_SIGACTION }, /* 416 = sigaction */ { SYF_MPSAFE | AS(sigreturn_args), (sy_call_t *)sigreturn, AUE_SIGRETURN }, /* 417 = sigreturn */ @@ -466,9 +466,9 @@ { SYF_MPSAFE | AS(_umtx_lock_args), (sy_call_t *)_umtx_lock, AUE_NULL }, /* 434 = _umtx_lock */ { SYF_MPSAFE | AS(_umtx_unlock_args), (sy_call_t *)_umtx_unlock, AUE_NULL }, /* 435 = _umtx_unlock */ { SYF_MPSAFE | AS(jail_attach_args), (sy_call_t *)jail_attach, AUE_NULL }, /* 436 = jail_attach */ - { SYF_MPSAFE | AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd, AUE_NULL }, /* 437 = extattr_list_fd */ - { SYF_MPSAFE | AS(extattr_list_file_args), (sy_call_t *)extattr_list_file, AUE_NULL }, /* 438 = extattr_list_file */ - { SYF_MPSAFE | AS(extattr_list_link_args), (sy_call_t *)extattr_list_link, AUE_NULL }, /* 439 = extattr_list_link */ + { SYF_MPSAFE | AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd, AUE_EXTATTR_LIST_FD }, /* 437 = extattr_list_fd */ + { SYF_MPSAFE | AS(extattr_list_file_args), (sy_call_t *)extattr_list_file, AUE_EXTATTR_LIST_FILE }, /* 438 = extattr_list_file */ + { SYF_MPSAFE | AS(extattr_list_link_args), (sy_call_t *)extattr_list_link, AUE_EXTATTR_LIST_LINK }, /* 439 = extattr_list_link */ { SYF_MPSAFE | AS(kse_switchin_args), (sy_call_t *)kse_switchin, AUE_NULL }, /* 440 = kse_switchin */ { SYF_MPSAFE | AS(ksem_timedwait_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 441 = ksem_timedwait */ { SYF_MPSAFE | AS(thr_suspend_args), (sy_call_t *)thr_suspend, AUE_NULL }, /* 442 = thr_suspend */ ==== //depot/projects/trustedbsd/audit3/sys/kern/syscalls.c#21 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/syscalls.c,v 1.195 2006/03/23 08:48:37 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.213 2006/03/23 08:46:41 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp */ const char *syscallnames[] = { ==== //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#34 (text+ko) ==== @@ -610,24 +610,26 @@ acl_type_t type, struct acl *aclp); } 350 AUE_NULL MSTD { int __acl_set_fd(int filedes, \ acl_type_t type, struct acl *aclp); } -351 AUE_NULL MSTD { int __acl_delete_file(const char *path, \ - acl_type_t type); } +351 AUE_NULL MSTD { int __acl_delete_file( \ + const char *path, acl_type_t type); } 352 AUE_NULL MSTD { int __acl_delete_fd(int filedes, \ acl_type_t type); } 353 AUE_NULL MSTD { int __acl_aclcheck_file(const char *path, \ acl_type_t type, struct acl *aclp); } 354 AUE_NULL MSTD { int __acl_aclcheck_fd(int filedes, \ acl_type_t type, struct acl *aclp); } -355 AUE_NULL MSTD { int extattrctl(const char *path, int cmd, \ +355 AUE_EXTATTRCTL MSTD { int extattrctl(const char *path, int cmd, \ const char *filename, int attrnamespace, \ const char *attrname); } -356 AUE_NULL MSTD { int extattr_set_file(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -357 AUE_NULL MSTD { ssize_t extattr_get_file(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -358 AUE_NULL MSTD { int extattr_delete_file(const char *path, \ +356 AUE_EXTATTR_SET_FILE MSTD { int extattr_set_file( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +357 AUE_EXTATTR_GET_FILE MSTD { ssize_t extattr_get_file( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +358 AUE_EXTATTR_DELETE_FILE MSTD { int extattr_delete_file(const char *path, \ int attrnamespace, \ const char *attrname); } 359 AUE_NULL MNOSTD { int aio_waitcomplete( \ @@ -649,13 +651,13 @@ 368 AUE_NULL UNIMPL __cap_set_fd 369 AUE_NULL UNIMPL __cap_set_file 370 AUE_NULL NODEF lkmressys lkmressys nosys_args int -371 AUE_NULL MSTD { int extattr_set_fd(int fd, \ +371 AUE_EXTATTR_SET_FD MSTD { int extattr_set_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -372 AUE_NULL MSTD { ssize_t extattr_get_fd(int fd, \ +372 AUE_EXTATTR_GET_FD MSTD { ssize_t extattr_get_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -373 AUE_NULL MSTD { int extattr_delete_fd(int fd, \ +373 AUE_EXTATTR_DELETE_FD MSTD { int extattr_delete_fd(int fd, \ int attrnamespace, \ const char *attrname); } 374 AUE_NULL MSTD { int __setugid(int flag); } @@ -718,14 +720,16 @@ struct mac *mac_p); } 411 AUE_NULL MSTD { int __mac_set_link(const char *path_p, \ struct mac *mac_p); } -412 AUE_NULL MSTD { int extattr_set_link(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -413 AUE_NULL MSTD { ssize_t extattr_get_link(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -414 AUE_NULL MSTD { int extattr_delete_link(const char *path, \ - int attrnamespace, \ +412 AUE_EXTATTR_SET_LINK MSTD { int extattr_set_link( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +413 AUE_EXTATTR_GET_LINK MSTD { ssize_t extattr_get_link( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +414 AUE_EXTATTR_DELETE_LINK MSTD { int extattr_delete_link( \ + const char *path, int attrnamespace, \ const char *attrname); } 415 AUE_NULL MSTD { int __mac_execve(char *fname, char **argv, \ char **envv, struct mac *mac_p); } @@ -761,13 +765,13 @@ 434 AUE_NULL MSTD { int _umtx_lock(struct umtx *umtx); } 435 AUE_NULL MSTD { int _umtx_unlock(struct umtx *umtx); } 436 AUE_NULL MSTD { int jail_attach(int jid); } -437 AUE_NULL MSTD { ssize_t extattr_list_fd(int fd, \ +437 AUE_EXTATTR_LIST_FD MSTD { ssize_t extattr_list_fd(int fd, \ int attrnamespace, void *data, \ size_t nbytes); } -438 AUE_NULL MSTD { ssize_t extattr_list_file( \ +438 AUE_EXTATTR_LIST_FILE MSTD { ssize_t extattr_list_file( \ const char *path, int attrnamespace, \ void *data, size_t nbytes); } -439 AUE_NULL MSTD { ssize_t extattr_list_link( \ +439 AUE_EXTATTR_LIST_LINK MSTD { ssize_t extattr_list_link( \ const char *path, int attrnamespace, \ void *data, size_t nbytes); } 440 AUE_NULL MSTD { int kse_switchin( \ ==== //depot/projects/trustedbsd/audit3/sys/kern/vfs_syscalls.c#33 (text+ko) ==== @@ -4371,6 +4371,8 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, fnvfslocked, error; + AUDIT_ARG(cmd, uap->cmd); + AUDIT_ARG(value, uap->attrnamespace); /* * uap->attrname is not always defined. We check again later when we * invoke the VFS call so as to pass in NULL there if needed. @@ -4381,6 +4383,7 @@ if (error) return (error); } + AUDIT_ARG(text, attrname); vfslocked = fnvfslocked = 0; /* @@ -4509,9 +4512,12 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(fd, uap->fd); + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); error = getvnode(td->td_proc->p_fd, uap->fd, &fp); if (error) @@ -4541,9 +4547,11 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); NDINIT(&nd, LOOKUP, MPSAFE | FOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); @@ -4576,9 +4584,11 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); NDINIT(&nd, LOOKUP, MPSAFE | NOFOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); @@ -4683,9 +4693,12 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(fd, uap->fd); + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); error = getvnode(td->td_proc->p_fd, uap->fd, &fp); if (error) @@ -4715,9 +4728,11 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); NDINIT(&nd, LOOKUP, MPSAFE | FOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); @@ -4750,9 +4765,11 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); NDINIT(&nd, LOOKUP, MPSAFE | NOFOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); @@ -4827,9 +4844,12 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(fd, uap->fd); + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return (error); + AUDIT_ARG(text, attrname); error = getvnode(td->td_proc->p_fd, uap->fd, &fp); if (error) @@ -4856,9 +4876,11 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return(error); + AUDIT_ARG(text, attrname); NDINIT(&nd, LOOKUP, MPSAFE | FOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); @@ -4887,9 +4909,11 @@ char attrname[EXTATTR_MAXNAMELEN]; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); if (error) return(error); + AUDIT_ARG(text, attrname); NDINIT(&nd, LOOKUP, MPSAFE | NOFOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); @@ -4985,6 +5009,8 @@ struct file *fp; int vfslocked, error; + AUDIT_ARG(fd, uap->fd); + AUDIT_ARG(value, uap->attrnamespace); error = getvnode(td->td_proc->p_fd, uap->fd, &fp); if (error) return (error); @@ -5011,6 +5037,7 @@ struct nameidata nd; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); NDINIT(&nd, LOOKUP, MPSAFE | FOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); error = namei(&nd); @@ -5040,6 +5067,7 @@ struct nameidata nd; int vfslocked, error; + AUDIT_ARG(value, uap->attrnamespace); NDINIT(&nd, LOOKUP, MPSAFE | NOFOLLOW | AUDITVNODE1, UIO_USERSPACE, uap->path, td); error = namei(&nd); ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#15 (text+ko) ==== @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -625,6 +626,54 @@ UPATH1_VNODE1_TOKENS; break; + case AUE_EXTATTR_GET_FILE: + case AUE_EXTATTR_SET_FILE: + case AUE_EXTATTR_LIST_FILE: + case AUE_EXTATTR_DELETE_FILE: + case AUE_EXTATTR_GET_LINK: + case AUE_EXTATTR_SET_LINK: + case AUE_EXTATTR_LIST_LINK: + case AUE_EXTATTR_DELETE_LINK: + case AUE_EXTATTRCTL: + UPATH1_VNODE1_TOKENS; + if (ARG_IS_VALID(kar, ARG_CMD)) { + tok = au_to_arg32(2, "cmd", ar->ar_arg_cmd); + kau_write(rec, tok); + } + /* extattrctl(2) filename parameter is in upath2/vnode2 */ + UPATH2_TOKENS; + VNODE2_TOKENS; + /* fall through */ + case AUE_EXTATTR_GET_FD: + case AUE_EXTATTR_SET_FD: + case AUE_EXTATTR_LIST_FD: + case AUE_EXTATTR_DELETE_FD: + if (ARG_IS_VALID(kar, ARG_FD)) { + tok = au_to_arg32(2, "fd", ar->ar_arg_fd); + kau_write(rec, tok); + } + if (ARG_IS_VALID(kar, ARG_VALUE)) { + switch (ar->ar_arg_value) { + case EXTATTR_NAMESPACE_USER: + tok = au_to_text(EXTATTR_NAMESPACE_USER_STRING); + break; + case EXTATTR_NAMESPACE_SYSTEM: + tok = au_to_text(EXTATTR_NAMESPACE_SYSTEM_STRING); + break; + default: + tok = au_to_arg32(3, "attrnamespace", + ar->ar_arg_value); + break; + } + kau_write(rec, tok); + } + /* attrname is in the text field */ + if (ARG_IS_VALID(kar, ARG_TEXT)) { + tok = au_to_text(ar->ar_arg_text); + kau_write(rec, tok); + } + break; + case AUE_FCHMOD: if (ARG_IS_VALID(kar, ARG_MODE)) { tok = au_to_arg32(2, "new file mode", ==== //depot/projects/trustedbsd/audit3/sys/sys/syscall.h#20 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/syscall.h,v 1.192 2006/03/23 08:48:37 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.213 2006/03/23 08:46:41 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp */ #define SYS_syscall 0 ==== //depot/projects/trustedbsd/audit3/sys/sys/syscall.mk#21 (text+ko) ==== @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. -# $FreeBSD: src/sys/sys/syscall.mk,v 1.147 2006/03/23 08:48:37 davidxu Exp $ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.213 2006/03/23 08:46:41 davidxu Exp +# $FreeBSD$ +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp MIASM = \ syscall.o \ exit.o \ ==== //depot/projects/trustedbsd/audit3/sys/sys/sysproto.h#24 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/sysproto.h,v 1.194 2006/03/28 14:32:38 des Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.213 2006/03/23 08:46:41 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp */ #ifndef _SYS_SYSPROTO_H_ From owner-p4-projects@FreeBSD.ORG Sat Jun 24 01:03:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C774616A49E; Sat, 24 Jun 2006 01:03:05 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A077016A494 for ; Sat, 24 Jun 2006 01:03:05 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7208E43D4C for ; Sat, 24 Jun 2006 01:03:05 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O135ZM083143 for ; Sat, 24 Jun 2006 01:03:05 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O135Lu083140 for perforce@freebsd.org; Sat, 24 Jun 2006 01:03:05 GMT (envelope-from wsalamon@computer.org) Date: Sat, 24 Jun 2006 01:03:05 GMT Message-Id: <200606240103.k5O135Lu083140@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 99911 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 01:03:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=99911 Change 99911 by wsalamon@vh3 on 2006/06/24 01:02:34 Add a test program for exteneded attribute call auditing. Change the GETFH event name in tfileaccess to match current reality. Affected files ... .. //depot/projects/trustedbsd/audit3/tools/regression/audit/test/file/Makefile#2 edit .. //depot/projects/trustedbsd/audit3/tools/regression/audit/test/file/tfileaccess.c#6 edit .. //depot/projects/trustedbsd/audit3/tools/regression/audit/test/file/tfileextattr.c#1 add Differences ... ==== //depot/projects/trustedbsd/audit3/tools/regression/audit/test/file/Makefile#2 (text+ko) ==== @@ -26,7 +26,7 @@ # POSSIBILITY OF SUCH DAMAGE. # -TARGETS=tfilecreate tfilemodify tdir tfileaccess tchroot tmmap tfileioctl tsharedfile +TARGETS=tfilecreate tfilemodify tdir tfileaccess tchroot tmmap tfileioctl tsharedfile tfileextattr CC=cc -g -I../include ../lib/audittest.o -lbsm # Set ASSERT_FLAGS only if not already set ==== //depot/projects/trustedbsd/audit3/tools/regression/audit/test/file/tfileaccess.c#6 (text+ko) ==== @@ -68,10 +68,10 @@ /* Generate a failure AUE_ACCESS record */ access("ANonExisteNtFiLeNaME", F_OK); - /* Generate a success AUE_GETFH record */ + /* Generate a success AUE_NFS_GETFH record */ if (getfh(tempname, &fh)) AUT_PERROR("getfh()"); - aut_assert(AUE_GETFH); + aut_assert(AUE_NFS_GETFH); /* Generate a AUE_STAT audit record */ if ((stat(tempname, &tstat)) < 0) From owner-p4-projects@FreeBSD.ORG Sat Jun 24 02:23:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0DEC116A4A0; Sat, 24 Jun 2006 02:23:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AB33216A49A for ; Sat, 24 Jun 2006 02:23:47 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 610A043D46 for ; Sat, 24 Jun 2006 02:23:47 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O2Nl0J087633 for ; Sat, 24 Jun 2006 02:23:47 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O2NjJF087630 for perforce@freebsd.org; Sat, 24 Jun 2006 02:23:45 GMT (envelope-from kmacy@freebsd.org) Date: Sat, 24 Jun 2006 02:23:45 GMT Message-Id: <200606240223.k5O2NjJF087630@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 99913 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 02:23:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=99913 Change 99913 by kmacy@kmacy_storage:sun4v_work_ifc on 2006/06/24 02:23:21 remove sched_lock Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/dev/md/md.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/fs/procfs/procfs_ctl.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/fs/procfs/procfs_status.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/geom/eli/g_eli.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/geom/geom_kern.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/geom/mirror/g_mirror.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/geom/raid3/g_raid3.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_acct.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_clock.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_cpu.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_idle.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_intr.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_kthread.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_lockf.c#3 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#16 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_poll.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_resource.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_shutdown.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_sig.c#10 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_subr.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_switch.c#9 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_synch.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_thr.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_thread.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/kern_time.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sched_4bsd.c#10 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_prof.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_sleepqueue.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_smp.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_taskqueue.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_trap.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_turnstile.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/subr_witness.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_generic.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/sys_process.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/kern/tty.c#4 edit .. //depot/projects/kmacy_sun4v/src/sys/posix4/ksched.c#7 edit .. //depot/projects/kmacy_sun4v/src/sys/sparc64/sparc64/genassym.c#23 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#18 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/smp.h#5 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/exception.S#63 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/machdep.c#26 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/mp_machdep.c#9 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/pmap.c#65 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/swtch.S#23 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/trap.c#16 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/vm_machdep.c#11 edit .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/wbuf.S#12 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/mutex.h#8 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/pcpu.h#5 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/pmckern.h#4 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/proc.h#9 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/runq.h#5 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/sched.h#5 edit .. //depot/projects/kmacy_sun4v/src/sys/ufs/ffs/ffs_snapshot.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_glue.c#8 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_meter.c#6 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_pageout.c#5 edit .. //depot/projects/kmacy_sun4v/src/sys/vm/vm_zeroidle.c#5 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/dev/md/md.c#4 (text+ko) ==== @@ -647,9 +647,10 @@ int error; sc = arg; - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_prio(curthread, PRIBIO); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); + for (;;) { mtx_lock(&sc->queue_mtx); ==== //depot/projects/kmacy_sun4v/src/sys/fs/procfs/procfs_ctl.c#3 (text+ko) ==== @@ -47,6 +47,7 @@ #include #include #include +#include #include #include @@ -286,9 +287,9 @@ panic("procfs_control"); } - mtx_lock_spin(&sched_lock); + PROC_SLOCK(p); thread_unsuspend(p); /* If it can run, let it do so. */ - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK(p); return (0); } @@ -344,9 +345,10 @@ #endif /* XXXKSE: */ p->p_flag &= ~P_STOPPED_SIG; - mtx_lock_spin(&sched_lock); + PROC_SLOCK(p); thread_unsuspend(p); - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK(p); + } else psignal(p, nm->nm_val); PROC_UNLOCK(p); ==== //depot/projects/kmacy_sun4v/src/sys/fs/procfs/procfs_status.c#3 (text+ko) ==== @@ -52,6 +52,7 @@ #include #include #include +#include #include #include @@ -112,19 +113,17 @@ sbuf_printf(sb, "noflags"); } - mtx_lock_spin(&sched_lock); - if (p->p_flag & P_SA) - wmesg = "-kse- "; - else { - tdfirst = FIRST_THREAD_IN_PROC(p); - if (tdfirst->td_wchan != NULL) { - KASSERT(tdfirst->td_wmesg != NULL, - ("wchan %p has no wmesg", tdfirst->td_wchan)); - wmesg = tdfirst->td_wmesg; - } else - wmesg = "nochan"; - } - mtx_unlock_spin(&sched_lock); + PROC_SLOCK(p); + tdfirst = FIRST_THREAD_IN_PROC(p); + TD_SLOCK(tdfirst); + if (tdfirst->td_wchan != NULL) { + KASSERT(tdfirst->td_wmesg != NULL, + ("wchan %p has no wmesg", tdfirst->td_wchan)); + wmesg = tdfirst->td_wmesg; + } else + wmesg = "nochan"; + TD_SUNLOCK(tdfirst); + PROC_SUNLOCK(p); if (p->p_sflag & PS_INMEM) { struct timeval start, ut, st; ==== //depot/projects/kmacy_sun4v/src/sys/geom/eli/g_eli.c#5 (text+ko) ==== @@ -399,11 +399,12 @@ wr = arg; sc = wr->w_softc; - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_prio(curthread, PRIBIO); - if (sc->sc_crypto == G_ELI_CRYPTO_SW && g_eli_threads == 0) + TD_SUNLOCK(curthread); + if (sc->sc_crypto == G_ELI_CRYPTO_SW && g_eli_threads == 0) sched_bind(curthread, wr->w_number); - mtx_unlock_spin(&sched_lock); + G_ELI_DEBUG(1, "Thread %s started.", curthread->td_proc->p_comm); ==== //depot/projects/kmacy_sun4v/src/sys/geom/geom_kern.c#3 (text+ko) ==== @@ -88,9 +88,9 @@ struct thread *tp = FIRST_THREAD_IN_PROC(p); mtx_assert(&Giant, MA_NOTOWNED); - mtx_lock_spin(&sched_lock); + TD_SLOCK(tp); sched_prio(tp, PRIBIO); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(tp); for(;;) { g_io_schedule_up(tp); } @@ -111,9 +111,9 @@ struct thread *tp = FIRST_THREAD_IN_PROC(p); mtx_assert(&Giant, MA_NOTOWNED); - mtx_lock_spin(&sched_lock); + TD_SLOCK(tp); sched_prio(tp, PRIBIO); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(tp); for(;;) { g_io_schedule_down(tp); } @@ -134,9 +134,9 @@ struct thread *tp = FIRST_THREAD_IN_PROC(p); mtx_assert(&Giant, MA_NOTOWNED); - mtx_lock_spin(&sched_lock); + TD_SLOCK(tp); sched_prio(tp, PRIBIO); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(tp); for(;;) { g_run_events(); tsleep(&g_wait_event, PRIBIO, "-", hz/10); ==== //depot/projects/kmacy_sun4v/src/sys/geom/mirror/g_mirror.c#5 (text+ko) ==== @@ -1719,9 +1719,9 @@ int timeout; sc = arg; - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_prio(curthread, PRIBIO); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); sx_xlock(&sc->sc_lock); for (;;) { ==== //depot/projects/kmacy_sun4v/src/sys/geom/raid3/g_raid3.c#5 (text+ko) ==== @@ -1936,9 +1936,10 @@ int timeout; sc = arg; - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_prio(curthread, PRIBIO); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); + sx_xlock(&sc->sc_lock); for (;;) { ==== //depot/projects/kmacy_sun4v/src/sys/kern/init_main.c#8 (text+ko) ==== @@ -715,6 +715,7 @@ if (error != ENOENT) printf("exec %.*s: error %d\n", (int)(next - path), path, error); + printf("init started\n"); } printf("init: not found in path %s\n", init_path); panic("no init"); @@ -767,9 +768,9 @@ struct thread *td; td = FIRST_THREAD_IN_PROC(initproc); - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); TD_SET_CAN_RUN(td); setrunqueue(td, SRQ_BORING); /* XXXKSE */ - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); } SYSINIT(kickinit, SI_SUB_KTHREAD_INIT, SI_ORDER_FIRST, kick_init, NULL) ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_acct.c#4 (text+ko) ==== @@ -506,9 +506,9 @@ /* This is a low-priority kernel thread. */ pri = PRI_MAX_KERN; - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_prio(curthread, pri); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); /* If another accounting kthread is already running, just die. */ sx_xlock(&acct_sx); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_clock.c#6 (text+ko) ==== @@ -156,7 +156,7 @@ int profprocs; int ticks; int psratio; - +struct mtx prof_lock; /* * Initialize clock frequencies and start both clocks running. */ @@ -173,6 +173,8 @@ */ cpu_initclocks(); + mtx_init(&prof_lock, "profiling lock", NULL, MTX_DEF); + /* * Compute profhz/stathz, and fix profhz if needed. */ @@ -201,7 +203,7 @@ /* * Run current process's virtual and profile time, as needed. */ - mtx_lock_spin_flags(&timer_lock, MTX_QUIET); + PROC_SLOCK(p); pstats = p->p_stats; if (usermode && timevalisset(&pstats->p_timer[ITIMER_VIRTUAL].it_value) && @@ -210,7 +212,7 @@ if (timevalisset(&pstats->p_timer[ITIMER_PROF].it_value) && itimerdecr(&pstats->p_timer[ITIMER_PROF], tick) == 0) sflag = PS_PROFPEND; - mtx_unlock_spin_flags(&timer_lock, MTX_QUIET); + PROC_SUNLOCK(p); #ifdef HWPMC_HOOKS if (PMC_CPU_HAS_SAMPLES(PCPU_GET(cpuid))) PMC_CALL_HOOK_UNLOCKED(curthread, PMC_FN_DO_SAMPLES, NULL); @@ -351,11 +353,11 @@ if (p->p_flag & P_STOPPROF) return; if ((p->p_flag & P_PROFIL) == 0) { - mtx_lock_spin(&sched_lock); p->p_flag |= P_PROFIL; + mtx_lock_spin(&prof_lock); if (++profprocs == 1) cpu_startprofclock(); - mtx_unlock_spin(&sched_lock); + mtx_unlock_spin(&prof_lock); } } @@ -363,8 +365,7 @@ * Stop profiling on a process. */ void -stopprofclock(p) - register struct proc *p; +stopprofclock(struct proc *p) { PROC_LOCK_ASSERT(p, MA_OWNED); @@ -378,11 +379,11 @@ } if ((p->p_flag & P_PROFIL) == 0) return; - mtx_lock_spin(&sched_lock); p->p_flag &= ~P_PROFIL; + mtx_lock_spin(&prof_lock); if (--profprocs == 0) cpu_stopprofclock(); - mtx_unlock_spin(&sched_lock); + mtx_unlock_spin(&prof_lock); } } ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_cpu.c#4 (text+ko) ==== @@ -300,17 +300,15 @@ cpu_id = PCPU_GET(cpuid); pc = cpu_get_pcpu(set->dev); if (cpu_id != pc->pc_cpuid) { - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_bind(curthread, pc->pc_cpuid); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); } CF_DEBUG("setting abs freq %d on %s (cpu %d)\n", set->freq, device_get_nameunit(set->dev), PCPU_GET(cpuid)); error = CPUFREQ_DRV_SET(set->dev, set); if (cpu_id != pc->pc_cpuid) { - mtx_lock_spin(&sched_lock); sched_unbind(curthread); - mtx_unlock_spin(&sched_lock); } if (error) { goto out; @@ -329,17 +327,15 @@ cpu_id = PCPU_GET(cpuid); pc = cpu_get_pcpu(set->dev); if (cpu_id != pc->pc_cpuid) { - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); sched_bind(curthread, pc->pc_cpuid); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); } CF_DEBUG("setting rel freq %d on %s (cpu %d)\n", set->freq, device_get_nameunit(set->dev), PCPU_GET(cpuid)); error = CPUFREQ_DRV_SET(set->dev, set); if (cpu_id != pc->pc_cpuid) { - mtx_lock_spin(&sched_lock); sched_unbind(curthread); - mtx_unlock_spin(&sched_lock); } if (error) { /* XXX Back out any successful setting? */ ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_exit.c#7 (text+ko) ==== @@ -121,9 +121,12 @@ struct plimit *plim; int locked; + p = td->td_proc; mtx_assert(&Giant, MA_NOTOWNED); + PROC_LOCK_ASSERT(p, MA_NOTOWNED); + PROC_SLOCK_ASSERT(p, MA_NOTOWNED); + TD_SLOCK_ASSERT(td, MA_NOTOWNED); - p = td->td_proc; if (p == initproc) { printf("init died (signal %d, exit %d)\n", WTERMSIG(rv), WEXITSTATUS(rv)); @@ -522,7 +525,6 @@ * proc lock. */ wakeup(p->p_pptr); - mtx_lock_spin(&sched_lock); p->p_state = PRS_ZOMBIE; PROC_UNLOCK(p->p_pptr); @@ -533,7 +535,6 @@ * late in the game. */ knlist_destroy(&p->p_klist); - /* * Make sure the scheduler takes this thread out of its tables etc. * This will also release this thread's reference to the ucred. @@ -728,8 +729,8 @@ * sched_lock once we will wait long enough for the * thread to exit in that case. */ - mtx_lock_spin(&sched_lock); - mtx_unlock_spin(&sched_lock); + PROC_SLOCK(p); + PROC_SUNLOCK(p); td->td_retval[0] = p->p_pid; if (status) @@ -830,17 +831,17 @@ atomic_subtract_int(&nprocs, 1); return (0); } - mtx_lock_spin(&sched_lock); + PROC_SLOCK(p); if ((p->p_flag & P_STOPPED_SIG) && (p->p_suspcount == p->p_numthreads) && (p->p_flag & P_WAITED) == 0 && (p->p_flag & P_TRACED || options & WUNTRACED)) { - mtx_unlock_spin(&sched_lock); p->p_flag |= P_WAITED; sx_xunlock(&proctree_lock); td->td_retval[0] = p->p_pid; if (status) *status = W_STOPCODE(p->p_xstat); + PROC_SUNLOCK(p); PROC_UNLOCK(p); PROC_LOCK(q); @@ -849,7 +850,7 @@ return (0); } - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK(p); if (options & WCONTINUED && (p->p_flag & P_CONTINUED)) { sx_xunlock(&proctree_lock); td->td_retval[0] = p->p_pid; ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_fork.c#7 (text+ko) ==== @@ -340,7 +340,7 @@ * If RFHIGHPID is set (used during system boot), do not allocate * low-numbered pids. */ - mtx_lock(&pidalloc_lock); + sx_xlock(&pidalloc_lock); trypid = lastpid + 1; if (flags & RFHIGHPID) { if (trypid < 10) @@ -412,7 +412,7 @@ PCPU_PROC_RUNLOCK(pc); } } - mtx_unlock(&pidalloc_lock); + sx_xunlock(&pidalloc_lock); sx_sunlock(&proctree_lock); /* @@ -514,15 +514,15 @@ p2->p_flag = 0; if (p1->p_flag & P_PROFIL) startprofclock(p2); - mtx_lock_spin(&sched_lock); + PROC_SLOCK_ORDERED(p1, p2); p2->p_sflag = PS_INMEM; /* * Allow the scheduler to adjust the priority of the child and * parent while we hold the sched_lock. */ sched_fork(td, td2); - - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK_ORDERED(p1, p2); + p2->p_ucred = crhold(td->td_ucred); td2->td_ucred = crhold(p2->p_ucred); /* XXXKSE */ #ifdef AUDIT @@ -707,7 +707,7 @@ * Set the child start time and mark the process as being complete. */ microuptime(&p2->p_stats->p_start); - mtx_lock_spin(&sched_lock); + PROC_SLOCK(p2); p2->p_state = PRS_NORMAL; /* @@ -716,9 +716,11 @@ */ if ((flags & RFSTOPPED) == 0) { TD_SET_CAN_RUN(td2); + TD_SLOCK(td2); setrunqueue(td2, SRQ_BORING); + TD_SUNLOCK(td2); } - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK(p2); /* * Now can be swapped. @@ -800,8 +802,6 @@ td->td_oncpu = PCPU_GET(cpuid); KASSERT(p->p_state == PRS_NORMAL, ("executing process is still new")); - sched_lock.mtx_lock = (uintptr_t)td; - mtx_assert(&sched_lock, MA_OWNED | MA_NOTRECURSED); KASSERT(p->p_pcpu != NULL, ("%s has null pcpu", p->p_comm)); CTR4(KTR_PROC, "fork_exit: new thread %p (kse %p, pid %d, %s)", td, td->td_sched, p->p_pid, p->p_comm); @@ -816,9 +816,43 @@ PCPU_SET(deadthread, NULL); thread_stash(td); } + td = curthread; - mtx_unlock_spin(&sched_lock); + + PCPU_GET(preempted_thread)->td_running = 0; + td->td_running = 1; + + td->td_spin_mtx.mtx_lock = (uintptr_t)td; + TD_SLOCK_ASSERT(td, MA_OWNED | MA_NOTRECURSED); + TD_SUNLOCK(td); + + + if (PCPU_GET(preempted_thread) != curthread) { + + if (curthread->td_critnest != 1) { + DELAY(1000000*curcpu); + printf("prev thread=%d curthread=%d\n", PCPU_GET(preempted_thread)->td_tid, + curthread->td_tid); + panic("fork_exit: critnest should be 1 is %d", curthread->td_critnest); + } + PCPU_GET(preempted_thread)->td_spin_mtx.mtx_lock = (uintptr_t)td; + TD_SLOCK_ASSERT(PCPU_GET(preempted_thread), MA_OWNED | MA_NOTRECURSED); + TD_SUNLOCK(PCPU_GET(preempted_thread)); + } + if (curthread->td_critnest != 0) { + DELAY(1000000*curcpu); + printf("prev thread=%d curthread=%d\n", PCPU_GET(preempted_thread)->td_tid, + curthread->td_tid); + panic("fork_exit: critnest should be 0 is %d", curthread->td_critnest); + } + + if (rdpr(pil) != 0) + panic("pil in fork_exit not 0 - %ld", rdpr(pil)); + if (curthread->td_md.md_spinlock_count != 0) + panic("fork_exit: spinlock_count not 0"); + if (curthread->td_critnest != 0) + panic("fork_exit: critnest should be 0 is %d", curthread->td_critnest); /* * cpu_set_fork_handler intercepts this function call to * have this call a non-return function to stay in kernel mode. ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_idle.c#7 (text+ko) ==== @@ -36,6 +36,7 @@ #include #include #include +#include #ifdef SMP #include #endif @@ -75,13 +76,13 @@ PROC_LOCK(p); p->p_flag |= P_NOLOAD; - mtx_lock_spin(&sched_lock); td = FIRST_THREAD_IN_PROC(p); + TD_SLOCK(td); TD_SET_CAN_RUN(td); atomic_set_int(&td->td_flags, TDF_IDLETD); sched_class(td, PRI_IDLE); sched_prio(td, PRI_MAX_IDLE); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); PROC_UNLOCK(p); #ifdef SMP } @@ -109,14 +110,12 @@ while (sched_runnable() == 0 && (i++%10 != 0)) cpu_idle(); - - #ifdef SMP atomic_clear_int(&idle_cpus_mask, mycpu); #endif - mtx_lock_spin(&sched_lock); + TD_SLOCK(curthread); mi_switch(SW_VOL, NULL); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(curthread); #ifdef SMP atomic_set_int(&idle_cpus_mask, mycpu); #endif ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_intr.c#6 (text+ko) ==== @@ -162,9 +162,9 @@ /* Update name and priority. */ strlcpy(td->td_proc->p_comm, ie->ie_fullname, sizeof(td->td_proc->p_comm)); - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); sched_prio(td, pri); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); } /* @@ -295,12 +295,12 @@ if (error) panic("kthread_create() failed with %d", error); td = FIRST_THREAD_IN_PROC(p); /* XXXKSE */ - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); td->td_pri_class = PRI_ITHD; TD_SET_IWAIT(td); - mtx_unlock_spin(&sched_lock); td->td_pflags |= TDP_ITHREAD; ithd->it_thread = td; + TD_SUNLOCK(td); CTR2(KTR_INTR, "%s: created %s", __func__, name); return (ithd); } @@ -312,13 +312,13 @@ CTR2(KTR_INTR, "%s: killing %s", __func__, ithread->it_event->ie_name); td = ithread->it_thread; - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); ithread->it_flags |= IT_DEAD; if (TD_AWAITING_INTR(td)) { TD_CLR_IWAIT(td); setrunqueue(td, SRQ_INTR); } - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); } int @@ -445,7 +445,8 @@ * so we have to remove the handler here rather than letting the * thread do it. */ - mtx_lock_spin(&sched_lock); + + TD_SLOCK(ie->ie_thread->it_thread); if (!TD_AWAITING_INTR(ie->ie_thread->it_thread) && !cold) { handler->ih_flags |= IH_DEAD; @@ -457,7 +458,7 @@ ie->ie_thread->it_need = 1; } else TAILQ_REMOVE(&ie->ie_handlers, handler, ih_next); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(ie->ie_thread->it_thread); while (handler->ih_flags & IH_DEAD) msleep(handler, &ie->ie_lock, 0, "iev_rmh", 0); intr_event_update(ie); @@ -522,11 +523,11 @@ /* * Set it_need to tell the thread to keep running if it is already - * running. Then, grab sched_lock and see if we actually need to + * running. Then, grab process spin lock and see if we actually need to * put this thread on the runqueue. */ it->it_need = 1; - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); if (TD_AWAITING_INTR(td)) { CTR3(KTR_INTR, "%s: schedule pid %d (%s)", __func__, p->p_pid, p->p_comm); @@ -536,7 +537,7 @@ CTR5(KTR_INTR, "%s: pid %d (%s): it_need %d, state %d", __func__, p->p_pid, p->p_comm, it->it_need, td->td_state); } - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); return (0); } @@ -707,7 +708,7 @@ struct proc *p; td = curthread; - p = td->td_proc; + p = curproc; ithd = (struct intr_thread *)arg; KASSERT(ithd->it_thread == td, ("%s: ithread and proc linkage out of sync", __func__)); @@ -752,13 +753,13 @@ * lock. This may take a while and it_need may get * set again, so we have to check it again. */ - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); if (!ithd->it_need && !(ithd->it_flags & IT_DEAD)) { TD_SET_IWAIT(td); ie->ie_count = 0; mi_switch(SW_VOL, NULL); } - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); } } ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_kthread.c#3 (text+ko) ==== @@ -38,6 +38,7 @@ #include #include #include +#include #include @@ -107,15 +108,14 @@ /* call the processes' main()... */ td = FIRST_THREAD_IN_PROC(p2); + TD_SLOCK(td); cpu_set_fork_handler(td, func, arg); TD_SET_CAN_RUN(td); - /* Delay putting it on the run queue until now. */ if (!(flags & RFSTOPPED)) { - mtx_lock_spin(&sched_lock); setrunqueue(td, SRQ_BORING); - mtx_unlock_spin(&sched_lock); } + TD_SUNLOCK(td); return 0; } ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_lockf.c#3 (text+ko) ==== @@ -274,7 +274,7 @@ /* The block is waiting on something */ /* XXXKSE this is not complete under threads */ wproc = (struct proc *)block->lf_id; - mtx_lock_spin(&sched_lock); + PROC_SLOCK(wproc); FOREACH_THREAD_IN_PROC(wproc, td) { while (td->td_wchan && (td->td_wmesg == lockstr) && @@ -286,13 +286,13 @@ break; wproc = (struct proc *)waitblock->lf_id; if (wproc == (struct proc *)lock->lf_id) { - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK(wproc); free(lock, M_LOCKF); return (EDEADLK); } } } - mtx_unlock_spin(&sched_lock); + PROC_SUNLOCK(wproc); } /* * For flock type locks, we must first remove ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_mutex.c#16 (text+ko) ==== @@ -114,9 +114,7 @@ /* * System-wide mutexes */ -struct mtx sched_lock; struct mtx Giant; -struct mtx timer_lock; #ifdef SPIN_PROFILING SYSCTL_NODE(_debug, OID_AUTO, spinlock, CTLFLAG_RD, NULL, "spinlock debugging"); @@ -500,6 +498,51 @@ } #ifdef SMP +int +_mtx_trylock_spin(struct mtx *m, uintptr_t tid, const char *file, int line) +{ + uintptr_t _tid = (uintptr_t)(tid); + int v; + KASSERT(LOCK_CLASS(&m->mtx_object) == &lock_class_mtx_spin, + ("mtx_lock_spin() of sleep mutex %s @ %s:%d", + m->mtx_object.lo_name, file, line)); + spinlock_enter(); + v = _obtain_lock((m), _tid); + if (!v) + spinlock_exit(); + else { + WITNESS_LOCK(&m->mtx_object, LOP_EXCLUSIVE, file, line); + } + + return v; +} + +int +_mtx_trylockn_spin(struct mtx *m, uintptr_t tid, int n, const char *file, int line) +{ + uintptr_t _tid = (uintptr_t)(tid); + int i, v; + + KASSERT(LOCK_CLASS(&m->mtx_object) == &lock_class_mtx_spin, + ("mtx_lock_spin() of sleep mutex %s @ %s:%d", + m->mtx_object.lo_name, file, line)); + + for (i = 0, v = 0; i < n; i++) { + spinlock_enter(); + v = _obtain_lock((m), _tid); + if (!v) + spinlock_exit(); + else { + WITNESS_LOCK(&m->mtx_object, LOP_EXCLUSIVE, file, line); + break; + } + } + return v; +} + + + + /* * _mtx_lock_spin: the tougher part of acquiring an MTX_SPIN lock. * @@ -538,8 +581,10 @@ if (i < 60000000) DELAY(1); else if (!kdb_active && !panicstr) { + struct thread *locktd; printf("spin lock %s held by %p for > 5 seconds\n", m->mtx_object.lo_name, (void *)m->mtx_lock); + locktd = (struct thread *)m->mtx_lock; #ifdef WITNESS witness_display_spinlock(&m->mtx_object, mtx_owner(m)); @@ -630,7 +675,7 @@ #endif turnstile_unpend(ts, TS_EXCLUSIVE_LOCK); -#ifndef PREEMPTION +#if !defined(PREEMPTION) /* * XXX: This is just a hack until preemption is done. However, * once preemption is done we need to either wrap the @@ -641,7 +686,7 @@ td = curthread; if (td->td_critnest > 0 || td1->td_priority >= td->td_priority) return; - mtx_lock_spin(&sched_lock); + TD_SLOCK(td1); if (!TD_IS_RUNNING(td1)) { #ifdef notyet if (td->td_ithd != NULL) { @@ -666,7 +711,7 @@ CTR2(KTR_LOCK, "_mtx_unlock_sleep: %p resuming lock=%p", m, (void *)m->mtx_lock); } - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td1); #endif return; @@ -846,13 +891,15 @@ mutex_profile_init(); printf("called profile init\n"); + bzero(&thread0.td_spin_mtx, sizeof(struct mtx)); + bzero(&proc0.p_spin_mtx, sizeof(struct mtx)); /* * Initialize mutexes. */ mtx_init(&Giant, "Giant", NULL, MTX_DEF | MTX_RECURSE); - mtx_init(&sched_lock, "sched lock", NULL, MTX_SPIN | MTX_RECURSE); - mtx_init(&timer_lock, "timer lock", NULL, MTX_SPIN); mtx_init(&proc0.p_mtx, "process lock", NULL, MTX_DEF | MTX_DUPOK); + mtx_init(&proc0.p_spin_mtx, "process spin lock", NULL, MTX_SPIN | MTX_DUPOK); + mtx_init(&thread0.td_spin_mtx, "thread spin lock", NULL, MTX_SPIN | MTX_DUPOK); mtx_init(&devmtx, "cdev", NULL, MTX_DEF); mtx_lock(&Giant); } ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_poll.c#5 (text+ko) ==== @@ -577,20 +577,20 @@ { struct thread *td = curthread; struct rtprio rtp; + struct proc *p = curproc; + rtp.prio = RTP_PRIO_MAX; /* lowest priority */ rtp.type = RTP_PRIO_IDLE; - mtx_lock_spin(&sched_lock); + TD_SLOCK(td); rtp_to_pri(&rtp, td); - mtx_unlock_spin(&sched_lock); + TD_SUNLOCK(td); for (;;) { if (poll_in_idle_loop && poll_handlers > 0) { idlepoll_sleeping = 0; ether_poll(poll_each_burst); - mtx_lock_spin(&sched_lock); mi_switch(SW_VOL, NULL); - mtx_unlock_spin(&sched_lock); } else { idlepoll_sleeping = 1; tsleep(&idlepoll_sleeping, 0, "pollid", hz * 3); ==== //depot/projects/kmacy_sun4v/src/sys/kern/kern_proc.c#6 (text+ko) ==== @@ -94,7 +94,7 @@ struct sx allpcpu_lock; struct sx proctree_lock; struct mtx pidhash_lock; -struct mtx pidalloc_lock; +struct sx pidalloc_lock; struct mtx ppeers_lock; uma_zone_t proc_zone; uma_zone_t ithread_zone; @@ -115,7 +115,7 @@ sx_init(&proctree_lock, "proctree"); sx_init(&pcpu_find(0)->pc_allproc_lock, "cpu allproc"); mtx_init(&ppeers_lock, "p_peers", NULL, MTX_DEF); - mtx_init(&pidalloc_lock, "pidalloc", NULL, MTX_DEF); + sx_init(&pidalloc_lock, "pidalloc"); mtx_init(&pidhash_lock, "pidhash", NULL, MTX_DEF); pidhashtbl = hashinit(maxproc / 4, M_PROC, &pidhash); zpidhashtbl = hashinit(maxproc / 4, M_PROC, &zpidhash); @@ -181,7 +181,9 @@ p->p_sched = (struct p_sched *)&p[1]; td = thread_alloc(); bzero(&p->p_mtx, sizeof(struct mtx)); + bzero(&p->p_spin_mtx, sizeof(struct mtx)); mtx_init(&p->p_mtx, "process lock", NULL, MTX_DEF | MTX_DUPOK); + mtx_init(&p->p_spin_mtx, "process spin lock", NULL, MTX_SPIN | MTX_DUPOK); p->p_stats = pstats_alloc(); proc_linkup(p, td); return (0); @@ -663,7 +665,7 @@ kp->ki_sigcatch = ps->ps_sigcatch; mtx_unlock(&ps->ps_mtx); } - mtx_lock_spin(&sched_lock); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jun 24 07:26:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1007116A49A; Sat, 24 Jun 2006 07:26:04 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C843416A492 for ; Sat, 24 Jun 2006 07:26:03 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3EFD943D49 for ; Sat, 24 Jun 2006 07:26:03 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O7Q3GO014340 for ; Sat, 24 Jun 2006 07:26:03 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O7Q3Mv014331 for perforce@freebsd.org; Sat, 24 Jun 2006 07:26:03 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 07:26:03 GMT Message-Id: <200606240726.k5O7Q3Mv014331@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99915 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 07:26:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=99915 Change 99915 by als@als_head on 2006/06/24 07:25:22 GENERIC kernel config with enabled option JAIL. Affected files ... .. //depot/projects/jail2/sys/i386/conf/JAIL#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Jun 24 07:39:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C88A16A494; Sat, 24 Jun 2006 07:39:21 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2F88D16A4B3 for ; Sat, 24 Jun 2006 07:39:21 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4D95143D49 for ; Sat, 24 Jun 2006 07:39:20 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O7dKPV014901 for ; Sat, 24 Jun 2006 07:39:20 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O7dJqc014898 for perforce@freebsd.org; Sat, 24 Jun 2006 07:39:19 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 07:39:19 GMT Message-Id: <200606240739.k5O7dJqc014898@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99916 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 07:39:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=99916 Change 99916 by als@als_head on 2006/06/24 07:38:50 Update copyright. Affected files ... .. //depot/projects/jail2/sys/kern/kern_jail2_resource.c#2 edit Differences ... ==== //depot/projects/jail2/sys/kern/kern_jail2_resource.c#2 (text+ko) ==== @@ -1,160 +1,5 @@ /* - * Copyright (c) 2004 Alex Lyashkov - * 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. - */ - -#include -__FBSDID("$FreeBSD$"); - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include - -#define jprint(a...) -/* printf(a) */ - -static int -jail_setproclimit(struct prison *_pr, void *_data) -{ - int error; - int limit; - - error = copyin(_data, &limit, sizeof(limit)); - if (error) - return (error); - - sx_xlock(&allproc_lock); - _pr->pr_tasks.jt_limit = limit; - sx_xunlock(&allproc_lock); - - if (limit != 0) - JAIL_SET_PROCLIM(_pr); - else - JAIL_CLEAR_PROCLIM(_pr); - - return (0); -} - -static int -jail_setresource_int(uint32_t *res, void *_data) -{ - int error; - int limit; - - error = copyin(_data, &limit, sizeof(limit)); - if (error) - return (error); - - atomic_store_rel_int(res, limit); - - return (0); -} - - -int jail2_resource(struct thread *_td, struct jail_2 *_j) -{ - struct prison *pr; - int ret = 0; - - mtx_lock(&allprison_mtx); - pr = prison_find(_j->ctx_id); - mtx_unlock(&allprison_mtx); - - jprint("jail2_resouce %d ctx: %d pr: %p\n", JAIL2_CMD(_j->cmd), _j->ctx_id, pr ); - if (pr == NULL) { - printf("Prison not found for command %x\n", _j->cmd); - return (ESRCH); - } - - switch(JAIL2_CMD(_j->cmd)) { - case J_SETVROOT: - if (JAIL_VROOT(pr) != NULL) { - if (JAIL_NPROCS(pr) != 0) { - ret = EPERM; - break; - } - jail_destroyvroot(pr); - } - ret = jail_setvroot(pr, _td, _j->data); - break; - case J_SETPROCLIMIT: - ret = jail_setproclimit(pr, _j->data); - break; - case J_SETUSEDSPACE: - ret = jail_setresource_int(&pr->pr_disk.pr_du, _j->data); - break; - case J_SETDISKQUOTE: - ret = jail_setresource_int(&pr->pr_disk.pr_l_du, _j->data); - break; - case J_INODEUSAGE: - ret = jail_setresource_int(&pr->pr_disk.pr_inodes, _j->data); - break; - case J_INODELIMIT: - ret = jail_setresource_int(&pr->pr_disk.pr_l_inodes, _j->data); - break; - case J_MSQLIMIT: - ret = jail_setresource_int(&pr->pr_ipc.msq_limit, _j->data); - break; - case J_SEMLIMIT: - ret = jail_setresource_int(&pr->pr_ipc.sem_limit, _j->data); - break; - case J_SHMLIMIT: - ret = jail_setresource_int(&pr->pr_ipc.shm_limit, _j->data); - break; - case J_SETFILELIMIT: - ret = jail_setresource_int(&pr->pr_limits.fdlimit, _j->data); - break; - case J_SETMEMLIMIT: - case J_SETRSSLIMIT: - case J_SETTCPSOCKETSLIMIT: - case J_SETUDPSOCKETSLIMIT: - case J_CPUHARDLIMIT: - case J_CPUSOFTLIMIT: - default: - ret = EOPNOTSUPP; - break; - } - - /* remove refs from find/create */ - prison_free (pr); - jprint("jail2_resouce return %d\n", ret); - return (ret); - -} -/* - * Copyright (c) 2004 Alex Lyashkov + * Copyright (c) 2004-2006 Alex Lyashkov * All rights reserved. * * Redistribution and use in source and binary forms, with or without From owner-p4-projects@FreeBSD.ORG Sat Jun 24 07:42:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B2B516A4C2; Sat, 24 Jun 2006 07:42:25 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3D7DF16A4A0 for ; Sat, 24 Jun 2006 07:42:25 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF74D43D49 for ; Sat, 24 Jun 2006 07:42:24 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O7gOx9015174 for ; Sat, 24 Jun 2006 07:42:24 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O7gOMp015171 for perforce@freebsd.org; Sat, 24 Jun 2006 07:42:24 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 07:42:24 GMT Message-Id: <200606240742.k5O7gOMp015171@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99917 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 07:42:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=99917 Change 99917 by als@als_head on 2006/06/24 07:41:46 Update copyright Affected files ... .. //depot/projects/jail2/sys/kern/kern_jail2_network.c#2 edit Differences ... ==== //depot/projects/jail2/sys/kern/kern_jail2_network.c#2 (text+ko) ==== @@ -1,127 +1,5 @@ /* - * Copyright (c) 2004 Alex Lyashkov - * 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. - */ - -#include -__FBSDID("$FreeBSD$"); - -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#define jprint(a...) -/* printf(a) */ - -static int -jail_addradd_ipv4(struct prison *_jail, void *_udata) -{ - struct jail2_ipv4addr ja; - int error; - - error = copyin(_udata, &ja, sizeof(ja)); - if (error) - return (error); - - mtx_lock(&_jail->pr_mtx); - _jail->pr_network.pr_ip = htonl(ja.addr); - mtx_unlock(&_jail->pr_mtx); - - return (0); -} - -static int -jail_addrdel_ipv4(struct prison *_jail, void *_udata) -{ - struct jail2_ipv4addr ja; - int error; - - error = copyin(_udata, &ja, sizeof(ja)); - if (error) - return (error); - - mtx_lock(&_jail->pr_mtx); - error = _jail->pr_network.pr_ip == ja.addr ? 0 : ESRCH; - if( error == 0 ) - _jail->pr_network.pr_ip = 0; - mtx_unlock(&_jail->pr_mtx); - - return (0); -} - - -int jail2_network(struct thread *td, struct jail_2 *j) -{ - struct prison *pr; - int ret = 0; - - mtx_lock(&allprison_mtx); - pr = prison_find(j->ctx_id); - mtx_unlock(&allprison_mtx); - - jprint("jail2_network %d ctx: %d pr: %p\n", JAIL2_CMD(j->cmd), j->ctx_id, pr ); - if(pr == NULL) { - printf("Prison not found for command %x\n", j->cmd); - return (ESRCH); - } - - switch(JAIL2_CMD(j->cmd)) { - case J_VNETDEV_CREATE: - case J_VNETDEV_REMOVE: - case J_VNETDEV_ATTACH: - case J_VNETDEV_DETACH: - case J_VNETDEV_SET_TXSPEED: - case J_VNETDEV_SET_FLAGS: - case J_VNETDEV_UNSET_FLAGS: - ret = EOPNOTSUPP; - break; - /* IPV4 control */ - case J_ADDMASKIPV4: - ret = jail_addradd_ipv4(pr,j->data); - break; - case J_RMIPV4: - ret = jail_addrdel_ipv4(pr,j->data); - break; - default: - ret = EOPNOTSUPP; - break; - } - - /* remove refs from find/create */ - prison_free(pr); - jprint("jail2_network return %d\n", ret); - return (ret); -} -/* - * Copyright (c) 2004 Alex Lyashkov + * Copyright (c) 2004-2006 Alex Lyashkov * All rights reserved. * * Redistribution and use in source and binary forms, with or without From owner-p4-projects@FreeBSD.ORG Sat Jun 24 08:06:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 55B3C16A4C4; Sat, 24 Jun 2006 08:06:56 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 316C516A4B3 for ; Sat, 24 Jun 2006 08:06:56 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC70243D45 for ; Sat, 24 Jun 2006 08:06:55 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O86tZN017499 for ; Sat, 24 Jun 2006 08:06:55 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O86tIU017496 for perforce@freebsd.org; Sat, 24 Jun 2006 08:06:55 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 08:06:55 GMT Message-Id: <200606240806.k5O86tIU017496@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99918 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 08:06:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=99918 Change 99918 by als@als_head on 2006/06/24 08:06:49 J_USEDSPACE & J_SETDISKQUTA now must be handled into jail2_disk.c Affected files ... .. //depot/projects/jail2/sys/kern/kern_jail2_resource.c#3 edit Differences ... ==== //depot/projects/jail2/sys/kern/kern_jail2_resource.c#3 (text+ko) ==== @@ -112,12 +112,6 @@ case J_SETPROCLIMIT: ret = jail_setproclimit(pr, _j->data); break; - case J_SETUSEDSPACE: - ret = jail_setresource_int(&pr->pr_disk.pr_du, _j->data); - break; - case J_SETDISKQUOTE: - ret = jail_setresource_int(&pr->pr_disk.pr_l_du, _j->data); - break; case J_INODEUSAGE: ret = jail_setresource_int(&pr->pr_disk.pr_inodes, _j->data); break; From owner-p4-projects@FreeBSD.ORG Sat Jun 24 08:33:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D76B916A506; Sat, 24 Jun 2006 08:33:29 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8567A16A4E6 for ; Sat, 24 Jun 2006 08:33:29 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 45C4043D48 for ; Sat, 24 Jun 2006 08:33:29 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5O8XTVn018792 for ; Sat, 24 Jun 2006 08:33:29 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5O8XS0i018788 for perforce@freebsd.org; Sat, 24 Jun 2006 08:33:28 GMT (envelope-from clem1@FreeBSD.org) Date: Sat, 24 Jun 2006 08:33:28 GMT Message-Id: <200606240833.k5O8XS0i018788@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 99920 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 08:33:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=99920 Change 99920 by clem1@clem1_ipv6vulns on 2006/06/24 08:32:58 libnet_get_ipaddr6() libnet implementation. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet.h.in#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#3 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.in#3 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_resolve.c#3 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet.h.in#2 (text+ko) ==== @@ -81,6 +81,7 @@ #include #include #include +#include #else /* __WIN32__ */ #if (__CYGWIN__) #include ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#3 (text+ko) ==== @@ -1789,7 +1789,7 @@ * Returns the IP address for the device libnet was initialized with. If * libnet was initialized without a device (in raw socket mode) the function * will attempt to find one. If the function fails and returns -1 a call to - * libnet_geterrror() will tell you why. + * libnet_geterror() will tell you why. * @param l pointer to a libnet context * @return a big endian IP address suitable for use in a libnet_build function or -1 */ @@ -1798,9 +1798,12 @@ libnet_get_ipaddr4(libnet_t *l); /** - * This function is not yet implemented under IPv6. + * Returns the IPv6 address for the device libnet was initialized with. If the + * function fails and returns in6addr_error (struct libnet_in6_addr) a call to + * libnet_geterror() will tell you why. * @param l pointer to a libnet context - * @return well, nothing yet + * @return a big endian IP address (struct libnet_in6_addr) suitable for use in + * a libnet_build function. */ struct libnet_in6_addr libnet_get_ipaddr6(libnet_t *l); ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.in#3 (text+ko) ==== @@ -187,7 +187,8 @@ libnet_build_cdp.$(OBJEXT) libnet_build_data.$(OBJEXT) \ libnet_build_dhcp.$(OBJEXT) libnet_build_dns.$(OBJEXT) \ libnet_build_ethernet.$(OBJEXT) libnet_build_fddi.$(OBJEXT) \ - libnet_build_gre.$(OBJEXT) libnet_build_icmp.$(OBJEXT) \ + libnet_build_gre.$(OBJEXT) libnet_build_icmpv6.$(OBJEXT) \ + libnet_build_icmpv4.$(OBJEXT) \ libnet_build_igmp.$(OBJEXT) libnet_build_ip.$(OBJEXT) \ libnet_build_ipsec.$(OBJEXT) libnet_build_isl.$(OBJEXT) \ libnet_build_mpls.$(OBJEXT) libnet_build_ntp.$(OBJEXT) \ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_resolve.c#3 (text+ko) ==== @@ -289,9 +289,59 @@ struct libnet_in6_addr libnet_get_ipaddr6(libnet_t *l) { +#if defined(__WIN32__) snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, "%s(): not yet Implemented\n", __func__); return (in6addr_error); +#else + struct ifaddrs *ifap0, *ifap; + struct libnet_in6_addr v6; + u_int8_t ok = 0; + + if (getifaddrs(&ifap0)) { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): %s\n", __func__, strerror(errno)); + return (in6addr_error); + } + + for (ifap = ifap0; ifap; ifap = ifap->ifa_next) { + if (ifap->ifa_addr == NULL) + { + continue; + } + + if (ifap->ifa_addr->sa_family != AF_INET6) + { + continue; + } + + if (strncmp(l->device, ifap->ifa_name, IFNAMSIZ)) + { + continue; + } + else + { + if(IN6_IS_ADDR_LINKLOCAL(&((struct sockaddr_in6 *) ifap->ifa_addr)->sin6_addr) + || IN6_IS_ADDR_SITELOCAL(&((struct sockaddr_in6 *) ifap->ifa_addr)->sin6_addr)) + { + continue; + } + memcpy(&v6, &((struct sockaddr_in6 *) ifap->ifa_addr)->sin6_addr, 16); + ok++; + break; + } + } + + freeifaddrs(ifap0); + + if (!ok) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): could not find ipv6 address for %s\n", __func__, l->device); + return (in6addr_error); + } + return (v6); +#endif /* !WIN32 */ } #if !defined(__WIN32__) From owner-p4-projects@FreeBSD.ORG Sat Jun 24 11:35:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C64216A4A7; Sat, 24 Jun 2006 11:35:35 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D32A16A49A for ; Sat, 24 Jun 2006 11:35:35 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C21A543D49 for ; Sat, 24 Jun 2006 11:35:31 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5OBZV3n038140 for ; Sat, 24 Jun 2006 11:35:31 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5OBZVZU038137 for perforce@freebsd.org; Sat, 24 Jun 2006 11:35:31 GMT (envelope-from piso@freebsd.org) Date: Sat, 24 Jun 2006 11:35:31 GMT Message-Id: <200606241135.k5OBZVZU038137@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99929 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 11:35:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=99929 Change 99929 by piso@piso_newluxor on 2006/06/24 11:34:33 Convert some bus_setup_intr() methods to the interrupt filter model: for now i just converted nexus on i386. Next step: reconvert all the previous marked drivers with FIX_INTR_FILTER to be real filters. Affected files ... .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#5 edit .. //depot/projects/soc2006/intr_filter/i386/i386/nexus.c#2 edit .. //depot/projects/soc2006/intr_filter/i386/include/intr_machdep.h#2 edit .. //depot/projects/soc2006/intr_filter/i386/isa/clock.c#3 edit .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#4 edit .. //depot/projects/soc2006/intr_filter/sys/interrupt.h#3 edit Differences ... ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#5 (text+ko) ==== @@ -112,8 +112,8 @@ } int -intr_add_handler(const char *name, int vector, driver_intr_t handler, - void *arg, enum intr_type flags, void **cookiep) +intr_add_handler(const char *name, int vector, driver_filter_t filter, + driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep) { struct intsrc *isrc; int error; @@ -121,8 +121,8 @@ isrc = intr_lookup_source(vector); if (isrc == NULL) return (EINVAL); - error = intr_event_add_handler(isrc->is_event, name, handler, arg, - intr_priority(flags), flags, cookiep); + error = intr_event_add_handler(isrc->is_event, name, filter, handler, + arg, intr_priority(flags), flags, cookiep); if (error == 0) { intrcnt_updatename(isrc); mtx_lock_spin(&intr_table_lock); ==== //depot/projects/soc2006/intr_filter/i386/i386/nexus.c#2 (text+ko) ==== @@ -97,7 +97,7 @@ static int nexus_release_resource(device_t, device_t, int, int, struct resource *); static int nexus_setup_intr(device_t, device_t, struct resource *, int flags, - void (*)(void *), void *, void **); + driver_filter_t, void (*)(void *), void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); static struct resource_list *nexus_get_reslist(device_t dev, device_t child); @@ -477,7 +477,8 @@ */ static int nexus_setup_intr(device_t bus, device_t child, struct resource *irq, - int flags, void (*ihand)(void *), void *arg, void **cookiep) + int flags, driver_filter_t filter, void (*ihand)(void *), + void *arg, void **cookiep) { int error; @@ -497,7 +498,7 @@ return (error); error = intr_add_handler(device_get_nameunit(child), - rman_get_start(irq), ihand, arg, flags, cookiep); + rman_get_start(irq), filter, ihand, arg, flags, cookiep); return (error); } ==== //depot/projects/soc2006/intr_filter/i386/include/intr_machdep.h#2 (text+ko) ==== @@ -124,8 +124,8 @@ #else #define intr_add_cpu(apic_id) #endif -int intr_add_handler(const char *name, int vector, driver_intr_t handler, - void *arg, enum intr_type flags, void **cookiep); +int intr_add_handler(const char *name, int vector, driver_filter_t filter, + driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep); int intr_config_intr(int vector, enum intr_trigger trig, enum intr_polarity pol); void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame); ==== //depot/projects/soc2006/intr_filter/i386/isa/clock.c#3 (text+ko) ==== @@ -824,8 +824,7 @@ * timecounter to user a simpler algorithm. */ if (!using_lapic_timer) { - // XXX - FIX_INTR_FILTER - intr_add_handler("clk", 0, (driver_intr_t *)clkintr, NULL, + intr_add_handler("clk", 0, (driver_filter_t *)clkintr, NULL, NULL, INTR_TYPE_CLK | INTR_FAST, NULL); i8254_intsrc = intr_lookup_source(0); if (i8254_intsrc != NULL) @@ -859,8 +858,7 @@ /* Enable periodic interrupts from the RTC. */ rtc_statusb |= RTCSB_PINTR; - // XXX - FIX_INTR_FILTER - intr_add_handler("rtc", 8, (driver_intr_t *)rtcintr, NULL, + intr_add_handler("rtc", 8, (driver_filter_t *)rtcintr, NULL, NULL, INTR_TYPE_CLK | INTR_FAST, NULL); writertc(RTC_STATUSB, rtc_statusb); ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#4 (text+ko) ==== @@ -323,8 +323,8 @@ int intr_event_add_handler(struct intr_event *ie, const char *name, - driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, - void **cookiep) + driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, + enum intr_type flags, void **cookiep) { struct intr_handler *ih, *temp_ih; struct intr_thread *it; @@ -334,6 +334,7 @@ /* Allocate and populate an interrupt handler structure. */ ih = malloc(sizeof(struct intr_handler), M_ITHREAD, M_WAITOK | M_ZERO); + ih->ih_filter = filter; ih->ih_handler = handler; ih->ih_argument = arg; ih->ih_name = name; @@ -568,7 +569,7 @@ if (eventp != NULL) *eventp = ie; } - return (intr_event_add_handler(ie, name, handler, arg, + return (intr_event_add_handler(ie, name, NULL, handler, arg, (pri * RQ_PPQ) + PI_SOFT, flags, cookiep)); /* XXKSE.. think of a better way to get separate queues */ } @@ -789,8 +790,8 @@ */ arg = ((ih->ih_argument == NULL) ? frame : ih->ih_argument); - CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_handler, arg, ih->ih_name); + CTR5(KTR_INTR, "%s: exec %p/%p(%p) for %s", __func__, + ih->ih_filter, ih->ih_handler, arg, ih->ih_name); if (ih->ih_flags & IH_FAST) { // XXX - actually should call ih_filter()... ==== //depot/projects/soc2006/intr_filter/sys/interrupt.h#3 (text+ko) ==== @@ -43,6 +43,7 @@ * together. */ struct intr_handler { + driver_filter_t *ih_filter; /* Filter function. */ driver_intr_t *ih_handler; /* Handler function. */ void *ih_argument; /* Argument to pass to handler. */ int ih_flags; @@ -115,7 +116,7 @@ int intr_filter_loop(struct intr_event *ie, struct trapframe *frame); u_char intr_priority(enum intr_type flags); int intr_event_add_handler(struct intr_event *ie, const char *name, - driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, + driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, void **cookiep); int intr_event_create(struct intr_event **event, void *source, int flags, void (*enable)(void *), const char *fmt, ...) From owner-p4-projects@FreeBSD.ORG Sat Jun 24 13:40:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F29F16A4A7; Sat, 24 Jun 2006 13:40:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C5C5816A494 for ; Sat, 24 Jun 2006 13:40:54 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9200543D48 for ; Sat, 24 Jun 2006 13:40:54 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5ODesiS053551 for ; Sat, 24 Jun 2006 13:40:54 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5ODesUq053548 for perforce@freebsd.org; Sat, 24 Jun 2006 13:40:54 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 13:40:54 GMT Message-Id: <200606241340.k5ODesUq053548@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99936 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 13:40:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=99936 Change 99936 by als@als_head on 2006/06/24 13:40:48 add jail2_disk diffinition. Affected files ... .. //depot/projects/jail2/sys/sys/jail2.h#3 edit Differences ... ==== //depot/projects/jail2/sys/sys/jail2.h#3 (text+ko) ==== @@ -129,9 +129,10 @@ #ifdef _KERNEL struct thread; -int jail2_common(struct thread *td, struct jail_2 *j); -int jail2_network(struct thread *td, struct jail_2 *j); -int jail2_resource(struct thread *td, struct jail_2 *j); +int jail2_common(struct thread *td, struct jail_2 *j); +int jail2_network(struct thread *td, struct jail_2 *j); +int jail2_resource(struct thread *td, struct jail_2 *j); +int jail2_disk(struct thread *td, struct jail_2 *j); #endif /* !_KERNEL */ #endif /* !_SYS_JAIL2_H_ */ From owner-p4-projects@FreeBSD.ORG Sat Jun 24 13:55:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 59E2B16A4C2; Sat, 24 Jun 2006 13:55:14 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1E84116A4A6 for ; Sat, 24 Jun 2006 13:55:14 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C292043D46 for ; Sat, 24 Jun 2006 13:55:13 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5ODtDu6054195 for ; Sat, 24 Jun 2006 13:55:13 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5ODtDgn054184 for perforce@freebsd.org; Sat, 24 Jun 2006 13:55:13 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 13:55:13 GMT Message-Id: <200606241355.k5ODtDgn054184@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99938 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 13:55:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=99938 Change 99938 by als@als_head on 2006/06/24 13:54:35 whitespace cleanup. remove duplicated case. Affected files ... .. //depot/projects/jail2/sys/kern/kern_jail2_resource.c#4 edit Differences ... ==== //depot/projects/jail2/sys/kern/kern_jail2_resource.c#4 (text+ko) ==== @@ -45,38 +45,38 @@ #define jprint(a...) /* printf(a) */ -static int +static int jail_setproclimit(struct prison *_pr, void *_data) { int error; int limit; - + error = copyin(_data, &limit, sizeof(limit)); if (error) return (error); - + sx_xlock(&allproc_lock); _pr->pr_tasks.jt_limit = limit; sx_xunlock(&allproc_lock); - + if (limit != 0) - JAIL_SET_PROCLIM(_pr); + JAIL_SET_PROCLIM(_pr); else - JAIL_CLEAR_PROCLIM(_pr); - + JAIL_CLEAR_PROCLIM(_pr); + return (0); } -static int +static int jail_setresource_int(uint32_t *res, void *_data) { int error; int limit; - + error = copyin(_data, &limit, sizeof(limit)); if (error) return (error); - + atomic_store_rel_int(res, limit); return (0); @@ -87,7 +87,7 @@ { struct prison *pr; int ret = 0; - + mtx_lock(&allprison_mtx); pr = prison_find(_j->ctx_id); mtx_unlock(&allprison_mtx); @@ -99,37 +99,27 @@ } switch(JAIL2_CMD(_j->cmd)) { - case J_SETVROOT: - if (JAIL_VROOT(pr) != NULL) { - if (JAIL_NPROCS(pr) != 0) { - ret = EPERM; + case J_SETPROCLIMIT: + ret = jail_setproclimit(pr, _j->data); break; - } - jail_destroyvroot(pr); - } - ret = jail_setvroot(pr, _td, _j->data); - break; - case J_SETPROCLIMIT: - ret = jail_setproclimit(pr, _j->data); - break; case J_INODEUSAGE: - ret = jail_setresource_int(&pr->pr_disk.pr_inodes, _j->data); - break; + ret = jail_setresource_int(&pr->pr_disk.pr_inodes, _j->data); + break; case J_INODELIMIT: - ret = jail_setresource_int(&pr->pr_disk.pr_l_inodes, _j->data); - break; + ret = jail_setresource_int(&pr->pr_disk.pr_l_inodes, _j->data); + break; case J_MSQLIMIT: - ret = jail_setresource_int(&pr->pr_ipc.msq_limit, _j->data); - break; + ret = jail_setresource_int(&pr->pr_ipc.msq_limit, _j->data); + break; case J_SEMLIMIT: - ret = jail_setresource_int(&pr->pr_ipc.sem_limit, _j->data); - break; + ret = jail_setresource_int(&pr->pr_ipc.sem_limit, _j->data); + break; case J_SHMLIMIT: - ret = jail_setresource_int(&pr->pr_ipc.shm_limit, _j->data); - break; + ret = jail_setresource_int(&pr->pr_ipc.shm_limit, _j->data); + break; case J_SETFILELIMIT: - ret = jail_setresource_int(&pr->pr_limits.fdlimit, _j->data); - break; + ret = jail_setresource_int(&pr->pr_limits.fdlimit, _j->data); + break; case J_SETMEMLIMIT: case J_SETRSSLIMIT: case J_SETTCPSOCKETSLIMIT: @@ -137,12 +127,12 @@ case J_CPUHARDLIMIT: case J_CPUSOFTLIMIT: default: - ret = EOPNOTSUPP; - break; + ret = EOPNOTSUPP; + break; } /* remove refs from find/create */ - prison_free (pr); + prison_free (pr); jprint("jail2_resouce return %d\n", ret); return (ret); From owner-p4-projects@FreeBSD.ORG Sat Jun 24 14:00:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8986716A4A6; Sat, 24 Jun 2006 14:00:21 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 35A2B16A47E for ; Sat, 24 Jun 2006 14:00:21 +0000 (UTC) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BA6D143D46 for ; Sat, 24 Jun 2006 14:00:20 +0000 (GMT) (envelope-from als@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5OE0KBb054382 for ; Sat, 24 Jun 2006 14:00:20 GMT (envelope-from als@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5OE0Kb7054379 for perforce@freebsd.org; Sat, 24 Jun 2006 14:00:20 GMT (envelope-from als@FreeBSD.org) Date: Sat, 24 Jun 2006 14:00:20 GMT Message-Id: <200606241400.k5OE0Kb7054379@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to als@FreeBSD.org using -f From: Alex Lyashkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 99939 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 14:00:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=99939 Change 99939 by als@als_head on 2006/06/24 14:00:09 whitepace cleanup. implement jail2_disk. Affected files ... .. //depot/projects/jail2/sys/kern/kern_jail2_disk.c#2 edit Differences ... ==== //depot/projects/jail2/sys/kern/kern_jail2_disk.c#2 (text+ko) ==== @@ -41,23 +41,26 @@ #include #include +#define jprint(a...) +/* printf(a) */ + int jail_setvroot(struct prison *pr, struct thread *td, char *root) { int error, vfslocked; struct nameidata nd; char path[MAXPATHLEN]; - + error = copyinstr(root, &path, sizeof(path), 0); if (error) goto e_exit; // printf("setvroot %s\n",path); NDINIT(&nd, LOOKUP, MPSAFE | FOLLOW | LOCKLEAF, UIO_SYSSPACE, - path, td); + path, td); error = namei(&nd); - if (error) - goto e_exit; - + if (error) + goto e_exit; + vfslocked = NDHASGIANT(&nd); JAIL_VROOT(pr) = nd.ni_vp; strlcpy(pr->pr_disk.pr_path, path, MAXPATHLEN); @@ -75,90 +78,41 @@ pr->pr_disk.pr_path[0]=0; if (JAIL_VROOT(pr) != NULL) { vfslocked = VFS_LOCK_GIANT(JAIL_VROOT(pr)->v_mount); - vrele(JAIL_VROOT(pr)); + vrele(JAIL_VROOT(pr)); VFS_UNLOCK_GIANT(vfslocked); JAIL_VROOT(pr) = NULL; } } -/* - * Copyright (c) 2004 Alex Lyashkov - * 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. - */ -#include -__FBSDID("$FreeBSD$"); - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -int jail_setvroot(struct prison *pr, struct thread *td, char *root) +int jail2_disk(struct thread *_td, struct jail_2 *_j) { - int error, vfslocked; - struct nameidata nd; - char path[MAXPATHLEN]; - - error = copyinstr(root, &path, sizeof(path), 0); - if (error) - goto e_exit; + struct prison *pr; + int ret = 0; -// printf("setvroot %s\n",path); - NDINIT(&nd, LOOKUP, MPSAFE | FOLLOW | LOCKLEAF, UIO_SYSSPACE, - path, td); - error = namei(&nd); - if (error) - goto e_exit; - - vfslocked = NDHASGIANT(&nd); - JAIL_VROOT(pr) = nd.ni_vp; - strlcpy(pr->pr_disk.pr_path, path, MAXPATHLEN); - VOP_UNLOCK(nd.ni_vp, 0, td); - VFS_UNLOCK_GIANT(vfslocked); - NDFREE(&nd, NDF_ONLY_PNBUF); -e_exit: - return (error); -} + mtx_lock(&allprison_mtx); + pr = prison_find(_j->ctx_id); + mtx_unlock(&allprison_mtx); -void jail_destroyvroot(struct prison *pr) -{ - int vfslocked; + jprint("jail2_disk %d ctx: %d pr: %p\n", JAIL2_CMD(_j->cmd), _j->ctx_id, pr ); + if (pr == NULL) { + printf("Prison not found for command %x\n", _j->cmd); + return (ESRCH); + } - pr->pr_disk.pr_path[0]=0; - if (JAIL_VROOT(pr) != NULL) { - vfslocked = VFS_LOCK_GIANT(JAIL_VROOT(pr)->v_mount); - vrele(JAIL_VROOT(pr)); - VFS_UNLOCK_GIANT(vfslocked); - JAIL_VROOT(pr) = NULL; - } + switch(JAIL2_CMD(_j->cmd)) { + case J_SETVROOT: + if (JAIL_VROOT(pr) != NULL) { + if (JAIL_NPROCS(pr) != 0) { + ret = EPERM; + break; + } + jail_destroyvroot(pr); + } + ret = jail_setvroot(pr, _td, _j->data); + break; + default: + ret = EOPNOTSUPP; + break; + } + return (ret); } From owner-p4-projects@FreeBSD.ORG Sat Jun 24 14:57:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BBF5216A4A9; Sat, 24 Jun 2006 14:57:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9787216A494 for ; Sat, 24 Jun 2006 14:57:36 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C1F3C43D5F for ; Sat, 24 Jun 2006 14:57:34 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5OEvY4j058378 for ; Sat, 24 Jun 2006 14:57:34 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5OEvY2O058375 for perforce@freebsd.org; Sat, 24 Jun 2006 14:57:34 GMT (envelope-from piso@freebsd.org) Date: Sat, 24 Jun 2006 14:57:34 GMT Message-Id: <200606241457.k5OEvY2O058375@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 99941 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 14:57:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=99941 Change 99941 by piso@piso_newluxor on 2006/06/24 14:56:52 Finished to reconvert all the drivers marked as FIX_INTR_FILTER as interrupt filters. Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/isa/clock.c#3 edit .. //depot/projects/soc2006/intr_filter/arm/at91/at91_pio.c#3 edit .. //depot/projects/soc2006/intr_filter/arm/at91/at91_rtc.c#3 edit .. //depot/projects/soc2006/intr_filter/arm/at91/at91_st.c#3 edit .. //depot/projects/soc2006/intr_filter/arm/sa11x0/sa11x0_ost.c#3 edit .. //depot/projects/soc2006/intr_filter/arm/xscale/i80321/i80321_timer.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/adlink/adlink.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/cy/cy_isa.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/cy/cy_pci.c#4 edit .. //depot/projects/soc2006/intr_filter/dev/em/if_em.c#4 edit .. //depot/projects/soc2006/intr_filter/dev/zs/zs_macio.c#3 edit .. //depot/projects/soc2006/intr_filter/pc98/cbus/clock.c#3 edit .. //depot/projects/soc2006/intr_filter/pc98/cbus/sio.c#3 edit .. //depot/projects/soc2006/intr_filter/powerpc/powermac/pswitch.c#3 edit .. //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#3 edit .. //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#3 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/isa/clock.c#3 (text+ko) ==== @@ -759,9 +759,8 @@ * that it can drive hardclock(). Otherwise, change the 8254 * timecounter to user a simpler algorithm. */ - // XXX - FIX_INTR_FILTER if (!using_lapic_timer) { - intr_add_handler("clk", 0, (driver_intr_t *)clkintr, NULL, + intr_add_handler("clk", 0, (driver_filter_t *)clkintr, NULL, NULL, INTR_TYPE_CLK | INTR_FAST, NULL); i8254_intsrc = intr_lookup_source(0); if (i8254_intsrc != NULL) @@ -795,8 +794,7 @@ /* Enable periodic interrupts from the RTC. */ rtc_statusb |= RTCSB_PINTR; - // XXX - FIX_INTR_FILTER - intr_add_handler("rtc", 8, (driver_intr_t *)rtcintr, NULL, + intr_add_handler("rtc", 8, (driver_filter_t *)rtcintr, NULL, NULL, INTR_TYPE_CLK | INTR_FAST, NULL); writertc(RTC_STATUSB, rtc_statusb); ==== //depot/projects/soc2006/intr_filter/arm/at91/at91_pio.c#3 (text) ==== @@ -124,9 +124,8 @@ * Activate the interrupt, but disable all interrupts in the hardware */ WR4(sc, PIO_IDR, 0xffffffff); - // XXX - FIX_INTR_FILTER err = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_MISC | INTR_FAST, - (driver_intr_t *)at91_pio_intr, sc, &sc->intrhand); + (driver_filter_t *)at91_pio_intr, NULL, sc, &sc->intrhand); if (err) { AT91_PIO_LOCK_DESTROY(sc); goto out; ==== //depot/projects/soc2006/intr_filter/arm/at91/at91_rtc.c#3 (text) ==== @@ -110,9 +110,8 @@ * Activate the interrupt, but disable all interrupts in the hardware */ WR4(sc, RTC_IDR, 0xffffffff); - // XXX - FIX_INTR_FILTER err = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_MISC | INTR_FAST, - (driver_intr_t *)at91_rtc_intr, sc, &sc->intrhand); + (driver_filter_t *)at91_rtc_intr, NULL, sc, &sc->intrhand); if (err) { AT91_RTC_LOCK_DESTROY(sc); goto out; ==== //depot/projects/soc2006/intr_filter/arm/at91/at91_st.c#3 (text) ==== @@ -175,12 +175,11 @@ /* The system timer shares the system irq (1) */ irq = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, 1, 1, 1, RF_ACTIVE | RF_SHAREABLE); - // XXX - FIX_INTR_FILTER if (!irq) panic("Unable to allocate irq for the system timer"); else bus_setup_intr(dev, irq, INTR_TYPE_CLK | INTR_FAST, - (driver_intr_t *)clock_intr, NULL, &ih); + (driver_filter_t *)clock_intr, NULL, NULL, &ih); WR4(ST_PIMR, rel_value); ==== //depot/projects/soc2006/intr_filter/arm/sa11x0/sa11x0_ost.c#3 (text+ko) ==== @@ -273,13 +273,11 @@ rid = 1; irq2 = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, 0, ~0, 1, RF_ACTIVE); - // XXX - FIX_INTR_FILTER bus_setup_intr(dev, irq1, INTR_TYPE_CLK | INTR_FAST, - (driver_intr_t *)clockintr, NULL, &ih1); + (driver_filter_t *)clockintr, NULL, NULL, &ih1); #if 0 - // XXX - FIX_INTR_FILTER bus_setup_intr(dev, irq2, INTR_TYPE_CLK | INTR_FAST, - (driver_intr_t *)statintr, NULL, &ih2); + (driver_filter_t *)statintr, NULL, NULL, &ih2); #endif bus_space_write_4(saost_sc->sc_iot, saost_sc->sc_ioh, SAOST_SR, 0xf); bus_space_write_4(saost_sc->sc_iot, saost_sc->sc_ioh, SAOST_IR, 3); ==== //depot/projects/soc2006/intr_filter/arm/xscale/i80321/i80321_timer.c#3 (text+ko) ==== @@ -334,12 +334,11 @@ irq = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, ICU_INT_TMR0, ICU_INT_TMR0, 1, RF_ACTIVE); - // XXX - FIX_INTR_FILTER if (!irq) panic("Unable to setup the clock irq handler.\n"); else bus_setup_intr(dev, irq, INTR_TYPE_CLK | INTR_FAST, - (driver_intr_t *)clockhandler, NULL, &ihl); + (driver_filter_t *)clockhandler, NULL, NULL, &ihl); tmr0_write(0); /* stop timer */ tisr_write(TISR_TMR0); /* clear interrupt */ ==== //depot/projects/soc2006/intr_filter/dev/adlink/adlink.c#3 (text+ko) ==== @@ -373,10 +373,9 @@ if (error) return (error); - // XXX - FIX_INTR_FILTER i = bus_setup_intr(self, sc->res[2], INTR_MPSAFE | INTR_TYPE_MISC | INTR_FAST, - (driver_intr_t *)adlink_intr, sc, &sc->intrhand); + (driver_filter_t *)adlink_intr, NULL, sc, &sc->intrhand); if (i) { printf("adlink: Couldn't get FAST intr\n"); i = bus_setup_intr(self, sc->res[2], ==== //depot/projects/soc2006/intr_filter/dev/cy/cy_isa.c#3 (text+ko) ==== @@ -132,9 +132,8 @@ device_printf(dev, "interrupt resource allocation failed\n"); goto fail; } - // XXX - FIX_INTR_FILTER if (bus_setup_intr(dev, irq_res, INTR_TYPE_TTY | INTR_FAST, - (driver_intr_t *)cyintr, vsc, &irq_cookie) != 0) { + (driver_filter_t *)cyintr, NULL, vsc, &irq_cookie) != 0) { device_printf(dev, "interrupt setup failed\n"); goto fail; } ==== //depot/projects/soc2006/intr_filter/dev/cy/cy_pci.c#4 (text+ko) ==== @@ -145,15 +145,14 @@ goto fail; } #ifdef CY_PCI_FASTINTR - // XXX - FIX_INTR_FILTER irq_setup = bus_setup_intr(dev, irq_res, INTR_TYPE_TTY | INTR_FAST, - (driver_intr_t *)cyintr, vsc, &irq_cookie); + (driver_filter_t *)cyintr, NULL, vsc, &irq_cookie); #else irq_setup = ENXIO; #endif if (irq_setup != 0) irq_setup = bus_setup_intr(dev, irq_res, INTR_TYPE_TTY, - (driver_intr_t *)cyintr, vsc, &irq_cookie); + NULL, (driver_intr_t *)cyintr, vsc, &irq_cookie); if (irq_setup != 0) { device_printf(dev, "interrupt setup failed\n"); goto fail; ==== //depot/projects/soc2006/intr_filter/dev/em/if_em.c#4 (text+ko) ==== @@ -1992,9 +1992,8 @@ taskqueue_thread_enqueue, &sc->tq); taskqueue_start_threads(&sc->tq, 1, PI_NET, "%s taskq", device_get_nameunit(sc->dev)); - // XXX - FIX_INTR_FILTER if ((error = bus_setup_intr(dev, sc->res_interrupt, - INTR_TYPE_NET | INTR_FAST, em_intr_fast, NULL, sc, + INTR_TYPE_NET | INTR_FAST, em_intr_fast, NULL, NULL, sc, &sc->int_handler_tag)) != 0) { device_printf(dev, "Failed to register fast interrupt " "handler: %d\n", error); ==== //depot/projects/soc2006/intr_filter/dev/zs/zs_macio.c#3 (text+ko) ==== @@ -158,9 +158,8 @@ device_printf(dev, "could not allocate interrupt 1\n"); goto error; } - // XXX - FIX_INTR_FILTER if (bus_setup_intr(dev, sc->sc_irqres1, INTR_TYPE_TTY | INTR_FAST, - (driver_intr_t *)zs_intr, sc, &sc->sc_ih1) != 0) { + (driver_filter_t *)zs_intr, NULL, sc, &sc->sc_ih1) != 0) { device_printf(dev, "could not setup interrupt 1\n"); goto error; } @@ -171,9 +170,8 @@ device_printf(dev, "could not allocate interrupt 2\n"); goto error; } - // XXX - FIX_INTR_FILTER if (bus_setup_intr(dev, sc->sc_irqres2, INTR_TYPE_TTY | INTR_FAST, - (driver_intr_t *)zs_intr, sc, &sc->sc_ih2) != 0) { + (driver_filter_t *)zs_intr, NULL, sc, &sc->sc_ih2) != 0) { device_printf(dev, "could not setup interrupt 2\n"); goto error; } ==== //depot/projects/soc2006/intr_filter/pc98/cbus/clock.c#3 (text+ko) ==== @@ -775,8 +775,7 @@ * timecounter to user a simpler algorithm. */ if (!using_lapic_timer) { - // XXX - FIX_INTR_FILTER - intr_add_handler("clk", 0, (driver_intr_t *)clkintr, NULL, + intr_add_handler("clk", 0, (driver_filter_t *)clkintr, NULL, NULL, INTR_TYPE_CLK | INTR_FAST, NULL); i8254_intsrc = intr_lookup_source(0); if (i8254_intsrc != NULL) ==== //depot/projects/soc2006/intr_filter/pc98/cbus/sio.c#3 (text+ko) ==== @@ -1738,10 +1738,9 @@ rid = 0; com->irqres = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, RF_ACTIVE); if (com->irqres) { - // XXX - FIX_INTR_FILTER ret = bus_setup_intr(dev, com->irqres, INTR_TYPE_TTY | INTR_FAST, - (driver_intr_t *)siointr, com, + (driver_filter_t *)siointr, NULL, com, &com->cookie); if (ret) { ret = bus_setup_intr(dev, ==== //depot/projects/soc2006/intr_filter/powerpc/powermac/pswitch.c#3 (text+ko) ==== @@ -121,9 +121,8 @@ return (ENXIO); } - // XXX - FIX_INTR_FILTER if (bus_setup_intr(dev, sc->sc_irq, INTR_TYPE_MISC | INTR_FAST, - (driver_intr_t *)pswitch_intr, dev, &sc->sc_ih) != 0) { + (driver_filter_t *)pswitch_intr, NULL, dev, &sc->sc_ih) != 0) { device_printf(dev, "could not setup interrupt\n"); bus_release_resource(dev, SYS_RES_IRQ, sc->sc_irqrid, sc->sc_irq); ==== //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#3 (text+ko) ==== @@ -80,7 +80,7 @@ const char *); static const struct psycho_desc *psycho_get_desc(phandle_t, const char *); static void psycho_set_intr(struct psycho_softc *, int, device_t, bus_addr_t, - int, driver_intr_t); + int, void *); static int psycho_find_intrmap(struct psycho_softc *, int, bus_addr_t *, bus_addr_t *, u_long *); static void psycho_intr_stub(void *); @@ -453,9 +453,8 @@ * half this is. Hummingbird/Sabre don't have a PCI bus B error * interrupt but they are also only used for PCI bus A. */ - // XXX - FIX_INTR_FILTER psycho_set_intr(sc, 0, dev, sc->sc_half == 0 ? PSR_PCIAERR_INT_MAP : - PSR_PCIBERR_INT_MAP, INTR_FAST, (driver_intr_t *)psycho_pci_bus); + PSR_PCIBERR_INT_MAP, INTR_FAST, psycho_pci_bus); /* * If we're a Hummingbird/Sabre or the first of a pair of Psycho's to @@ -471,14 +470,11 @@ * XXX Not all controllers have these, but installing them * is better than trying to sort through this mess. */ - // XXX - FIX_INTR_FILTER psycho_set_intr(sc, 1, dev, PSR_UE_INT_MAP, INTR_FAST, - (driver_intr_t *)psycho_ue); + psycho_ue); psycho_set_intr(sc, 2, dev, PSR_CE_INT_MAP, 0, psycho_ce); - // XXX - FIX_INTR_FILTER psycho_set_intr(sc, 3, dev, PSR_POWER_INT_MAP, - PSYCHO_PWRFAIL_INT_FLAGS, - (driver_intr_t *)psycho_powerfail); + PSYCHO_PWRFAIL_INT_FLAGS, psycho_powerfail); /* Psycho-specific initialization */ if (sc->sc_mode == PSYCHO_MODE_PSYCHO) { /* @@ -490,9 +486,8 @@ * The spare hardware interrupt is used for the * over-temperature interrupt. */ - // XXX - FIX_INTR_FILTER psycho_set_intr(sc, 4, dev, PSR_SPARE_INT_MAP, - INTR_FAST, (driver_intr_t *)psycho_overtemp); + INTR_FAST, psycho_overtemp); #ifdef PSYCHO_MAP_WAKEUP /* * psycho_wakeup() doesn't do anything useful right @@ -618,7 +613,7 @@ static void psycho_set_intr(struct psycho_softc *sc, int index, device_t dev, - bus_addr_t map, int iflags, driver_intr_t handler) + bus_addr_t map, int iflags, void *handler) { int rid, vec; uint64_t mr; @@ -630,8 +625,12 @@ vec, vec, 1, RF_ACTIVE); if (sc->sc_irq_res[index] == NULL) panic("%s: failed to get interrupt", __func__); - bus_setup_intr(dev, sc->sc_irq_res[index], INTR_TYPE_MISC | iflags, - handler, sc, &sc->sc_ihand[index]); + if (iflags & INTR_FAST) + bus_setup_intr(dev, sc->sc_irq_res[index], INTR_TYPE_MISC | iflags, + handler, NULL, sc, &sc->sc_ihand[index]); + else + bus_setup_intr(dev, sc->sc_irq_res[index], INTR_TYPE_MISC | iflags, + NULL, handler, sc, &sc->sc_ihand[index]); PSYCHO_WRITE8(sc, map, INTMAP_ENABLE(mr, PCPU_GET(mid))); } ==== //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#3 (text+ko) ==== @@ -433,9 +433,8 @@ if ((sc->sc_ot_ires = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, vec, vec, 1, RF_ACTIVE)) == NULL) panic("%s: failed to get temperature interrupt", __func__); - // XXX - FIX_INTR_FILTER bus_setup_intr(dev, sc->sc_ot_ires, INTR_TYPE_MISC | INTR_FAST, - (driver_intr_t *)sbus_overtemp, sc, &sc->sc_ot_ihand); + (driver_filter_t *)sbus_overtemp, NULL, sc, &sc->sc_ot_ihand); SYSIO_WRITE8(sc, SBR_THERM_INT_MAP, INTMAP_ENABLE(mr, PCPU_GET(mid))); rid = 0; mr = SYSIO_READ8(sc, SBR_POWER_INT_MAP); @@ -443,9 +442,8 @@ if ((sc->sc_pf_ires = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, vec, vec, 1, RF_ACTIVE)) == NULL) panic("%s: failed to get power fail interrupt", __func__); - // XXX - FIX_INTR_FILTER bus_setup_intr(dev, sc->sc_pf_ires, INTR_TYPE_MISC | INTR_FAST, - (driver_intr_t *)sbus_pwrfail, sc, &sc->sc_pf_ihand); + (driver_filter_t *)sbus_pwrfail, NULL, sc, &sc->sc_pf_ihand); SYSIO_WRITE8(sc, SBR_POWER_INT_MAP, INTMAP_ENABLE(mr, PCPU_GET(mid))); /* Initialize the counter-timer. */ From owner-p4-projects@FreeBSD.ORG Sat Jun 24 20:53:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6D35C16A49E; Sat, 24 Jun 2006 20:53:00 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 478BD16A494 for ; Sat, 24 Jun 2006 20:53:00 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F1D1843D5D for ; Sat, 24 Jun 2006 20:52:59 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5OKqxCj017471 for ; Sat, 24 Jun 2006 20:52:59 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5OKqxCt017468 for perforce@freebsd.org; Sat, 24 Jun 2006 20:52:59 GMT (envelope-from kmacy@freebsd.org) Date: Sat, 24 Jun 2006 20:52:59 GMT Message-Id: <200606242052.k5OKqxCt017468@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 99948 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 24 Jun 2006 20:53:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=99948 Change 99948 by kmacy@kmacy_storage:sun4v_work_ifc on 2006/06/24 20:52:38 compile fixes Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#19 edit .. //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#4 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/pcpu.h#19 (text+ko) ==== @@ -44,7 +44,7 @@ #elif defined(MUTEX_PROFILING) #define SUN4V_PAD 6 #else -#define SUN4V_PAD 0 +#define SUN4V_PAD 3 #endif /* ==== //depot/projects/kmacy_sun4v/src/sys/sys/lock_profile.h#4 (text+ko) ==== @@ -196,7 +196,7 @@ static inline void lock_profile_obtain_lock_failed(struct lock_object *m, int *contested) {;} static inline void lock_profile_obtain_lock_success(struct lock_object *m, const char *file, int line) {;} static inline void lock_profile_release_lock(struct lock_object *m) {;} - +static inline void lock_profile_destroy(struct lock_object *lo) {;} #endif /* !MUTEX_PROFILING */ #endif /* _SYS_LOCK_PROFILE_H_ */