PERFORCE change 126898 for review

John Birrell jb at FreeBSD.org
Thu Sep 27 16:13:16 PDT 2007


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

Change 126898 by jb at jb_freebsd1 on 2007/09/27 23:12:47

	IFC

Affected files ...

.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml#11 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/audit/chapter.sgml#7 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#10 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml#7 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/eresources/chapter.sgml#7 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/geom/chapter.sgml#7 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/introduction/chapter.sgml#8 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml#9 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml#7 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml#9 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/ports/chapter.sgml#9 integrate
.. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/security/chapter.sgml#13 integrate
.. //depot/projects/dtrace/ports/MOVED#40 integrate
.. //depot/projects/dtrace/ports/Makefile#4 integrate
.. //depot/projects/dtrace/src/etc/rc.d/nscd#2 integrate
.. //depot/projects/dtrace/src/share/misc/committers-src.dot#2 integrate
.. //depot/projects/dtrace/src/sys/arm/arm/locore.S#5 integrate
.. //depot/projects/dtrace/src/sys/arm/conf/AVILA#3 integrate
.. //depot/projects/dtrace/src/sys/arm/xscale/ixp425/files.ixp425#3 integrate
.. //depot/projects/dtrace/src/sys/arm/xscale/ixp425/ixp425_npe.c#3 integrate
.. //depot/projects/dtrace/src/sys/arm/xscale/ixp425/ixp425_npevar.h#3 integrate
.. //depot/projects/dtrace/src/sys/contrib/dev/npe/IxNpeMicrocode.dat.uu#1 branch
.. //depot/projects/dtrace/src/sys/contrib/dev/npe/LICENSE#1 branch
.. //depot/projects/dtrace/src/sys/geom/geom_event.c#5 integrate
.. //depot/projects/dtrace/src/sys/kern/sched_ule.c#14 integrate
.. //depot/projects/dtrace/src/sys/vm/vm_object.c#14 integrate
.. //depot/projects/dtrace/src/sys/vm/vm_page.c#20 integrate
.. //depot/projects/dtrace/src/sys/vm/vm_page.h#9 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/Makefile#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agent.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agent.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/Makefile.inc#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/group.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/group.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/passwd.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/passwd.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/services.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/agents/services.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/cachelib.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/cachelib.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/cacheplcs.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/cacheplcs.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/config.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/config.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/debug.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/hashtable.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/log.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/log.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/mp_rs_query.#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/mp_rs_query.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/mp_rs_query.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/mp_ws_query.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/mp_ws_query.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/nscd.8#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/nscd.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/nscd.conf.5#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/nscdcli.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/nscdcli.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/parser.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/parser.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/protocol.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/protocol.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/query.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/query.h#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/singletons.c#2 integrate
.. //depot/projects/dtrace/src/usr.sbin/nscd/singletons.h#2 integrate
.. //depot/projects/dtrace/www/en/gnome/docs/develfaq.sgml#9 integrate
.. //depot/projects/dtrace/www/share/sgml/commercial.isp.xml#6 integrate

Differences ...

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml#11 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Chinese Documentation Project
 
-     Original revision: 1.398
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml,v 1.13 2007/08/09 15:40:36 loader Exp $
+     Original revision: 1.399
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml,v 1.14 2007/09/27 14:59:52 loader Exp $
 -->
 
 <chapter id="advanced-networking">
@@ -2519,6 +2519,85 @@
 	  ¿ÉÒÔʹÓÃÕû¸öµÄ <hostid role="netmask">/24</hostid> µØÖ·¿Õ¼ä£¬
 	  ¶øÎÞÐè»®·Ö×ÓÍø¡£</para>
       </sect3>
