PERFORCE change 86592 for review

Robert Watson rwatson at FreeBSD.org
Thu Nov 10 03:42:48 PST 2005


http://perforce.freebsd.org/chv.cgi?CH=86592

Change 86592 by rwatson at rwatson_zoo on 2005/11/10 11:41:40

	Further integrate TrustedBSD base from FreeBSD CVS in order to pick
	up some build fixes and files that required special integration
	flags:
	
	- lmc driver parts
	- libarchive fixes
	- if_em, twa driver updates
	- further mbuf memory tweaks
	- pmap updates for alpha, amd64, powerpc, ia64
	- more NDIS magic
	- XBOX
	- file descriptor debugging
	- SIGCHLD now queued
	- sparse protocol and domain structure definitions
	- more aio fixes
	- mount error messages
	- cloning code maintains ifnet driver lists, so fewer drivers
	  have to

Affected files ...

.. //depot/projects/trustedbsd/base/Makefile.inc1#66 integrate
.. //depot/projects/trustedbsd/base/bin/ls/ls.1#29 integrate
.. //depot/projects/trustedbsd/base/bin/ls/ls.c#26 integrate
.. //depot/projects/trustedbsd/base/etc/mtree/BSD.include.dist#33 integrate
.. //depot/projects/trustedbsd/base/etc/rc.d/ppp#4 branch
.. //depot/projects/trustedbsd/base/lib/bind/bind/Makefile#2 integrate
.. //depot/projects/trustedbsd/base/lib/bind/bind9/Makefile#2 integrate
.. //depot/projects/trustedbsd/base/lib/bind/dns/Makefile#3 integrate
.. //depot/projects/trustedbsd/base/lib/bind/isc/Makefile#3 integrate
.. //depot/projects/trustedbsd/base/lib/bind/isccc/Makefile#2 integrate
.. //depot/projects/trustedbsd/base/lib/bind/isccfg/Makefile#2 integrate
.. //depot/projects/trustedbsd/base/lib/bind/lwres/Makefile#3 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive.h.in#7 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_entry.c#14 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_private.h#12 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_compression_compress.c#4 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_format_cpio.c#9 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_format_iso9660.c#5 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_format_tar.c#13 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_write_set_format_pax.c#15 integrate
.. //depot/projects/trustedbsd/base/lib/libarchive/archive_write_set_format_ustar.c#8 integrate
.. //depot/projects/trustedbsd/base/release/doc/share/misc/dev.archlist.txt#8 integrate
.. //depot/projects/trustedbsd/base/sbin/kldconfig/kldconfig.c#6 integrate
.. //depot/projects/trustedbsd/base/share/examples/cvsup/ports-supfile#9 integrate
.. //depot/projects/trustedbsd/base/share/man/man4/lmc.4#4 branch
.. //depot/projects/trustedbsd/base/share/man/man4/twa.4#5 integrate
.. //depot/projects/trustedbsd/base/share/man/man8/rescue.8#2 integrate
.. //depot/projects/trustedbsd/base/sys/alpha/alpha/pmap.c#45 integrate
.. //depot/projects/trustedbsd/base/sys/amd64/amd64/pmap.c#23 integrate
.. //depot/projects/trustedbsd/base/sys/arm/include/pcpu.h#3 integrate
.. //depot/projects/trustedbsd/base/sys/boot/i386/loader/loader.rc#4 branch
.. //depot/projects/trustedbsd/base/sys/compat/ndis/ndis_var.h#11 integrate
.. //depot/projects/trustedbsd/base/sys/compat/ndis/subr_ntoskrnl.c#13 integrate
.. //depot/projects/trustedbsd/base/sys/conf/files#91 integrate
.. //depot/projects/trustedbsd/base/sys/conf/files.i386#56 integrate
.. //depot/projects/trustedbsd/base/sys/conf/files.powerpc#18 integrate
.. //depot/projects/trustedbsd/base/sys/conf/options.i386#31 integrate
.. //depot/projects/trustedbsd/base/sys/contrib/pf/net/if_pflog.c#11 integrate
.. //depot/projects/trustedbsd/base/sys/contrib/pf/net/if_pfsync.c#12 integrate
.. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi.c#46 integrate
.. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_pcib.c#23 integrate
.. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_resource.c#19 integrate
.. //depot/projects/trustedbsd/base/sys/dev/em/if_em.c#45 integrate
.. //depot/projects/trustedbsd/base/sys/dev/em/if_em.h#28 integrate
.. //depot/projects/trustedbsd/base/sys/dev/em/if_em_hw.h#17 integrate
.. //depot/projects/trustedbsd/base/sys/dev/em/if_em_osdep.h#15 integrate
.. //depot/projects/trustedbsd/base/sys/dev/joy/joy.c#8 integrate
.. //depot/projects/trustedbsd/base/sys/dev/lmc/if_lmc.c#9 branch
.. //depot/projects/trustedbsd/base/sys/dev/pccbb/pccbbdevid.h#13 integrate
.. //depot/projects/trustedbsd/base/sys/dev/pci/pci.c#45 integrate
.. //depot/projects/trustedbsd/base/sys/dev/rp/rp.c#16 integrate
.. //depot/projects/trustedbsd/base/sys/dev/si/si_pci.c#6 integrate
.. //depot/projects/trustedbsd/base/sys/dev/si/sireg.h#3 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl.h#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_externs.h#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_fwif.h#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_fwimg.c#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_init.c#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_intr.c#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_io.c#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_ioctl.h#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_misc.c#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_cl_share.h#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_osl.h#2 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_osl_cam.c#5 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_osl_freebsd.c#4 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_osl_includes.h#3 integrate
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_osl_inline.h#1 branch
.. //depot/projects/trustedbsd/base/sys/dev/twa/tw_osl_share.h#4 integrate
.. //depot/projects/trustedbsd/base/sys/fs/devfs/devfs_vnops.c#40 integrate
.. //depot/projects/trustedbsd/base/sys/i386/conf/NOTES#61 integrate
.. //depot/projects/trustedbsd/base/sys/i386/conf/PAE#13 integrate
.. //depot/projects/trustedbsd/base/sys/i386/conf/XBOX#1 branch
.. //depot/projects/trustedbsd/base/sys/i386/i386/machdep.c#53 integrate
.. //depot/projects/trustedbsd/base/sys/i386/i386/pmap.c#58 integrate
.. //depot/projects/trustedbsd/base/sys/i386/i386/vm_machdep.c#45 integrate
.. //depot/projects/trustedbsd/base/sys/i386/include/xbox.h#1 branch
.. //depot/projects/trustedbsd/base/sys/i386/isa/clock.c#31 integrate
.. //depot/projects/trustedbsd/base/sys/i386/pci/pci_cfgreg.c#25 integrate
.. //depot/projects/trustedbsd/base/sys/i386/xbox/pic16l.s#1 branch
.. //depot/projects/trustedbsd/base/sys/i386/xbox/xbox.c#1 branch
.. //depot/projects/trustedbsd/base/sys/i386/xbox/xboxfb.c#1 branch
.. //depot/projects/trustedbsd/base/sys/ia64/ia64/pmap.c#49 integrate
.. //depot/projects/trustedbsd/base/sys/kern/kern_descrip.c#59 integrate
.. //depot/projects/trustedbsd/base/sys/kern/kern_exit.c#45 integrate
.. //depot/projects/trustedbsd/base/sys/kern/kern_proc.c#49 integrate
.. //depot/projects/trustedbsd/base/sys/kern/kern_sig.c#56 integrate
.. //depot/projects/trustedbsd/base/sys/kern/kern_thread.c#47 integrate
.. //depot/projects/trustedbsd/base/sys/kern/subr_power.c#6 integrate
.. //depot/projects/trustedbsd/base/sys/kern/subr_sleepqueue.c#13 integrate
.. //depot/projects/trustedbsd/base/sys/kern/sys_process.c#27 integrate
.. //depot/projects/trustedbsd/base/sys/kern/uipc_proto.c#5 integrate
.. //depot/projects/trustedbsd/base/sys/kern/vfs_aio.c#46 integrate
.. //depot/projects/trustedbsd/base/sys/kern/vfs_mount.c#40 integrate
.. //depot/projects/trustedbsd/base/sys/kern/vfs_subr.c#68 integrate
.. //depot/projects/trustedbsd/base/sys/modules/Makefile#69 integrate
.. //depot/projects/trustedbsd/base/sys/modules/i2c/controllers/viapm/Makefile#2 integrate
.. //depot/projects/trustedbsd/base/sys/modules/twa/Makefile#5 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_bridge.c#6 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_bridgevar.h#3 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_clone.c#5 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_clone.h#3 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_disc.c#17 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_faith.c#26 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_gif.c#29 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_gre.c#22 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_ppp.c#29 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_stf.c#27 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_var.h#35 integrate
.. //depot/projects/trustedbsd/base/sys/net/if_vlan.c#29 integrate
.. //depot/projects/trustedbsd/base/sys/net/rtsock.c#34 integrate
.. //depot/projects/trustedbsd/base/sys/netatalk/at_proto.c#4 integrate
.. //depot/projects/trustedbsd/base/sys/netatm/atm_proto.c#6 integrate
.. //depot/projects/trustedbsd/base/sys/netgraph/bluetooth/socket/ng_btsocket.c#12 integrate
.. //depot/projects/trustedbsd/base/sys/netgraph/ng_eiface.c#18 integrate
.. //depot/projects/trustedbsd/base/sys/netgraph/ng_ether.c#19 integrate
.. //depot/projects/trustedbsd/base/sys/netgraph/ng_fec.c#14 integrate
.. //depot/projects/trustedbsd/base/sys/netgraph/ng_socket.c#22 integrate
.. //depot/projects/trustedbsd/base/sys/netinet/if_ether.c#28 integrate
.. //depot/projects/trustedbsd/base/sys/netinet/in_gif.c#13 integrate
.. //depot/projects/trustedbsd/base/sys/netinet/in_proto.c#20 integrate
.. //depot/projects/trustedbsd/base/sys/netinet/ip_carp.c#9 integrate
.. //depot/projects/trustedbsd/base/sys/netinet/ip_divert.c#29 integrate
.. //depot/projects/trustedbsd/base/sys/netinet/ip_mroute.c#30 integrate
.. //depot/projects/trustedbsd/base/sys/netinet6/in6_proto.c#14 integrate
.. //depot/projects/trustedbsd/base/sys/netipsec/keysock.c#10 integrate
.. //depot/projects/trustedbsd/base/sys/netipx/ipx_proto.c#6 integrate
.. //depot/projects/trustedbsd/base/sys/netkey/keysock.c#20 integrate
.. //depot/projects/trustedbsd/base/sys/netnatm/natm_proto.c#13 integrate
.. //depot/projects/trustedbsd/base/sys/pc98/conf/NOTES#29 integrate
.. //depot/projects/trustedbsd/base/sys/powerpc/include/mmuvar.h#1 branch
.. //depot/projects/trustedbsd/base/sys/powerpc/include/pmap.h#12 integrate
.. //depot/projects/trustedbsd/base/sys/powerpc/powerpc/machdep.c#35 integrate
.. //depot/projects/trustedbsd/base/sys/powerpc/powerpc/mmu_if.m#1 branch
.. //depot/projects/trustedbsd/base/sys/powerpc/powerpc/mmu_oea.c#2 integrate
.. //depot/projects/trustedbsd/base/sys/powerpc/powerpc/pmap.c#35 delete
.. //depot/projects/trustedbsd/base/sys/powerpc/powerpc/pmap_dispatch.c#1 branch
.. //depot/projects/trustedbsd/base/sys/sparc64/conf/GENERIC#48 integrate
.. //depot/projects/trustedbsd/base/sys/sparc64/sparc64/pmap.c#52 integrate
.. //depot/projects/trustedbsd/base/sys/sys/ata.h#16 integrate
.. //depot/projects/trustedbsd/base/sys/sys/mount.h#33 integrate
.. //depot/projects/trustedbsd/base/sys/sys/proc.h#68 integrate
.. //depot/projects/trustedbsd/base/sys/sys/signalvar.h#22 integrate
.. //depot/projects/trustedbsd/base/sys/sys/wait.h#8 integrate
.. //depot/projects/trustedbsd/base/sys/ufs/ufs/ufs_extattr.c#28 integrate
.. //depot/projects/trustedbsd/base/sys/vm/pmap.h#27 integrate
.. //depot/projects/trustedbsd/base/sys/vm/vm_page.c#54 integrate
.. //depot/projects/trustedbsd/base/sys/vm/vm_pageout.c#36 integrate
.. //depot/projects/trustedbsd/base/tools/regression/sigqueue/Makefile#2 integrate
.. //depot/projects/trustedbsd/base/tools/regression/sigqueue/sigqtest2/Makefile#1 branch
.. //depot/projects/trustedbsd/base/tools/regression/sigqueue/sigqtest2/sigqtest2.c#1 branch
.. //depot/projects/trustedbsd/base/tools/regression/sockets/unix_passfd/Makefile#1 branch
.. //depot/projects/trustedbsd/base/tools/regression/sockets/unix_passfd/unix_passfd.c#1 branch
.. //depot/projects/trustedbsd/base/tools/regression/usr.bin/pkill/pgrep-t.t#2 integrate
.. //depot/projects/trustedbsd/base/tools/regression/usr.bin/pkill/pkill-t.t#2 integrate
.. //depot/projects/trustedbsd/base/usr.bin/netstat/if.c#14 integrate
.. //depot/projects/trustedbsd/base/usr.sbin/config/configvers.h#11 integrate
.. //depot/projects/trustedbsd/base/usr.sbin/pkg_install/create/create.h#6 integrate
.. //depot/projects/trustedbsd/base/usr.sbin/pkg_install/create/main.c#7 integrate
.. //depot/projects/trustedbsd/base/usr.sbin/pkg_install/create/perform.c#13 integrate
.. //depot/projects/trustedbsd/base/usr.sbin/pkg_install/create/pkg_create.1#12 integrate