+
+      <sect3>
+	<title>SNMP ¹ÜÀí</title>
+
+	<para>ÍøÇÅ½Ó¿ÚºÍ STP ²ÎÊýÄܹ»ÓÉ &os; »ù±¾ÏµÍ³µÄ SNMP
+	  ÊØ»¤½ø³Ì½øÐйÜÀí¡£µ¼³öµÄÍøÇÅ MIB ·ûºÍ IETF ±ê×¼£¬
+	  ËùÒÔÈκΠSNMP ¿Í»§¶Ë»ò¹ÜÀí°ü¶¼¿ÉÒÔ±»ÓÃÀ´½ÓÊÕÊý¾Ý¡£</para>
+
+	<para>ÔÚÍøÇÅ»úÆ÷ÉÏ´Ó<filename>/etc/snmp.config</filename>
+	  ÎļþÖÐÈ¥µôÒÔÏÂÕâÐеÄ×¢ÊÍ
+	  <literal>begemotSnmpdModulePath."bridge" =
+	  "/usr/lib/snmp_bridge.so"</literal>
+	  ²¢Æô¶¯ <application>bsnmpd</application> ÊØ»¤½ø³Ì¡£
+	  ÆäËûµÄÅäÖÃÑ¡ÏîÖîÈç community names ºÍ access lists
+	  ¿ÉÄÜÒ²ÐíÒ²ÐèÒªÐ޸ġ£ ²ÎÔÄ &man.bsnmpd.1; ºÍ 
+	  &man.snmp.bridge.3; »ñÈ¡¸ü¶àÐÅÏ¢¡£</para>
+
+	<para>ÒÔϵÄÀý×ÓÖÐʹÓÃÁË
+	  <application>Net-SNMP</application> Èí¼þ 
+	  (<filename role="package">net-mgmt/net-snmp</filename>)
+	  À´²éѯһ¸öÍøÇÅ£¬µ±È»Í¬ÑùÒ²Äܹ»Ê¹ÓÃport
+	  <filename role="package">net-mgmt/bsnmptools</filename>¡£
+	  ÔÚ SNMP ¿Í»§¶Ë <application>Net-SNMP</application>
+	  µÄÅäÖÃÎļþ <filename>$HOME/.snmp/snmp.conf</filename> ÖÐ
+	  ¼ÓÈëÒÔϼ¸ÐÐÀ´µ¼ÈëÍøÇÅµÄ MIB ¶¨Ò壺</para>
+
+	<programlisting>mibdirs +/usr/share/snmp/mibs
+mibs +BRIDGE-MIB:RSTP-MIB:BEGEMOT-MIB:BEGEMOT-BRIDGE-MIB</programlisting>
+
+	<para>ͨ¹ý IETF BRIDGE-MIB(RFC4188) ¼à²âÒ»¸öµ¥¶ÀµÄÍøÇÅ</para>
+
+	<screen>&prompt.user; <userinput>snmpwalk -v 2c -c public bridge1.example.com mib-2.dot1dBridge</userinput>
+BRIDGE-MIB::dot1dBaseBridgeAddress.0 = STRING: 66:fb:9b:6e:5c:44
+BRIDGE-MIB::dot1dBaseNumPorts.0 = INTEGER: 1 ports
+BRIDGE-MIB::dot1dStpTimeSinceTopologyChange.0 = Timeticks: (189959) 0:31:39.59 centi-seconds
+BRIDGE-MIB::dot1dStpTopChanges.0 = Counter32: 2
+BRIDGE-MIB::dot1dStpDesignatedRoot.0 = Hex-STRING: 80 00 00 01 02 4B D4 50
+...
+BRIDGE-MIB::dot1dStpPortState.3 = INTEGER: forwarding(5)
+BRIDGE-MIB::dot1dStpPortEnable.3 = INTEGER: enabled(1)
+BRIDGE-MIB::dot1dStpPortPathCost.3 = INTEGER: 200000
+BRIDGE-MIB::dot1dStpPortDesignatedRoot.3 = Hex-STRING: 80 00 00 01 02 4B D4 50
+BRIDGE-MIB::dot1dStpPortDesignatedCost.3 = INTEGER: 0
+BRIDGE-MIB::dot1dStpPortDesignatedBridge.3 = Hex-STRING: 80 00 00 01 02 4B D4 50
+BRIDGE-MIB::dot1dStpPortDesignatedPort.3 = Hex-STRING: 03 80
+BRIDGE-MIB::dot1dStpPortForwardTransitions.3 = Counter32: 1
+RSTP-MIB::dot1dStpVersion.0 = INTEGER: rstp(2)</screen>
+
+	<para><literal>dot1dStpTopChanges.0</literal>µÄֵΪ2
+	  Òâζ×Å STP ÍøÇÅÍØÆ˸ıäÁË2´Î£¬ÍØÆ˵ĸıä±íʾ1¸ö»ò¶à¸ö
+	  ÍøÂçÖеÄÁ¬½Ó¸Ä±ä»òʧЧ²¢ÇÒÓÐÒ»¸öÐÂÊ÷Éú³É¡£
+	  <literal>dot1dStpTimeSinceTopologyChange.0</literal>
+	  µÄÖµÔòÄܹ»ÏÔʾÕâÊǺÎʱ¸Ä±äµÄ¡£</para>
+
+	<para>¼à²â¶à¸öÍøÇŽӿڿÉÒÔʹÓà private 
+	  BEGEMOT-BRIDGE-MIB£º</para>
+
+	<screen>&prompt.user; <userinput>snmpwalk -v 2c -c public bridge1.example.com</userinput>
+enterprises.fokus.begemot.begemotBridge
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseName."bridge0" = STRING: bridge0
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseName."bridge2" = STRING: bridge2
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseAddress."bridge0" = STRING: e:ce:3b:5a:9e:13
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseAddress."bridge2" = STRING: 12:5e:4d:74:d:fc
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseNumPorts."bridge0" = INTEGER: 1
+BEGEMOT-BRIDGE-MIB::begemotBridgeBaseNumPorts."bridge2" = INTEGER: 1
+...
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTimeSinceTopologyChange."bridge0" = Timeticks: (116927) 0:19:29.27 centi-seconds
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTimeSinceTopologyChange."bridge2" = Timeticks: (82773) 0:13:47.73 centi-seconds
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTopChanges."bridge0" = Counter32: 1
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpTopChanges."bridge2" = Counter32: 1
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpDesignatedRoot."bridge0" = Hex-STRING: 80 00 00 40 95 30 5E 31
+BEGEMOT-BRIDGE-MIB::begemotBridgeStpDesignatedRoot."bridge2" = Hex-STRING: 80 00 00 50 8B B8 C6 A9</screen>
+
+	<para>ͨ¹ý <literal>mib-2.dot1dBridge</literal>
+	  ×ÓÊ÷¸Ä±äÕýÔÚ±»¼à²âµÄÍøÇŽӿڣº</para>
+
+	<screen>&prompt.user; <userinput>snmpset -v 2c -c private bridge1.example.com</userinput>
+BEGEMOT-BRIDGE-MIB::begemotBridgeDefaultBridgeIf.0 s bridge2</screen>
+      </sect3>
     </sect2>
   </sect1>
 

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/audit/chapter.sgml#7 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.28
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/audit/chapter.sgml,v 1.6 2007/08/09 15:40:36 loader Exp $
+     Original Revision: 1.30
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/audit/chapter.sgml,v 1.7 2007/09/27 14:59:52 loader Exp $
 -->
 
 <!-- Need more documentation on praudit, auditreduce, etc.  Plus more info
@@ -62,6 +62,7 @@
 
       <listitem>
 	<para>ÈçºÎʹÓÃÉó¼Æ¼Ç¼ժҪºÍ¸´É󹤾ßÀ´¶ÔÉó¼Æ¼Ç¼½øÐи´Éó¡£</para>
+      </listitem>
     </itemizedlist>
 
     <para>ÔĶÁÕâÕÂ֮ǰ£¬ ÄúÓ¦¸Ã£º</para>

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#10 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.148
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.13 2007/08/09 15:40:36 loader Exp $
+     Original Revision: 1.149
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.14 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="basics">
@@ -1539,15 +1539,6 @@
 
       <variablelist>
 	<varlistentry>
-	  <term>nodev</term>
-
-	  <listitem>
-	    <para>¾Ü¾ø°ÑÎļþϵͳʶ±ðΪÌرðµÄÉ豸¡£ÕâÊÇÒ»¸öÓÐÓõݲȫѡÏî¡£
-	      </para>
-	  </listitem>
-	</varlistentry>
-
-	<varlistentry>
 	  <term>noexec</term>
 
 	  <listitem>

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml#7 (text+ko) ====

@@ -3,7 +3,7 @@
      The FreeBSD Simplified Chinese Project
 
      Original Revision: 1.227
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml,v 1.8 2007/08/09 15:40:37 loader Exp $
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml,v 1.9 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="cutting-edge">
@@ -60,7 +60,7 @@
     <para>¶ÁÁ˱¾Õºó£¬Äú½«Á˽⵽£º</para>
 
     <itemizedlist>
-      <listitem><para>&os.stable; ºÍ &os.current;Á½¸ö·¢Õ¹·ÖÖ§µÄ²»Í¬µã¡£</para>
+      <listitem><para>&os.stable; ºÍ &os.current;Á½¸ö¿ª·¢·ÖÖ§µÄ²»Í¬µã¡£</para>
       </listitem>
       <listitem><para>ÔõÑùʹÓÃ<application>CVSup</application>£¬
 	  <application>CVS</application>»ò

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/eresources/chapter.sgml#7 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.182
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/eresources/chapter.sgml,v 1.8 2007/08/09 15:40:37 loader Exp $
+     Original Revision: 1.183
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/eresources/chapter.sgml,v 1.9 2007/09/27 14:59:53 loader Exp $
 -->
 
 <appendix id="eresources">
@@ -30,6 +30,12 @@
   	ÏÖÔÚ¶©ÔÄÕâЩÓʼþÁбíµÄÈËÿÌ춼»áÊÕµ½ÉÏ°Ù·â¹ØÓÚFreeBSDµÄÐżþ¡£
 	ÉèÁ¢ÁбíµÄʹÓÃÌõÎÄÓÐÖúÓÚά»¤ÌÖÂÛÖÊÁ¿¡£·ñÔòÕâЩÌÖÂۼƻ®µÄÁÐ±í½«Ê§È¥ÆäÒâÒå¡£</para>
 
+    <note>
+      <para><emphasis>Èç¹ûÄãÏëÒª³¢ÊÔ·¢ËÍÒ»·âÓʼþµ½
+	&os; ÓʼþÁÐ±í£¬Äã¿ÉÒÔ°ÑÓʼþ·¢Íù &a.test.name;¡£</emphasis>
+      Çë²»ÒªÍùÆäËûµÄÁÐ±í·¢ËͲâÊÔÓʼþ¡£</para>
+    </note>
+
     <para>Èç¹û²»ÖªµÀÄĸöÓʼþÁбíÊʺÏÓÚ·¢ËÍÄúµÄÎÊÌ⣬ Çë²Î¼û <ulink
       url="&url.articles.freebsd-questions;">ÈçºÎ´Ó
         FreeBSD-questions ÓʼþÁбíÖиü¿ìµØµÃµ½´ð°¸</ulink>¡£</para>

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/geom/chapter.sgml#7 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.30
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/geom/chapter.sgml,v 1.8 2007/08/09 15:40:37 loader Exp $
+     Original Revision: 1.32
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/geom/chapter.sgml,v 1.9 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="GEOM">
@@ -67,6 +67,8 @@
       <listitem>
 	<para>Àí½â &os; ÈçºÎ´¦Àí´ÅÅÌÉ豸
 	  (<xref linkend="disks">)¡£</para>
+      </listitem>
+
       <listitem>
 	<para>Á˽âÈçºÎÅäÖúͰ²×°Ð嵀 &os; ÄÚºË
 	  (<xref linkend="kernelconfig">)¡£</para>

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/introduction/chapter.sgml#8 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.119
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/introduction/chapter.sgml,v 1.12 2007/08/09 15:40:38 loader Exp $
+     Original Revision: 1.120
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/introduction/chapter.sgml,v 1.13 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="introduction">
@@ -60,7 +60,7 @@
       ÄúÒ²¿ÉÒÔÔĶÁ <link linkend="history">FreeBSD µÄÀúÊ·</link>£¬
       »òÕß<link linkend="relnotes">×îеķ¢Ðа汾</link>¡£
       Èç¹ûÄúÓÐÒâ¾èÖú(´úÂ룬
-      Ó²¼þ£¬²»¼ÇÃû¾è¿î)£¬Çë¿´<ulink
+      Ó²¼þ£¬»ù½ð)£¬Çë¿´<ulink
 	url="&url.articles.contributing;/index.html">Ϊ FreeBSD Ìṩ°ïÖú</ulink>ÕâƪÎÄÕ¡£</para>
 
     <sect2 id="os-overview">
@@ -89,7 +89,7 @@
 	<listitem>
 	  <para>·ûºÏÒµ½ç±ê×¼µÄÇ¿´ó <emphasis>TCP/IP ÍøÂç</emphasis> Ö§³Ö£¬
 	    ÀýÈç SCTP¡¢ DHCP¡¢ NFS¡¢