Differences ...

==== //depot/projects/trustedbsd/base/Makefile.inc1#66 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/Makefile.inc1,v 1.514 2005/11/03 08:56:39 ru Exp $
+# $FreeBSD: src/Makefile.inc1,v 1.515 2005/11/07 15:03:04 ru Exp $
 #
 # Make command line options:
 #	-DNO_DYNAMICROOT do not link /bin and /sbin dynamically
@@ -481,6 +481,18 @@
 SPECIAL_INSTALLCHECKS=
 
 #
+# Require DESTDIR to be set if installing for a different architecture.
+#
+.if ${TARGET_ARCH} != ${MACHINE_ARCH} || ${TARGET} != ${MACHINE}
+SPECIAL_INSTALLCHECKS+=	installcheck_DESTDIR
+installcheck_DESTDIR:
+.if !defined(DESTDIR) || empty(DESTDIR)
+	@echo "ERROR: Please set DESTDIR!"; \
+	false
+.endif
+.endif
+
+#
 # installcheck
 #
 # Checks to be sure system is ready for installworld

==== //depot/projects/trustedbsd/base/bin/ls/ls.1#29 (text+ko) ====

@@ -30,7 +30,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)ls.1	8.7 (Berkeley) 7/29/94
-.\" $FreeBSD: src/bin/ls/ls.1,v 1.91 2005/09/06 20:14:39 rse Exp $
+.\" $FreeBSD: src/bin/ls/ls.1,v 1.92 2005/11/10 00:02:32 mux Exp $
 .\"
 .Dd September 6, 2005
 .Dt LS 1
@@ -40,7 +40,7 @@
 .Nd list directory contents
 .Sh SYNOPSIS
 .Nm
-.Op Fl ABCFGHLPRSTWZabcdfghiklmnopqrstuwx1
+.Op Fl ABCFGHILPRSTWZabcdfghiklmnopqrstuwx1
 .Op Ar
 .Sh DESCRIPTION
 For each operand that names a
@@ -73,6 +73,8 @@
 and
 .Pa .. .
 Always set for the super-user.
+.Fl I
+cancel this option.
 .It Fl B
 Force printing of non-printable characters (as defined by
 .Xr ctype 3
@@ -117,6 +119,12 @@
 or
 .Fl l
 options are specified.
+.It Fl I
+This option cancels the
+.Fl A
+option. Usually used by super-user when
+.Fl A
+is not necessary.
 .It Fl L
 If argument is a symbolic link, list the file or directory the link references
 rather than the link itself.

==== //depot/projects/trustedbsd/base/bin/ls/ls.c#26 (text+ko) ====

@@ -42,7 +42,7 @@
 #endif /* not lint */
 #endif
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.80 2005/06/03 11:05:58 dd Exp $");
+__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.81 2005/11/10 00:02:32 mux Exp $");
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -110,6 +110,8 @@
 static int f_kblocks;		/* print size in kilobytes */
 static int f_listdir;		/* list actual directory, not contents */
 static int f_listdot;		/* list files beginning with . */
+static int f_nolistdot;		/* don't list files beginning with . */
+static int f_forcelistdot;	/* force list files beginning with . */
        int f_longform;		/* long listing format */
        int f_nonprint;		/* show unprintables as ? */
 static int f_nosort;		/* don't sort output */
@@ -175,13 +177,9 @@
 			termwidth = atoi(p);
 	}
 