-	    NIS¡¢ PPP£¬ ÒÔ¼° SLIP¡£
+	    NIS¡¢ PPP£¬ SLIP£¬ IPsec ÒÔ¼° IPv6¡£
 	    ÕâÒâζ×ÅÄúµÄ FreeBSD Ö÷»ú¿ÉÒÔºÜÈÝÒ׵غÍÆäËûϵͳ»¥Áª£¬
 	    Ò²¿ÉÒÔ×÷ΪÆóÒµµÄ·þÎñÆ÷£¬ÌṩÖØÒªµÄ¹¦ÄÜ£¬
 	    ±ÈÈç NFS(Ô¶³ÌÎļþ·ÃÎÊ)ÒÔ¼° email ·þÎñ£¬ »ò½«ÄúµÄ×éÖ¯½ÓÈë
@@ -115,7 +115,7 @@
 
 	<listitem>
 	  <para>Òµ½ç±ê×¼µÄ <emphasis>X Window ϵͳ</emphasis>
-	    (X11R6)Ϊ±ãÒ˵ij£¼û VGA ÏÔʾ¿¨ºÍ¼àÊÓÆ÷ÌṩÁËÒ»¸öͼÐλ¯µÄÓû§½çÃæ(GUI)£¬
+	    (X11R7)Ϊ±ãÒ˵ij£¼û VGA ÏÔʾ¿¨ºÍ¼àÊÓÆ÷ÌṩÁËÒ»¸öͼÐλ¯µÄÓû§½çÃæ(GUI)£¬
 	    ²¢ÇÒÍêÈ«¿ª·Å´úÂë¡£</para>
 	</listitem>
 
@@ -251,6 +251,10 @@
 	        [SSL])</para>
 	    </listitem>
 
+	    <listitem>
+	      <para>IPv4 and IPv6 ·ÓÉ</para>
+	    </listitem>
+
 	    <indexterm><primary>·À»ðǽ</primary></indexterm>
 	    <indexterm><primary>NAT</primary></indexterm>
 	    <listitem>

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml#9 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Chinese Documentation Project
 
-     Original Revision: 1.174
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml,v 1.13 2007/08/09 15:40:38 loader Exp $
+     Original Revision: 1.176
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml,v 1.14 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="kernelconfig">
@@ -270,7 +270,15 @@
 
       <programlisting>MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfs</programlisting>
 
-      <para>Õâ¸ö±äÁ¿µÄÄÚÈÝÊÇËùÏ£Íû¹¹½¨µÄÄ£¿éÁÐ±í¡£
+      <para>Õâ¸ö±äÁ¿µÄÄÚÈÝÊÇËùÏ£Íû¹¹½¨µÄÄ£¿éÁÐ±í¡£</para>
+
+      <programlisting>WITHOUT_MODULES = linux acpi sound/sound sound/driver/ds1 ntfs</programlisting>
+
+      <para>This variable sets up a list of modules to exclude
+	from the build process.  For other variables which you may find useful
+	in the process of building kernel, refer to &man.make.conf.5;
+	manual page.</para>
+      <para>Õâ¸ö±äÁ¿µÄÄÚÈÝÊÇÔÚÁª±à¹ý³ÌÖн«²»±»±àÒëµÄÄ£¿éÁÐ±í¡£
 	Èç¹ûÏ£ÍûÁ˽â¸ü¶àÓë¹¹½¨ÄÚºËÓйصıäÁ¿£¬ Çë²Î¼û &man.make.conf.5;
 	Áª»úÊֲᡣ</para>
     </tip>
@@ -894,6 +902,7 @@
 device          dc         # DEC/Intel 21143 and various workalikes
 device          fxp        # Intel EtherExpress PRO/100B (82557, 82558)
 device          lge        # Level 1 LXT1001 gigabit ethernet
+device          msk        # Marvell/SysKonnect Yukon II Gigabit Ethernet
 device          nge        # NatSemi DP83820 gigabit ethernet
 device          nve        # nVidia nForce MCP on-board Ethernet Networking
 device          pcn        # AMD Am79C97x PCI 10/100 (precedence over 'lnc')

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml#7 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Documentation Project
 
-     Original Revision: 1.127
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml,v 1.11 2007/08/09 15:40:39 loader Exp $
+     Original Revision: 1.128
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml,v 1.12 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="multimedia">

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml#9 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.99
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml,v 1.15 2007/08/09 15:40:39 loader Exp $
+     Original Revision: 1.101
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml,v 1.16 2007/09/27 14:59:53 loader Exp $
 -->
 
 <chapter id="network-servers">
@@ -136,13 +136,21 @@
       <para><application>inetd</application> ÊÇͨ¹ý &man.rc.8; ϵͳÆô¶¯µÄ¡£
 	<literal>inetd_enable</literal> Ñ¡ÏîĬÈÏÉèΪ
 	<literal>NO</literal>£¬ µ«¿ÉÒÔÔÚ°²×°ÏµÍ³Ê±£¬
-	ÓÉÓû§¸ù¾ÝÐèҪͨ¹ý <application>sysinstall</application> À´´ò¿ª¡£ ½«
-	<programlisting>inetd_enable="YES"</programlisting> »ò
-	<programlisting>inetd_enable="NO"</programlisting> дÈë
+	ÓÉÓû§¸ù¾ÝÐèҪͨ¹ý <application>sysinstall</application> À´´ò¿ª¡£
+	½«£º</para>
+
+      <programlisting>inetd_enable="YES"</programlisting>
+
+      <para>»ò</para>
+
+      <programlisting>inetd_enable="NO"</programlisting>
+
+      <para>дÈë
 	<filename>/etc/rc.conf</filename> ¿ÉÒÔÆôÓûò½ûÓÃϵͳÆô¶¯Ê±
-	<application>inetd</application> µÄ×Ô¶¯Æô¶¯¡£ ÃüÁ
-	<programlisting>/etc/rc.d/inetd rcvar</programlisting>
-	¿ÉÒÔÏÔʾĿǰµÄÉèÖá£</para>
+	<application>inetd</application> µÄ×Ô¶¯Æô¶¯¡£ ÃüÁ</para>
+
+      <screen>&prompt.root; <userinput>/etc/rc.d/inetd rcvar</userinput></screen>
+      <para>¿ÉÒÔÏÔʾĿǰµÄÉèÖá£</para>
 
       <para>´ËÍ⣬ Äú»¹¿ÉÒÔͨ¹ý
 	<literal>inetd_flags</literal> ²ÎÊýÀ´Ïò <application>inetd</application>

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/ports/chapter.sgml#9 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Documentation Project
 