-	/* Root is -A automatically. */
-	if (!getuid())
-		f_listdot = 1;
-
 	fts_options = FTS_PHYSICAL;
  	while ((ch = getopt(argc, argv,
-	    "1ABCFGHLPRSTWZabcdfghiklmnopqrstuwx")) != -1) {
+	    "1ABCFGHILPRSTWZabcdfghiklmnopqrstuwx")) != -1) {
 		switch (ch) {
 		/*
 		 * The -1, -C, -x and -l options all override each other so
@@ -243,10 +241,14 @@
 			break;
 		case 'a':
 			fts_options |= FTS_SEEDOT;
-			/* FALLTHROUGH */
+			f_forcelistdot = 1;
+			break;
 		case 'A':
 			f_listdot = 1;
 			break;
+		case 'I':
+			f_nolistdot = 1;
+			break;
 		/* The -d option turns off the -R option. */
 		case 'd':
 			f_listdir = 1;
@@ -326,6 +328,10 @@
 	argc -= optind;
 	argv += optind;
 
+	/* Root is -A automatically. */
+	if (!getuid() && !f_nolistdot)
+		f_listdot = 1;
+
 	/* Enabling of colours is conditional on the environment. */
 	if (getenv("CLICOLOR") &&
 	    (isatty(STDOUT_FILENO) || getenv("CLICOLOR_FORCE")))
@@ -490,7 +496,8 @@
 			break;
 		case FTS_D:
 			if (p->fts_level != FTS_ROOTLEVEL &&
-			    p->fts_name[0] == '.' && !f_listdot)
+			    p->fts_name[0] == '.' && ((!f_listdot ||
+			    f_nolistdot) && !f_forcelistdot))
 				break;
 
 			/*
@@ -650,7 +657,8 @@
 			}
 		} else {
 			/* Only display dot file if -a/-A set. */
-			if (cur->fts_name[0] == '.' && !f_listdot) {
+			if (cur->fts_name[0] == '.' && ((!f_listdot ||
+			    f_nolistdot) && !f_forcelistdot)) {
 				cur->fts_number = NO_PRINT;
 				continue;
 			}

==== //depot/projects/trustedbsd/base/etc/mtree/BSD.include.dist#33 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/etc/mtree/BSD.include.dist,v 1.102 2005/10/03 07:09:40 scottl Exp $
+# $FreeBSD: src/etc/mtree/BSD.include.dist,v 1.103 2005/11/08 09:53:28 rwatson Exp $
 #
 # Please see the file src/etc/mtree/README before making changes to this file.
 #
@@ -48,8 +48,8 @@
         ..
         iicbus
         ..
-	lmc
-	..
+        lmc
+        ..
         ofw
         ..
         pbio

==== //depot/projects/trustedbsd/base/lib/bind/bind/Makefile#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/bind/Makefile,v 1.4 2004/09/24 18:42:04 dougb Exp $
+# $FreeBSD: src/lib/bind/bind/Makefile,v 1.5 2005/11/07 15:22:34 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -62,9 +62,6 @@
 		res_mkquery.c res_mkupdate.c res_query.c \
 		res_send.c res_sendsigned.c res_update.c
 
-DPADD=		${PTHREAD_DPADD}
-LDADD=		${PTHREAD_LDADD}
-
 #.if defined(WITH_BIND_LIBS)
 #INCS=		${SRCDIR}/include/isc/assertions.h \
 #		${SRCDIR}/include/isc/ctl.h \

==== //depot/projects/trustedbsd/base/lib/bind/bind9/Makefile#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/bind9/Makefile,v 1.4 2004/09/24 18:42:04 dougb Exp $
+# $FreeBSD: src/lib/bind/bind9/Makefile,v 1.5 2005/11/07 15:22:34 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -14,9 +14,6 @@
 
 CFLAGS+=	-I${SRCDIR}/include
 
-DPADD=		${PTHREAD_DPADD}
-LDADD=		${PTHREAD_LDADD}
-
 .if defined(WITH_BIND_LIBS)
 INCS=		${SRCDIR}/include/bind9/check.h \
 		${SRCDIR}/include/bind9/getaddresses.h \

==== //depot/projects/trustedbsd/base/lib/bind/dns/Makefile#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/dns/Makefile,v 1.5 2005/03/17 08:35:21 dougb Exp $
+# $FreeBSD: src/lib/bind/dns/Makefile,v 1.6 2005/11/07 15:22:34 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -37,8 +37,8 @@
 CFLAGS+=	-I${SRCDIR}/include/dst -I${SRCDIR}/include -I${SRCDIR}
 CFLAGS+=	-I${.CURDIR}
 
-DPADD=		${CRYPTO_DPADD} ${PTHREAD_DPADD}
-LDADD=		${CRYPTO_LDADD} ${PTHREAD_LDADD}
+DPADD=		${CRYPTO_DPADD}
+LDADD=		${CRYPTO_LDADD}
 
 .if defined(WITH_BIND_LIBS)
 DNSINCS=	${SRCDIR}/include/dns/acl.h \

==== //depot/projects/trustedbsd/base/lib/bind/isc/Makefile#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/isc/Makefile,v 1.5 2005/07/25 14:44:09 des Exp $
+# $FreeBSD: src/lib/bind/isc/Makefile,v 1.6 2005/11/07 15:22:34 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -38,9 +38,6 @@
 CFLAGS+=	-I${SRCDIR}/unix/include -I${SRCDIR}/nothreads/include
 CFLAGS+=	-I${SRCDIR}/include -I${.CURDIR}
 
-DPADD=		${PTHREAD_DPADD}
-LDADD=		${PTHREAD_LDADD}
-
 .if defined(WITH_BIND_LIBS)
 INCS=		${SRCDIR}/include/isc/app.h \
 		${SRCDIR}/include/isc/assertions.h \

==== //depot/projects/trustedbsd/base/lib/bind/isccc/Makefile#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/isccc/Makefile,v 1.4 2004/09/24 18:42:04 dougb Exp $
+# $FreeBSD: src/lib/bind/isccc/Makefile,v 1.5 2005/11/07 15:22:34 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -16,9 +16,6 @@
 
 CFLAGS+=	-I${SRCDIR}/include
 
-DPADD=		${PTHREAD_DPADD}
-LDADD=		${PTHREAD_LDADD}
-
 .if defined(WITH_BIND_LIBS)
 INCS=		${SRCDIR}/include/isccc/alist.h \
 		${SRCDIR}/include/isccc/base64.h \

==== //depot/projects/trustedbsd/base/lib/bind/isccfg/Makefile#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/isccfg/Makefile,v 1.4 2004/09/24 18:42:04 dougb Exp $
+# $FreeBSD: src/lib/bind/isccfg/Makefile,v 1.5 2005/11/07 15:22:34 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -14,9 +14,6 @@
 
 CFLAGS+=	-I${SRCDIR}/include -I${.CURDIR}
 
-DPADD=		${PTHREAD_DPADD}
-LDADD=		${PTHREAD_LDADD}
-
 .if defined(WITH_BIND_LIBS)
 INCS=		${SRCDIR}/include/isccfg/cfg.h \
 		${SRCDIR}/include/isccfg/grammar.h \

==== //depot/projects/trustedbsd/base/lib/bind/lwres/Makefile#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/bind/lwres/Makefile,v 1.7 2004/10/24 15:32:30 ru Exp $
+# $FreeBSD: src/lib/bind/lwres/Makefile,v 1.8 2005/11/07 15:22:35 ru Exp $
 
 BIND_DIR=	${.CURDIR}/../../../contrib/bind9
 LIB_BIND_REL=	..
@@ -24,9 +24,6 @@
 CFLAGS+=	-I${SRCDIR}/unix/include -I${SRCDIR}/include
 CFLAGS+=	-I${.CURDIR}
 
-DPADD=		${PTHREAD_DPADD}
-LDADD=		${PTHREAD_LDADD}
-
 .if defined(WITH_BIND_LIBS)
 MAN=		lwres.3 lwres_buffer.3 lwres_config.3 lwres_context.3 \
 		lwres_gabn.3 lwres_gai_strerror.3 lwres_getaddrinfo.3 \

==== //depot/projects/trustedbsd/base/lib/libarchive/archive.h.in#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/lib/libarchive/archive.h.in,v 1.25 2005/10/13 05:51:38 kientzle Exp $
+ * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.26 2005/11/08 07:41:03 kientzle Exp $
  */
 
 #ifndef ARCHIVE_H_INCLUDED
@@ -132,6 +132,10 @@
 #define	ARCHIVE_FORMAT_BASE_MASK		0xff0000U
 #define	ARCHIVE_FORMAT_CPIO			0x10000
 #define	ARCHIVE_FORMAT_CPIO_POSIX		(ARCHIVE_FORMAT_CPIO | 1)
+#define	ARCHIVE_FORMAT_CPIO_BIN_LE		(ARCHIVE_FORMAT_CPIO | 2)
+#define	ARCHIVE_FORMAT_CPIO_BIN_BE		(ARCHIVE_FORMAT_CPIO | 3)
+#define	ARCHIVE_FORMAT_CPIO_SVR4_NOCRC		(ARCHIVE_FORMAT_CPIO | 4)
+#define	ARCHIVE_FORMAT_CPIO_SVR4_CRC		(ARCHIVE_FORMAT_CPIO | 5)
 #define	ARCHIVE_FORMAT_SHAR			0x20000
 #define	ARCHIVE_FORMAT_SHAR_BASE		(ARCHIVE_FORMAT_SHAR | 1)
 #define	ARCHIVE_FORMAT_SHAR_DUMP		(ARCHIVE_FORMAT_SHAR | 2)

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_entry.c#14 (text+ko) ====

@@ -25,10 +25,17 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.32 2005/10/12 03:26:09 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.33 2005/11/08 03:52:42 kientzle Exp $");
 
 #include <sys/stat.h>
 #include <sys/types.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#else
+#ifdef MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
+#endif
 #ifdef HAVE_EXT2FS_EXT2_FS_H
 #include <ext2fs/ext2_fs.h>	/* for Linux file flags */
 #endif

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_private.h#12 (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/lib/libarchive/archive_private.h,v 1.20 2005/09/24 21:15:00 kientzle Exp $
+ * $FreeBSD: src/lib/libarchive/archive_private.h,v 1.21 2005/11/08 07:44:39 kientzle Exp $
  */
 
 #ifndef ARCHIVE_PRIVATE_H_INCLUDED
@@ -157,7 +157,7 @@
 		int	(*read_data_skip)(struct archive *);
 		int	(*cleanup)(struct archive *);
 		void	 *format_data;	/* Format-specific data for readers. */
-	}	formats[4];
+	}	formats[8];
 	struct archive_format_descriptor	*format; /* Active format. */
 
 	/*

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_compression_compress.c#4 (text+ko) ====

@@ -65,7 +65,7 @@
 
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_compression_compress.c,v 1.3 2004/10/17 23:40:10 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_compression_compress.c,v 1.4 2005/11/08 07:42:42 kientzle Exp $");
 
 #include <errno.h>
 #include <stdlib.h>
@@ -200,6 +200,7 @@
 		return (ARCHIVE_FATAL);
 	}
 	memset(state, 0, sizeof(*state));
+	a->compression_data = state;
 
 	state->uncompressed_buffer_size = 64 * 1024;
 	state->uncompressed_buffer = malloc(state->uncompressed_buffer_size);
@@ -217,12 +218,19 @@
 	state->avail_out = state->uncompressed_buffer_size;
 
 	code = getbits(a, state, 8);
-	if (code != 037)
+	if (code != 037) /* This should be impossible. */
 		goto fatal;
 
 	code = getbits(a, state, 8);
-	if (code != 0235)
+	if (code != 0235) {
+		/* This can happen if the library is receiving 1-byte
+		 * blocks and gzip and compress are both enabled.
+		 * You can't distinguish gzip and compress only from
+		 * the first byte. */
+		archive_set_error(a, ARCHIVE_ERRNO_FILE_FORMAT,
+		    "Compress signature did not match.");
 		goto fatal;
+	}
 
 	code = getbits(a, state, 8);
 	state->maxcode_bits = code & 0x1f;
@@ -242,8 +250,6 @@
 		state->suffix[code] = code;
 	}
 	next_code(a, state);
-	a->compression_data = state;
-
 	return (ARCHIVE_OK);
 
 fatal:
@@ -331,17 +337,19 @@
 finish(struct archive *a)
 {
 	struct private_data *state;
-	int ret;
+	int ret = ARCHIVE_OK;
 
 	state = a->compression_data;
-	ret = ARCHIVE_OK;
 
-	free(state->uncompressed_buffer);
-	free(state);
+	if (state != NULL) {
+		if (state->uncompressed_buffer != NULL)
+			free(state->uncompressed_buffer);
+		free(state);
+	}
 
 	a->compression_data = NULL;
 	if (a->client_closer != NULL)
-		(a->client_closer)(a, a->client_data);
+		ret = (a->client_closer)(a, a->client_data);
 
 	return (ret);
 }

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_format_cpio.c#9 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_cpio.c,v 1.14 2005/09/21 04:25:05 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_cpio.c,v 1.15 2005/11/08 07:41:03 kientzle Exp $");
 
 #include <sys/stat.h>
 