-     Original Revision: 1.267
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/ports/chapter.sgml,v 1.12 2007/08/09 15:40:39 loader Exp $
+     Original Revision: 1.268
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/ports/chapter.sgml,v 1.13 2007/09/27 14:59:54 loader Exp $
 -->
 
 <chapter id="ports">
@@ -1051,7 +1051,7 @@
 	<application>portupgrade</application> ½«Ê¹Óà ports¡£
 	Òª½ûֹʹÓà port£¬ ¿ÉÒÔÖ¸¶¨ <option>-PP</option>¡£</para>
 
-      <screen>&prompt.root; <userinput>portupgrade -PR gnome2</userinput></screen>
+      <screen>&prompt.root; <userinput>portupgrade -PP gnome2</userinput></screen>
 
       <para>Èç¹ûÖ»ÏëÏÂÔØ distfiles (»òÕߣ¬ Èç¹ûÖ¸¶¨ÁË <option>-P</option>
 	µÄ»°£¬ ÊÇ packages) ¶ø²»Ïë¹¹½¨»ò°²×°Èκζ«Î÷£¬

==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/security/chapter.sgml#13 (text+ko) ====

@@ -2,8 +2,8 @@
      The FreeBSD Documentation Project
      The FreeBSD Simplified Chinese Project
 
-     Original Revision: 1.313
-     $FreeBSD: doc/zh_CN.GB2312/books/handbook/security/chapter.sgml,v 1.17 2007/08/09 15:40:39 loader Exp $
+     Original Revision: 1.314
+     $FreeBSD: doc/zh_CN.GB2312/books/handbook/security/chapter.sgml,v 1.18 2007/09/27 14:59:54 loader Exp $
 -->
 
 <chapter id="security">
@@ -590,9 +590,8 @@
 	<literal>MD5</literal> À´½øÐмì²é¡£</para>
 
       <para>Èç¹ûÄúµÄÓû§´ÅÅÌ¿Õ¼äºÜ´ó£¬ ¼ì²éÕâÖÖ·ÖÇøÉÏÃæµÄÎļþ¿ÉÄܷdz£ºÄʱ¡£
-	ÕâÖÖÇé¿öÏ£¬ ²ÉÓñêÖ¾À´½ûֹʹÓà suid ¿ÉÖ´ÐÐÎļþºÍÉ豸ÔÚÕâЩÎļþϵͳÉϳöÏÖ½«ÊÇÒ»¸öºÃÖ÷Òâ¡£
-	Äú¿ÉÄÜ»áÏë¿´¿´ <literal>nodev</literal> ºÍ
-	<literal>nosuid</literal> ÕâÁ½¸öÑ¡Ïî (²Î¼û &man.mount.8;)¡£
+	ÕâÖÖÇé¿öÏ£¬ ²ÉÓñêÖ¾À´½ûֹʹÓà suid ¿ÉÖ´ÐÐÎļþ½«ÊÇÒ»¸öºÃÖ÷Òâ¡£
+	Äú¿ÉÄÜ»áÏë¿´¿´ <literal>nosuid</literal> Ñ¡Ïî £¨²Î¼û &man.mount.8;£©¡£
 	¾¡¹ÜÈç´Ë£¬ ÕâЩɨÃèÈÔȻӦ¸ÃÖÁÉÙÿÖܽøÐÐÒ»´Î£¬ ÕâÑù×öµÄÒâÒå²¢²»ÊǼì²âÓÐЧµÄ¹¥»÷£¬
 	¶øÊǼì²é¹¥»÷Æóͼ¡£</para>
 

==== //depot/projects/dtrace/ports/MOVED#40 (text+ko) ====

@@ -1,7 +1,7 @@
 #
 # MOVED - a list of (recently) moved or removed ports
 #
-# $FreeBSD: ports/MOVED,v 1.1485 2007/09/26 11:17:06 rafan Exp $
+# $FreeBSD: ports/MOVED,v 1.1486 2007/09/27 20:23:44 tabthorpe Exp $
 #
 # Each entry consists of a single line containing the following four
 # fields in the order named, separated with the pipe (`|') character:
@@ -3244,3 +3244,5 @@
 graphics/blender-devel|graphics/blender|2007-09-21|Not needed since binary version is gone
 print/ghostscript-afpl|print/ghostscript-gpl|2007-09-24|Replaced by print/ghostscript-gpl
 print/ghostscript-afpl-nox11|print/ghostscript-gpl-nox11|2007-09-24|Replaced by print/ghostscript-gpl-nox11
+misc/mango||2007-09-27|Has expired: Depends on broken package qextmdi
+lang/f2py||2007-09-27|Has expired: Replaced by py-numpy

==== //depot/projects/dtrace/ports/Makefile#4 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: ports/Makefile,v 1.102 2007/05/24 23:58:29 linimon Exp $
+# $FreeBSD: ports/Makefile,v 1.103 2007/09/27 05:36:26 linimon Exp $
 #
 
 SUBDIR += accessibility
@@ -163,9 +163,6 @@
 	@echo ">>> Updating ${.CURDIR} from cvs repository" ${CVSROOT}
 	@echo "--------------------------------------------------------------"
 	cd ${.CURDIR}; ${CVS} -R -q update -A -P -d -I!
-.elif defined(SUP_UPDATE) && !defined(PORTSSUPFILE)
-	@${ECHO_MSG} "Error: Please define PORTSSUPFILE before doing make update."
-	@exit 1
 .else
 	@echo "--------------------------------------------------------------"
 	@echo ">>> Running ${PORTSNAP}"