@@ -317,9 +317,6 @@
 	const struct cpio_newc_header *header;
 	size_t bytes;
 
-	a->archive_format = ARCHIVE_FORMAT_CPIO;
-	a->archive_format_name = "ASCII cpio (SVR4 with no CRC)";
-
 	/* Read fixed-size portion of header. */
 	bytes = (a->compression_read_ahead)(a, &h, sizeof(struct cpio_newc_header));
 	if (bytes < sizeof(struct cpio_newc_header))
@@ -328,6 +325,17 @@
 
 	/* Parse out hex fields into struct stat. */
 	header = h;
+
+	if (memcmp(header->c_magic, "070701", 6) == 0) {
+		a->archive_format = ARCHIVE_FORMAT_CPIO_SVR4_NOCRC;
+		a->archive_format_name = "ASCII cpio (SVR4 with no CRC)";
+	} else if (memcmp(header->c_magic, "070702", 6) == 0) {
+		a->archive_format = ARCHIVE_FORMAT_CPIO_SVR4_CRC;
+		a->archive_format_name = "ASCII cpio (SVR4 with CRC)";
+	} else {
+		/* TODO: Abort here? */
+	}
+
 	st->st_ino = atol16(header->c_ino, sizeof(header->c_ino));
 	st->st_mode = atol16(header->c_mode, sizeof(header->c_mode));
 	st->st_uid = atol16(header->c_uid, sizeof(header->c_uid));
@@ -360,7 +368,7 @@
 	const struct cpio_odc_header *header;
 	size_t bytes;
 
-	a->archive_format = ARCHIVE_FORMAT_CPIO;
+	a->archive_format = ARCHIVE_FORMAT_CPIO_POSIX;
 	a->archive_format_name = "POSIX octet-oriented cpio";
 
 	/* Read fixed-size portion of header. */
@@ -404,7 +412,7 @@
 	const struct cpio_bin_header *header;
 	size_t bytes;
 
-	a->archive_format = ARCHIVE_FORMAT_CPIO;
+	a->archive_format = ARCHIVE_FORMAT_CPIO_BIN_LE;
 	a->archive_format_name = "cpio (little-endian binary)";
 
 	/* Read fixed-size portion of header. */
@@ -441,7 +449,7 @@
 	const struct cpio_bin_header *header;
 	size_t bytes;
 
-	a->archive_format = ARCHIVE_FORMAT_CPIO;
+	a->archive_format = ARCHIVE_FORMAT_CPIO_BIN_BE;
 	a->archive_format_name = "cpio (big-endian binary)";
 
 	/* Read fixed-size portion of header. */

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_format_iso9660.c#5 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_iso9660.c,v 1.11 2005/11/06 23:38:01 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_iso9660.c,v 1.12 2005/11/08 07:41:03 kientzle Exp $");
 
 #include <sys/stat.h>
 
@@ -302,10 +302,7 @@
 
 	iso9660 = *(a->pformat_data);
 
-	if (iso9660->seenRockridge) {
-		a->archive_format = ARCHIVE_FORMAT_ISO9660_ROCKRIDGE;
-		a->archive_format_name = "ISO9660 with Rockridge extensions";
-	} else {
+	if (!a->archive_format) {
 		a->archive_format = ARCHIVE_FORMAT_ISO9660;
 		a->archive_format_name = "ISO9660";
 	}
@@ -402,6 +399,12 @@
 					continue;
 				child = parse_file_info(iso9660, file, dr);
 				add_entry(iso9660, child);
+				if (iso9660->seenRockridge) {
+					a->archive_format =
+					    ARCHIVE_FORMAT_ISO9660_ROCKRIDGE;
+					a->archive_format_name =
+					    "ISO9660 with Rockridge extensions";
+				}
 			}
 		}
 	}

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_read_support_format_tar.c#13 (text+ko) ====

@@ -25,9 +25,16 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_tar.c,v 1.38 2005/10/12 15:38:45 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_tar.c,v 1.39 2005/11/08 03:52:42 kientzle Exp $");
 
 #include <sys/stat.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#else
+#ifdef MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
+#endif
 #include <errno.h>
 #include <stddef.h>
 /* #include <stdint.h> */ /* See archive_platform.h */

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_write_set_format_pax.c#15 (text+ko) ====

@@ -25,9 +25,16 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_write_set_format_pax.c,v 1.31 2005/10/12 03:26:09 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_write_set_format_pax.c,v 1.32 2005/11/08 03:52:42 kientzle Exp $");
 
 #include <sys/stat.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#else
+#ifdef MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
+#endif
 #include <errno.h>
 #include <stdlib.h>
 #include <string.h>

==== //depot/projects/trustedbsd/base/lib/libarchive/archive_write_set_format_ustar.c#8 (text+ko) ====

@@ -25,9 +25,16 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_write_set_format_ustar.c,v 1.13 2005/09/21 04:25:06 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_write_set_format_ustar.c,v 1.14 2005/11/08 03:52:42 kientzle Exp $");
 
 #include <sys/stat.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#else
+#ifdef MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
+#endif
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>

==== //depot/projects/trustedbsd/base/release/doc/share/misc/dev.archlist.txt#8 (text+ko) ====

@@ -23,7 +23,7 @@
 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 # SUCH DAMAGE.
 #
-# $FreeBSD: src/release/doc/share/misc/dev.archlist.txt,v 1.70 2005/10/25 04:32:42 brueffer Exp $
+# $FreeBSD: src/release/doc/share/misc/dev.archlist.txt,v 1.71 2005/11/09 22:05:41 brueffer Exp $
 #
 
 #
@@ -64,7 +64,6 @@
 de	i386,pc98,alpha,ia64,amd64
 dpt	i386,ia64,amd64
 ed	i386,pc98
-em	i386,pc98,alpha,ia64,amd64
 ep	i386,pc98,amd64
 esp	sparc64
 ex	i386,amd64