==== //depot/projects/dtrace/src/etc/rc.d/nscd#2 (text+ko) ====

@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $FreeBSD: src/etc/rc.d/nscd,v 1.4 2007/08/09 13:06:11 bushman Exp $
+# $FreeBSD: src/etc/rc.d/nscd,v 1.5 2007/09/27 12:30:12 bushman Exp $
 #
 
 # PROVIDE: nscd

==== //depot/projects/dtrace/src/share/misc/committers-src.dot#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/share/misc/committers-src.dot,v 1.63 2007/06/25 14:28:11 scf Exp $
+# $FreeBSD: src/share/misc/committers-src.dot,v 1.65 2007/09/27 20:11:32 rpaulo Exp $
 
 # This file is meant to list all FreeBSD src committers and describe the
 # mentor-mentee relationships between them.
@@ -135,6 +135,7 @@
 remko [label="Remko Lodder\nremko at FreeBSD.org\n2007/02/23"]
 rik [label="Roman Kurakin\nrik at FreeBSD.org\n2003/12/18"]
 rink [label="Rink Springer\nrink at FreeBSD.org\n2006/01/16"]
+rpaulo [label="Rui Paulo\nrpaulo at FreeBSD.org\n2007/09/25"]
 rrs [label="Randall R Stewart\nrrs at FreeBSD.org\n2007/02/08"]
 rse [label="Ralf S. Engelschall\nrse at FreeBSD.org\n1997/07/31"]
 ru [label="Ruslan Ermilov\nru at FreeBSD.org\n1999/05/27"]
@@ -301,6 +302,7 @@
 
 njl -> marks
 njl -> philip
+njl -> rpaulo
 njl -> sepotvin
 
 obrien -> benno

==== //depot/projects/dtrace/src/sys/arm/arm/locore.S#5 (text+ko) ====

@@ -37,7 +37,7 @@
 #include <machine/asm.h>
 #include <machine/armreg.h>
 #include <machine/pte.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.16 2007/02/26 02:03:48 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.17 2007/09/27 20:52:17 cognet Exp $");
 
 /* What size should this really be ? It is only used by initarm() */
 #define INIT_ARM_STACK_SIZE	2048
@@ -134,7 +134,7 @@
 	adds	r1, r1, #-1
 	bhi	2b
 3:
-	ldmia	r4!, {r1,r2,r3}   /* # of sections, PA|attr, VA */
+	ldmia	r4!, {r1,r2,r3}   /* # of sections, VA, PA|attr */
 	cmp	r1, #0
 	adrne	r5, 2b
 	bicne	r5, r5, #0xff000000

==== //depot/projects/dtrace/src/sys/arm/conf/AVILA#3 (text+ko) ====

@@ -16,7 +16,7 @@
 # If you are in doubt as to the purpose or necessity of a line, check first 
 # in NOTES.
 #
-# $FreeBSD: src/sys/arm/conf/AVILA,v 1.4 2007/05/24 16:27:48 sam Exp $
+# $FreeBSD: src/sys/arm/conf/AVILA,v 1.6 2007/09/27 22:39:49 cognet Exp $
 
 machine		arm
 ident		AVILA
@@ -104,8 +104,8 @@
 device		avila_ata	# Gateworks CF/IDE support
 
 device		npe		# Network Processing Engine
-device		npe_fw		# NPE firmware
-device		firmware	# firmware support for npe_fw
+device		npe_fw
+device		firmware
 device		qmgr		# Q Manager (required by npe)
 device		miibus		# NB: required by npe
 device		ether

==== //depot/projects/dtrace/src/sys/arm/xscale/ixp425/files.ixp425#3 (text+ko) ====

@@ -1,4 +1,4 @@
-#$FreeBSD: src/sys/arm/xscale/ixp425/files.ixp425,v 1.2 2006/12/07 00:49:33 sam Exp $
+#$FreeBSD: src/sys/arm/xscale/ixp425/files.ixp425,v 1.4 2007/09/27 22:39:49 cognet Exp $
 arm/arm/cpufunc_asm_xscale.S		standard
 arm/arm/irq_dispatch.S			standard
 arm/xscale/ixp425/ixp425.c		standard
@@ -16,12 +16,7 @@
 arm/xscale/ixp425/ixp425_a4x_io.S	optional	uart
 dev/uart/uart_dev_ns8250.c		optional	uart
 #
-# NPE-based Ethernet support (requires qmgr also).  Note the
-# firmware images must be downloaded from the Intel web site.
-# The URL seems to change frequently; try this as a starting
-# place:
-#
-# http://www.intel.com/design/network/products/npfamily/download_ixp400.htm
+# NPE-based Ethernet support (requires qmgr also).
 #
 arm/xscale/ixp425/if_npe.c		optional npe
 arm/xscale/ixp425/ixp425_npe.c		optional npe
@@ -41,7 +36,7 @@
 	clean		"IxNpeMicrocode.fwo"
 IxNpeMicrocode.dat			optional npe_fw			\
 	dependency	".PHONY"					\
-	compile-with	"if [ -e $S/arm/xscale/ixp425/IxNpeMicrocode.dat ]; then ln -sf $S/arm/xscale/ixp425/IxNpeMicrocode.dat .; else echo 'WARNING, no IxNpeMicrocode.dat file; you must obtain this from the Intel web site'; false; fi" \
+	compile-with	"uudecode < $S/contrib/dev/npe/IxNpeMicrocode.dat.uu" \
 	no-obj no-implicit-rule						\
 	clean		"IxNpeMicrocode.dat"
 #

==== //depot/projects/dtrace/src/sys/arm/xscale/ixp425/ixp425_npe.c#3 (text+ko) ====