==== //depot/projects/trustedbsd/base/sbin/kldconfig/kldconfig.c#6 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sbin/kldconfig/kldconfig.c,v 1.7 2005/02/10 09:19:29 ru Exp $");
+__FBSDID("$FreeBSD: src/sbin/kldconfig/kldconfig.c,v 1.8 2005/11/07 19:22:20 ru Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -270,7 +270,7 @@
 	
 	while ((p = strsep(&path, ";")) != NULL)
 		if (!uniq) {
-			if (((pe = malloc(sizeof(pe))) == NULL) ||
+			if (((pe = malloc(sizeof(*pe))) == NULL) ||
 			    ((pe->path = strdup(p)) == NULL)) {
 				errno = ENOMEM;
 				err(1, "allocating path element");

==== //depot/projects/trustedbsd/base/share/examples/cvsup/ports-supfile#9 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/share/examples/cvsup/ports-supfile,v 1.33 2004/12/19 02:31:45 brueffer Exp $
+# $FreeBSD: src/share/examples/cvsup/ports-supfile,v 1.34 2005/11/09 10:14:07 pav Exp $
 #
 # This file contains all of the "CVSup collections" that make up the
 # FreeBSD-current ports collection.
@@ -110,6 +110,7 @@
 #ports-misc
 #ports-multimedia
 #ports-net
+#ports-net-im
 #ports-net-mgmt
 #ports-news
 #ports-palm

==== //depot/projects/trustedbsd/base/share/man/man4/twa.4#5 (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/share/man/man4/twa.4,v 1.4 2005/02/27 13:14:28 brueffer Exp $
+.\" $FreeBSD: src/share/man/man4/twa.4,v 1.5 2005/11/09 00:23:54 vkashyap Exp $
 .\"
 .Dd August 15, 2004
 .Dt TWA 4
@@ -68,6 +68,16 @@
 AMCC's 3ware 9500S-12
 .It
 AMCC's 3ware 9500S-12MI
+.It
+AMCC's 3ware 9500SX-4LP
+.It
+AMCC's 3ware 9500SX-8LP
+.It
+AMCC's 3ware 9500SX-12
+.It
+AMCC's 3ware 9500SX-12MI
+.It
+AMCC's 3ware 9500SX-16ML
 .El
 .Sh DIAGNOSTICS
 Whenever the driver encounters a command failure, it prints out an error code in

==== //depot/projects/trustedbsd/base/share/man/man8/rescue.8#2 (text+ko) ====

@@ -23,7 +23,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/share/man/man8/rescue.8,v 1.1 2003/07/28 21:06:38 simon Exp $
+.\" $FreeBSD: src/share/man/man8/rescue.8,v 1.2 2005/11/10 06:36:06 kientzle Exp $
 .\"
 .Dd July 23, 2003
 .Os
@@ -145,11 +145,12 @@
 The
 .Nm
 system was written by
-.An Tim Kientzle Aq kientzle at acm.org .
+.An Tim Kientzle Aq kientzle at FreeBSD.org ,
+based on ideas taken from NetBSD.
 This manual page was written by
 .An Simon L. Nielsen Aq simon at FreeBSD.org ,
 based on text by
-.An Tim Kientzle Aq kientzle at acm.org .
+.An Tim Kientzle Aq kientzle at FreeBSD.org .
 .Sh BUGS
 Most of the
 .Nm

==== //depot/projects/trustedbsd/base/sys/alpha/alpha/pmap.c#45 (text+ko) ====

@@ -148,7 +148,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.183 2005/11/04 18:03:23 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.184 2005/11/09 08:19:19 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -317,11 +317,9 @@
  */
 static uma_zone_t pvzone;
 static int pv_entry_count = 0, pv_entry_max = 0, pv_entry_high_water = 0;
-int pmap_pagedaemon_waken;
 
 static PMAP_INLINE void	free_pv_entry(pv_entry_t pv);
-static pv_entry_t get_pv_entry(void);
-static pv_entry_t pv_entry_reclaim(pmap_t locked_pmap);
+static pv_entry_t get_pv_entry(pmap_t locked_pmap);
 static void	alpha_protection_init(void);
 static void	pmap_changebit(vm_page_t m, int bit, boolean_t setem);
 
@@ -1300,39 +1298,44 @@
 /*
  * get a new pv_entry, allocating a block from the system
  * when needed.
- * the memory allocation is performed bypassing the malloc code
- * because of the possibility of allocations at interrupt time.
  */
 static pv_entry_t
-get_pv_entry(void)
+get_pv_entry(pmap_t locked_pmap)
 {
-	pv_entry_count++;
-	if ((pv_entry_count > pv_entry_high_water) &&
-		(pmap_pagedaemon_waken == 0)) {
-		pmap_pagedaemon_waken = 1;
-		wakeup (&vm_pages_needed);
-	}
-	return uma_zalloc(pvzone, M_NOWAIT);
-}
-
-/*
- * Reclaim a pv entry by removing a mapping to an inactive page.
- */
-static pv_entry_t
-pv_entry_reclaim(pmap_t locked_pmap)
-{
+	static const struct timeval printinterval = { 60, 0 };
+	static struct timeval lastprint;
+	struct vpgqueues *vpq;
 	pmap_t pmap;
 	pt_entry_t *pte, tpte;
-	pv_entry_t pv;
+	pv_entry_t allocated_pv, next_pv, pv;
 	vm_offset_t va;
 	vm_page_t m;
 
 	PMAP_LOCK_ASSERT(locked_pmap, MA_OWNED);
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
-	TAILQ_FOREACH(m, &vm_page_queues[PQ_INACTIVE].pl, pageq) {
+	allocated_pv = uma_zalloc(pvzone, M_NOWAIT);
+	if (allocated_pv != NULL) {
+		pv_entry_count++;
+		if (pv_entry_count > pv_entry_high_water)
+			pagedaemon_wakeup();
+		else
+			return (allocated_pv);
+	}
+
+	/*
+	 * Reclaim pv entries: At first, destroy mappings to inactive
+	 * pages.  After that, if a pv entry is still needed, destroy
+	 * mappings to active pages.
+	 */
+	if (ratecheck(&lastprint, &printinterval))
+		printf("Approaching the limit on PV entries, "
+		    "increase the vm.pmap.shpgperproc tunable.\n");
+	vpq = &vm_page_queues[PQ_INACTIVE];

>>> TRUNCATED FOR MAIL (1000 lines) <<<


More information about the p4-projects mailing list