@@ -57,7 +57,7 @@
  * SUCH DAMAGE.
 */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_npe.c,v 1.6 2007/05/24 16:31:22 sam Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_npe.c,v 1.8 2007/09/27 22:39:49 cognet Exp $");
 
 /*
  * Intel XScale Network Processing Engine (NPE) support.

==== //depot/projects/dtrace/src/sys/arm/xscale/ixp425/ixp425_npevar.h#3 (text+ko) ====

@@ -21,7 +21,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/arm/xscale/ixp425/ixp425_npevar.h,v 1.2 2007/05/24 16:31:22 sam Exp $
+ * $FreeBSD: src/sys/arm/xscale/ixp425/ixp425_npevar.h,v 1.4 2007/09/27 22:39:49 cognet Exp $
  */
 
 #ifndef _IXP425_NPEVAR_H_

==== //depot/projects/dtrace/src/sys/geom/geom_event.c#5 (text+ko) ====

@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/geom/geom_event.c,v 1.55 2006/09/10 09:11:54 pjd Exp $");
+__FBSDID("$FreeBSD: src/sys/geom/geom_event.c,v 1.56 2007/09/27 20:18:34 pjd Exp $");
 
 #include <sys/param.h>
 #include <sys/malloc.h>
@@ -145,6 +145,8 @@
 	G_VALID_PROVIDER(pp);
 	g_trace(G_T_TOPOLOGY, "g_orphan_register(%s)", pp->name);
 
+	g_cancel_event(pp);
+
 	wf = pp->flags & G_PF_WITHER;
 	pp->flags &= ~G_PF_WITHER;
 

==== //depot/projects/dtrace/src/sys/kern/sched_ule.c#14 (text+ko) ====

@@ -36,7 +36,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.209 2007/09/24 00:28:54 jeff Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.210 2007/09/27 16:39:27 jeff Exp $");
 
 #include "opt_hwpmc_hooks.h"
 #include "opt_sched.h"
@@ -71,8 +71,8 @@
 #include <machine/cpu.h>
 #include <machine/smp.h>
 
-#ifndef PREEMPTION
-#error	"SCHED_ULE requires options PREEMPTION"
+#if !defined(__i386__) && !defined(__amd64__)
+#error "This architecture is not currently compatible with ULE"
 #endif
 
 #define	KTR_ULE	0
@@ -174,7 +174,15 @@
 static int realstathz;
 static int tickincr;
 static int sched_slice;
+#ifdef PREEMPTION
+#ifdef FULL_PREEMPTION
+static int preempt_thresh = PRI_MAX_IDLE;
+#else
 static int preempt_thresh = PRI_MIN_KERN;
+#endif
+#else 
+static int preempt_thresh = 0;
+#endif
 
 /*
  * tdq - per processor runqs and statistics.  All fields are protected by the

==== //depot/projects/dtrace/src/sys/vm/vm_object.c#14 (text+ko) ====

@@ -63,7 +63,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/vm/vm_object.c,v 1.384 2007/09/25 21:01:10 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/vm/vm_object.c,v 1.385 2007/09/27 04:21:59 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -653,7 +653,7 @@
 	vm_page_unlock_queues();
 
 	if (__predict_false(object->cache != NULL))
-		vm_page_cache_free(object);
+		vm_page_cache_free(object, 0, 0);
 
 	/*
 	 * Let the pager know object is dead.
@@ -1680,7 +1680,7 @@
 				 * Free any cached pages from backing_object.
 				 */
 				if (__predict_false(backing_object->cache != NULL))
-					vm_page_cache_free(backing_object);
+					vm_page_cache_free(backing_object, 0, 0);
 			}
 			/*
 			 * Object now shadows whatever backing_object did.
@@ -1849,6 +1849,8 @@
 	}
 	vm_page_unlock_queues();
 	vm_object_pip_wakeup(object);
+	if (__predict_false(object->cache != NULL))
+		vm_page_cache_free(object, start, end);
 }
 
 /*

==== //depot/projects/dtrace/src/sys/vm/vm_page.c#20 (text+ko) ====

@@ -97,7 +97,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.354 2007/09/25 06:25:06 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.355 2007/09/27 04:21:59 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -794,28 +794,55 @@
 }
 
 /*
- *	Convert all of the cached pages belonging to the given object
- *	into free pages.  If the given object has cached pages and is
- *	backed by a vnode, reduce the vnode's hold count.
+ *	Convert all of the given object's cached pages that have a
+ *	pindex within the given range into free pages.  If the value
+ *	zero is given for "end", then the range's upper bound is
+ *	infinity.  If the given object is backed by a vnode and it
+ *	transitions from having one or more cached pages to none, the
+ *	vnode's hold count is reduced. 
  */
 void
-vm_page_cache_free(vm_object_t object)
+vm_page_cache_free(vm_object_t object, vm_pindex_t start, vm_pindex_t end)
 {
-	vm_page_t m, root;
+	vm_page_t m, m_next;
 	boolean_t empty;
 
 	mtx_lock(&vm_page_queue_free_mtx);
-	empty = object->cache == NULL;
-	while ((m = object->cache) != NULL) {
-		if (m->left == NULL)
-			root = m->right;
-		else if (m->right == NULL)
-			root = m->left;
+	if (__predict_false(object->cache == NULL)) {
+		mtx_unlock(&vm_page_queue_free_mtx);
+		return;
+	}
+	m = object->cache = vm_page_splay(start, object->cache);
+	if (m->pindex < start) {
+		if (m->right == NULL)
+			m = NULL;
 		else {
-			root = vm_page_splay(m->pindex, m->left);
-			root->right = m->right;
+			m_next = vm_page_splay(start, m->right);
+			m_next->left = m;
+			m->right = NULL;
+			m = object->cache = m_next;
+		}
+	}
+
+	/*
+	 * At this point, "m" is either (1) a reference to the page
+	 * with the least pindex that is greater than or equal to
+	 * "start" or (2) NULL.
+	 */
+	for (; m != NULL && (m->pindex < end || end == 0); m = m_next) {
+		/*
+		 * Find "m"'s successor and remove "m" from the
+		 * object's cache.
+		 */
+		if (m->right == NULL) {
+			object->cache = m->left;
+			m_next = NULL;
+		} else {
+			m_next = vm_page_splay(start, m->right);
+			m_next->left = m->left;
+			object->cache = m_next;
 		}
-		m->object->cache = root;
+		/* Convert "m" to a free page. */
 		m->object = NULL;
 		m->valid = 0;
 		/* Clear PG_CACHED and set PG_FREE. */
@@ -825,8 +852,9 @@
 		cnt.v_cache_count--;
 		cnt.v_free_count++;
 	}
+	empty = object->cache == NULL;
 	mtx_unlock(&vm_page_queue_free_mtx);
-	if (object->type == OBJT_VNODE && !empty)
+	if (object->type == OBJT_VNODE && empty)
 		vdrop(object->handle);
 }
 

==== //depot/projects/dtrace/src/sys/vm/vm_page.h#9 (text+ko) ====

@@ -57,7 +57,7 @@
  * any improvements or extensions that they make and grant Carnegie the
  * rights to redistribute these changes.
  *
- * $FreeBSD: src/sys/vm/vm_page.h,v 1.151 2007/09/25 06:25:06 alc Exp $
+ * $FreeBSD: src/sys/vm/vm_page.h,v 1.152 2007/09/27 04:21:59 alc Exp $
  */
 
 /*
@@ -320,7 +320,7 @@
 vm_page_t vm_page_alloc (vm_object_t, vm_pindex_t, int);
 vm_page_t vm_page_grab (vm_object_t, vm_pindex_t, int);
 void vm_page_cache (register vm_page_t);
-void vm_page_cache_free(vm_object_t);
+void vm_page_cache_free(vm_object_t, vm_pindex_t, vm_pindex_t);
 void vm_page_cache_remove(vm_page_t);
 void vm_page_cache_transfer(vm_object_t, vm_pindex_t, vm_object_t);
 int vm_page_try_to_cache (vm_page_t);

==== //depot/projects/dtrace/src/usr.sbin/nscd/Makefile#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/usr.sbin/nscd/Makefile,v 1.3 2007/08/09 13:06:11 bushman Exp $
+# $FreeBSD: src/usr.sbin/nscd/Makefile,v 1.4 2007/09/27 12:30:11 bushman Exp $
 
 PROG=	nscd
 MAN=	nscd.conf.5 nscd.8

==== //depot/projects/dtrace/src/usr.sbin/nscd/agent.c#2 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/usr.sbin/nscd/agent.c,v 1.1 2006/04/28 12:03:37 ume Exp $");
+__FBSDID("$FreeBSD: src/usr.sbin/nscd/agent.c,v 1.2 2007/09/27 12:30:11 bushman Exp $");
 
 #include <assert.h>
 #include <string.h>

==== //depot/projects/dtrace/src/usr.sbin/nscd/agent.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/usr.sbin/nscd/agent.h,v 1.2 2007/08/09 13:06:11 bushman Exp $
+ * $FreeBSD: src/usr.sbin/nscd/agent.h,v 1.3 2007/09/27 12:30:11 bushman Exp $
  */
 
 #ifndef __NSCD_AGENT_H__

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/Makefile.inc#2 (text+ko) ====

@@ -1,3 +1,3 @@
-# $FreeBSD: src/usr.sbin/nscd/agents/Makefile.inc,v 1.1 2006/04/28 12:03:38 ume Exp $
+# $FreeBSD: src/usr.sbin/nscd/agents/Makefile.inc,v 1.2 2007/09/27 12:30:10 bushman Exp $
 
 SRCS += passwd.c group.c services.c

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/group.c#2 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/usr.sbin/nscd/agents/group.c,v 1.1 2006/04/28 12:03:38 ume Exp $");
+__FBSDID("$FreeBSD: src/usr.sbin/nscd/agents/group.c,v 1.2 2007/09/27 12:30:10 bushman Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/group.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/usr.sbin/nscd/agents/group.h,v 1.1 2006/04/28 12:03:38 ume Exp $
+ * $FreeBSD: src/usr.sbin/nscd/agents/group.h,v 1.2 2007/09/27 12:30:10 bushman Exp $
  */
 
 #include "../agent.h"

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/passwd.c#2 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/usr.sbin/nscd/agents/passwd.c,v 1.1 2006/04/28 12:03:38 ume Exp $");
+__FBSDID("$FreeBSD: src/usr.sbin/nscd/agents/passwd.c,v 1.2 2007/09/27 12:30:10 bushman Exp $");
 
 #include <sys/types.h>
 #include <assert.h>

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/passwd.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/usr.sbin/nscd/agents/passwd.h,v 1.1 2006/04/28 12:03:38 ume Exp $
+ * $FreeBSD: src/usr.sbin/nscd/agents/passwd.h,v 1.2 2007/09/27 12:30:10 bushman Exp $
  */
 
 #include "../agent.h"

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/services.c#2 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/usr.sbin/nscd/agents/services.c,v 1.2 2006/05/05 15:01:25 ume Exp $");
+__FBSDID("$FreeBSD: src/usr.sbin/nscd/agents/services.c,v 1.3 2007/09/27 12:30:10 bushman Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>

==== //depot/projects/dtrace/src/usr.sbin/nscd/agents/services.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/usr.sbin/nscd/agents/services.h,v 1.1 2006/04/28 12:03:38 ume Exp $
+ * $FreeBSD: src/usr.sbin/nscd/agents/services.h,v 1.2 2007/09/27 12:30:10 bushman Exp $
  */
 
 #include "../agent.h"

==== //depot/projects/dtrace/src/usr.sbin/nscd/cachelib.c#2 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 

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


More information about the p4-projects mailing list