PERFORCE change 126528 for review

Kip Macy kmacy at FreeBSD.org
Mon Sep 17 13:15:59 PDT 2007


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

Change 126528 by kmacy at kmacy:storage:toestack on 2007/09/17 20:15:46

	IFC 126500

Affected files ...

.. //depot/projects/toestack/release/doc/en_US.ISO8859-1/hardware/article.sgml#3 integrate
.. //depot/projects/toestack/release/doc/en_US.ISO8859-1/relnotes/article.sgml#3 integrate
.. //depot/projects/toestack/release/doc/share/misc/dev.archlist.txt#3 integrate
.. //depot/projects/toestack/share/man/man4/ata.4#2 integrate
.. //depot/projects/toestack/share/man/man4/ral.4#2 integrate
.. //depot/projects/toestack/share/man/man4/ural.4#2 integrate
.. //depot/projects/toestack/share/man/man4/wlan.4#3 integrate
.. //depot/projects/toestack/share/man/man4/wlan_amrr.4#2 integrate
.. //depot/projects/toestack/sys/amd64/amd64/local_apic.c#2 integrate
.. //depot/projects/toestack/sys/amd64/amd64/vm_machdep.c#2 integrate
.. //depot/projects/toestack/sys/amd64/conf/MULTIQ#3 integrate
.. //depot/projects/toestack/sys/amd64/include/vmparam.h#2 integrate
.. //depot/projects/toestack/sys/conf/files.amd64#2 integrate
.. //depot/projects/toestack/sys/conf/options#2 integrate
.. //depot/projects/toestack/sys/contrib/opensolaris/uts/common/fs/zfs/arc.c#2 integrate
.. //depot/projects/toestack/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#2 integrate
.. //depot/projects/toestack/sys/dev/an/if_an.c#2 integrate
.. //depot/projects/toestack/sys/dev/ata/ata-chipset.c#2 integrate
.. //depot/projects/toestack/sys/dev/ata/ata-pci.h#2 integrate
.. //depot/projects/toestack/sys/dev/cxgb/cxgb_main.c#5 integrate
.. //depot/projects/toestack/sys/dev/cxgb/cxgb_multiq.c#3 integrate
.. //depot/projects/toestack/sys/dev/cxgb/cxgb_offload.c#3 integrate
.. //depot/projects/toestack/sys/dev/cxgb/cxgb_osdep.h#4 integrate
.. //depot/projects/toestack/sys/dev/cxgb/sys/mbufq.h#2 integrate
.. //depot/projects/toestack/sys/dev/cxgb/sys/mvec.h#2 integrate
.. //depot/projects/toestack/sys/dev/cxgb/sys/uipc_mvec.c#2 integrate
.. //depot/projects/toestack/sys/dev/em/if_em.c#2 integrate
.. //depot/projects/toestack/sys/dev/em/if_em.h#2 integrate
.. //depot/projects/toestack/sys/i386/acpica/madt.c#2 integrate
.. //depot/projects/toestack/sys/i386/i386/local_apic.c#2 integrate
.. //depot/projects/toestack/sys/kern/kern_mbuf.c#2 integrate
.. //depot/projects/toestack/sys/kern/kern_rwlock.c#2 integrate
.. //depot/projects/toestack/sys/kern/kern_switch.c#2 integrate
.. //depot/projects/toestack/sys/kern/kern_timeout.c#2 integrate
.. //depot/projects/toestack/sys/kern/subr_smp.c#2 integrate
.. //depot/projects/toestack/sys/kern/subr_witness.c#2 integrate
.. //depot/projects/toestack/sys/kern/uipc_mbuf.c#2 integrate
.. //depot/projects/toestack/sys/kern/vfs_export.c#2 integrate
.. //depot/projects/toestack/sys/modules/cxgb/Makefile#4 integrate
.. //depot/projects/toestack/sys/modules/cxgb/cxgb/Makefile#2 edit
.. //depot/projects/toestack/sys/net/if_ethersubr.c#2 integrate
.. //depot/projects/toestack/sys/net/if_var.h#2 integrate
.. //depot/projects/toestack/sys/net/radix.c#2 integrate
.. //depot/projects/toestack/sys/net/radix.h#2 integrate
.. //depot/projects/toestack/sys/net/route.c#2 integrate
.. //depot/projects/toestack/sys/net/route.h#2 integrate
.. //depot/projects/toestack/sys/net/rtsock.c#3 integrate
.. //depot/projects/toestack/sys/netinet/if_ether.c#2 integrate
.. //depot/projects/toestack/sys/netinet/in_pcb.c#3 integrate
.. //depot/projects/toestack/sys/netinet/in_pcb.h#2 integrate
.. //depot/projects/toestack/sys/netinet/sctp_asconf.c#3 integrate
.. //depot/projects/toestack/sys/netinet/sctp_cc_functions.h#2 integrate
.. //depot/projects/toestack/sys/netinet/sctp_input.c#3 integrate
.. //depot/projects/toestack/sys/netinet/tcp_input.c#2 integrate
.. //depot/projects/toestack/sys/netinet/tcp_output.c#2 integrate
.. //depot/projects/toestack/sys/netinet/udp_usrreq.c#2 integrate
.. //depot/projects/toestack/sys/netipsec/ipsec_input.c#2 integrate
.. //depot/projects/toestack/sys/sun4v/mdesc/mdesc_init.c#2 integrate
.. //depot/projects/toestack/sys/sys/callout.h#2 integrate
.. //depot/projects/toestack/sys/sys/mbuf.h#2 integrate
.. //depot/projects/toestack/sys/sys/proc.h#2 integrate
.. //depot/projects/toestack/sys/sys/systm.h#2 integrate
.. //depot/projects/toestack/sys/ufs/ffs/ffs_alloc.c#2 integrate
.. //depot/projects/toestack/sys/vm/uma.h#2 integrate
.. //depot/projects/toestack/sys/vm/uma_core.c#2 integrate
.. //depot/projects/toestack/sys/vm/vm_contig.c#2 integrate
.. //depot/projects/toestack/sys/vm/vm_extern.h#2 integrate
.. //depot/projects/toestack/usr.bin/bluetooth/rfcomm_sppd/rfcomm_sppd.c#2 integrate
.. //depot/projects/toestack/usr.bin/systat/pigs.c#2 integrate
.. //depot/projects/toestack/usr.sbin/cxgbtool/Makefile#2 integrate

Differences ...

==== //depot/projects/toestack/release/doc/en_US.ISO8859-1/hardware/article.sgml#3 (text+ko) ====

@@ -18,7 +18,7 @@
 
   <corpauthor>The &os; Documentation Project</corpauthor>
 
-  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/article.sgml,v 1.323 2007/09/09 01:32:36 bmah Exp $</pubdate>
+  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/article.sgml,v 1.325 2007/09/10 17:58:16 brueffer Exp $</pubdate>
 
   <copyright>
     <year>2000</year>
@@ -766,11 +766,21 @@
 
     &hwlist.cnw;
 
+    <para>[&arch.i386;, &arch.amd64;] Intel PRO/Wireless 2100 MiniPCI network
+      adapter (&man.ipw.4; driver)</para>
+
+    <para>[&arch.i386;, &arch.amd64;] Intel PRO/Wireless 2200BG/2915ABG MiniPCI
+      and 2225BG PCI network adapters (&man.iwi.4; driver)</para>
+
+    &hwlist.ral;
+
     <para>[&arch.i386;, &arch.pc98;] Raytheon Raylink 2.4GHz wireless adapters (&man.ray.4; driver)
     </para>
 
     &hwlist.rum;
 
+    &hwlist.ural;
+
     <para>[&arch.amd64;, &arch.i386;, &arch.pc98;] Lucent Technologies WaveLAN/IEEE 802.11b
       wireless network
       adapters and workalikes using the Lucent Hermes, Intersil

==== //depot/projects/toestack/release/doc/en_US.ISO8859-1/relnotes/article.sgml#3 (text+ko) ====

@@ -20,7 +20,7 @@
 
   <corpauthor>The &os; Project</corpauthor>
 
-  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v 1.1062 2007/09/06 19:53:06 brueffer Exp $</pubdate>
+  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v 1.1064 2007/09/11 23:31:14 bmah Exp $</pubdate>
 
   <copyright>
     <year>2000</year>
@@ -1548,6 +1548,10 @@
     <para>The &man.bsnmpd.1; utility now supports the Host Resources
       MIB described in RFC 2790.  &merged;</para>
 
+    <para>The &man.camcontrol.8; utility now supports
+      a <command>readcap</command> to display the size of
+      devices.</para>
+
     <para>The &man.cmp.1; utility now supports an <option>-h</option>
       flag to compare the symbolic link itself rather than the
       file that the link points to. &merged;</para>
@@ -1829,7 +1833,8 @@
       an architecture to pass through to the underlying makefiles.
       &merged;</para>
 
-    <para>The &man.mount.8; <literal>nodev</literal> option has
+    <para>The &man.mount.8; <literal>dev</literal>
+      and <literal>nodev</literal> options have
       been removed.</para>
 
     <para>The &man.mount.8; utility now supports &man.mqueuefs.5;.</para>
@@ -1844,6 +1849,22 @@
       that these <quote>late</quote> file systems should be
       mounted. &merged;</para>
 
+    <para>A number of the file
+      system-specific <command>mount_<replaceable>*</replaceable></command>
+      utilities have been removed, in favor of the more general
+      &man.mount.8; command with a <option>-t</option> option.
+      Specifically, these commands are:
+      <command>mount_devfs</command>,
+      <command>mount_ext2fs</command>,
+      <command>mount_fdescfs</command>,
+      <command>mount_linprocfs</command>,
+      <command>mount_procfs</command>,
+      <command>mount_std</command>,
+      <command>mount_linsysfs</command>,
+      <command>mount_reiserfs</command>, and
+      <command>mount_umapfs</command>.
+      </para>
+
     <para>The &man.moused.8; daemon now supports an <option>-H</option> flag
       to enable horizontal virtual scrolling similar to the
       <option>-V</option> flag for vertical virtual scrolling.

==== //depot/projects/toestack/release/doc/share/misc/dev.archlist.txt#3 (text+ko) ====

@@ -23,7 +23,7 @@
 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 # SUCH DAMAGE.
 #
-# $FreeBSD: src/release/doc/share/misc/dev.archlist.txt,v 1.98 2007/09/07 15:30:35 brueffer Exp $
+# $FreeBSD: src/release/doc/share/misc/dev.archlist.txt,v 1.99 2007/09/10 17:58:16 brueffer Exp $
 #
 
 #
@@ -104,6 +104,7 @@
 pst	i386
 rc	i386
 rr232x	i386,amd64
+ral	i386,amd64
 rue	i386,pc98,amd64
 rum	i386,amd64
 safe	i386,pc98,amd64
@@ -163,6 +164,7 @@
 umass	i386,pc98,amd64,powerpc
 umodem	i386,pc98,amd64
 uplcom	i386,pc98,amd64
+ural	i386,amd64
 urio	i386,pc98,amd64,powerpc
 uscanner	i386,pc98,amd64,powerpc
 uvisor	i386,pc98,amd64

==== //depot/projects/toestack/share/man/man4/ata.4#2 (text+ko) ====

@@ -25,9 +25,9 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/share/man/man4/ata.4,v 1.72 2007/03/10 12:44:22 brueffer Exp $
+.\" $FreeBSD: src/share/man/man4/ata.4,v 1.73 2007/09/10 20:25:55 brueffer Exp $
 .\"
-.Dd March 10, 2007
+.Dd September 10, 2007
 .Dt ATA 4
 .Os
 .Sh NAME
@@ -119,7 +119,7 @@
 .It HighPoint:
 HPT302, HPT366, HPT368, HPT370, HPT371, HPT372, HPT372N, HPT374.
 .It Intel:
-6300ESB, 31244, PIIX, PIIX3, PIIX4, ESB2, ICH, ICH0, ICH2, ICH3, ICH4, ICH5, ICH6, ICH7, ICH8.
+6300ESB, 31244, PIIX, PIIX3, PIIX4, ESB2, ICH, ICH0, ICH2, ICH3, ICH4, ICH5, ICH6, ICH7, ICH8, ICH9.
 .It ITE:
 IT8211F, IT8212F.
 .It JMicron:

==== //depot/projects/toestack/share/man/man4/ral.4#2 (text+ko) ====

@@ -13,9 +13,9 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.\" $FreeBSD: src/share/man/man4/ral.4,v 1.12 2007/02/03 19:29:31 brueffer Exp $
+.\" $FreeBSD: src/share/man/man4/ral.4,v 1.13 2007/09/10 17:54:14 brueffer Exp $
 .\"
-.Dd March 5, 2006
+.Dd September 10, 2007
 .Os
 .Dt RAL 4
 .Sh NAME
@@ -66,95 +66,96 @@
 .Sh HARDWARE
 The
 .Nm
-driver supports the following adapters:
+driver supports PCI/CardBus wireless adapters based on the Ralink Technology
+RT2500, RT2501, and RT2600 chipsets, including:
 .Pp
 .Bl -column -compact ".Li Atlantis Land A02-PCM-W54" "RT2561S" "CardBus"
 .It Em Card Ta Em MAC/BBP Ta Em Bus
-.It Li "A-Link WL54H" Ta RT2560 Ta PCI
-.It Li "A-Link WL54PC" Ta RT2560 Ta CardBus
-.It Li "AirLink101 AWLC5025" Ta RT2661 Ta CardBus
-.It Li "AirLink101 AWLH5025" Ta RT2661 Ta PCI
-.It Li "Amigo AWI-914W" Ta RT2560 Ta CardBus
-.It Li "Amigo AWI-922W" Ta RT2560 Ta mini-PCI
-.It Li "Amigo AWI-926W" Ta RT2560 Ta PCI
-.It Li "AMIT WL531C" Ta RT2560 Ta CardBus
-.It Li "AMIT WL531P" Ta RT2560 Ta PCI
-.It Li "AOpen AOI-831" Ta RT2560 Ta PCI
-.It Li "ASUS WL-107G" Ta RT2560 Ta CardBus
-.It Li "ASUS WL-130g" Ta RT2560 Ta PCI
-.It Li "Atlantis Land A02-PCI-W54" Ta RT2560 Ta PCI
-.It Li "Atlantis Land A02-PCM-W54" Ta RT2560 Ta CardBus
-.It Li "Belkin F5D7000 v3" Ta RT2560 Ta PCI
-.It Li "Belkin F5D7010 v2" Ta RT2560 Ta CardBus
-.It Li "Billionton MIWLGRL" Ta RT2560 Ta mini-PCI
-.It Li "Canyon CN-WF511" Ta RT2560 Ta PCI
-.It Li "Canyon CN-WF513" Ta RT2560 Ta CardBus
-.It Li "CC&C WL-2102" Ta RT2560 Ta CardBus
-.It Li "CNet CWC-854" Ta RT2560 Ta CardBus
-.It Li "CNet CWP-854" Ta RT2560 Ta PCI
-.It Li "Compex WL54G" Ta RT2560 Ta CardBus
-.It Li "Compex WLP54G" Ta RT2560 Ta PCI
-.It Li "Conceptronic C54RC" Ta RT2560 Ta CardBus
-.It Li "Conceptronic C54Ri" Ta RT2560 Ta PCI
-.It Li "Digitus DN-7001G-RA" Ta RT2560 Ta CardBus
-.It Li "Digitus DN-7006G-RA" Ta RT2560 Ta PCI
-.It Li "E-Tech WGPC02" Ta RT2560 Ta CardBus
-.It Li "E-Tech WGPI02" Ta RT2560 Ta PCI
-.It Li "Edimax EW-7108PCg" Ta RT2560 Ta CardBus
-.It Li "Edimax EW-7128g" Ta RT2560 Ta PCI
-.It Li "Eminent EM3036" Ta RT2560 Ta CardBus
-.It Li "Eminent EM3037" Ta RT2560 Ta PCI
-.It Li "Encore ENLWI-G-RLAM" Ta RT2560 Ta PCI
-.It Li "Encore ENPWI-G-RLAM" Ta RT2560 Ta CardBus
-.It Li "Fiberline WL-400P" Ta RT2560 Ta PCI
-.It Li "Fibreline WL-400X" Ta RT2560 Ta CardBus
-.It Li "Gigabyte GN-WI01GS" Ta RT2561S Ta mini-PCI
-.It Li "Gigabyte GN-WIKG" Ta RT2560 Ta mini-PCI
-.It Li "Gigabyte GN-WMKG" Ta RT2560 Ta CardBus
-.It Li "Gigabyte GN-WP01GS" Ta RT2561S Ta PCI
-.It Li "Gigabyte GN-WPKG" Ta RT2560 Ta PCI
-.It Li "Hawking HWC54GR" Ta RT2560 Ta CardBus
-.It Li "Hawking HWP54GR" Ta RT2560 Ta PCI
-.It Li "iNexQ CR054g-009 (R03)" Ta RT2560 Ta PCI
-.It Li "JAHT WN-4054P" Ta RT2560 Ta CardBus
-.It Li "JAHT WN-4054PCI" Ta RT2560 Ta PCI
-.It Li "LevelOne WNC-0301 v2" Ta RT2560 Ta PCI
-.It Li "LevelOne WPC-0301 v2" Ta RT2560 Ta CardBus
-.It Li "Linksys WMP54G v4" Ta RT2560 Ta PCI
-.It Li "Micronet SP906GK" Ta RT2560 Ta PCI
-.It Li "Micronet SP908GK V3" Ta RT2560 Ta CardBus
-.It Li "Minitar MN54GCB-R" Ta RT2560 Ta CardBus
-.It Li "Minitar MN54GPC-R" Ta RT2560 Ta PCI
-.It Li "MSI CB54G2" Ta RT2560 Ta CardBus
-.It Li "MSI MP54G2" Ta RT2560 Ta mini-PCI
-.It Li "MSI PC54G2" Ta RT2560 Ta PCI
-.It Li "OvisLink EVO-W54PCI" Ta RT2560 Ta PCI
-.It Li "PheeNet HWL-PCIG/RA" Ta RT2560 Ta PCI
-.It Li "Pro-Nets CB80211G" Ta RT2560 Ta CardBus
-.It Li "Pro-Nets PC80211G" Ta RT2560 Ta PCI
-.It Li "Repotec RP-WB7108" Ta RT2560 Ta CardBus
-.It Li "Repotec RP-WP0854" Ta RT2560 Ta PCI
-.It Li "SATech SN-54C" Ta RT2560 Ta CardBus
-.It Li "SATech SN-54P" Ta RT2560 Ta PCI
-.It Li "Sitecom WL-112" Ta RT2560 Ta CardBus
-.It Li "Sitecom WL-115" Ta RT2560 Ta PCI
-.It Li "SMC SMCWCB-GM" Ta RT2661 Ta CardBus
-.It Li "SMC SMCWPCI-GM" Ta RT2661 Ta PCI
-.It Li "SparkLAN WL-685R" Ta RT2560 Ta CardBus
-.It Li "Surecom EP-9321-g" Ta RT2560 Ta PCI
-.It Li "Surecom EP-9321-g1" Ta RT2560 Ta PCI
-.It Li "Surecom EP-9428-g" Ta RT2560 Ta CardBus
-.It Li "Sweex LC500050" Ta RT2560 Ta CardBus
-.It Li "Sweex LC700030" Ta RT2560 Ta PCI
-.It Li "TekComm NE-9321-g" Ta RT2560 Ta PCI
-.It Li "TekComm NE-9428-g" Ta RT2560 Ta CardBus
-.It Li "Unex CR054g-R02" Ta RT2560 Ta PCI
-.It Li "Unex MR054g-R02" Ta RT2560 Ta CardBus
-.It Li "Zinwell ZWX-G160" Ta RT2560 Ta CardBus
-.It Li "Zinwell ZWX-G360" Ta RT2560 Ta mini-PCI
-.It Li "Zinwell ZWX-G361" Ta RT2560 Ta PCI
-.It Li "Zonet ZEW1500" Ta RT2560 Ta CardBus
-.It Li "Zonet ZEW1600" Ta RT2560 Ta PCI
+.It "A-Link WL54H" Ta RT2560 Ta PCI
+.It "A-Link WL54PC" Ta RT2560 Ta CardBus
+.It "AirLink101 AWLC5025" Ta RT2661 Ta CardBus
+.It "AirLink101 AWLH5025" Ta RT2661 Ta PCI
+.It "Amigo AWI-914W" Ta RT2560 Ta CardBus
+.It "Amigo AWI-922W" Ta RT2560 Ta mini-PCI
+.It "Amigo AWI-926W" Ta RT2560 Ta PCI
+.It "AMIT WL531C" Ta RT2560 Ta CardBus
+.It "AMIT WL531P" Ta RT2560 Ta PCI
+.It "AOpen AOI-831" Ta RT2560 Ta PCI
+.It "ASUS WL-107G" Ta RT2560 Ta CardBus
+.It "ASUS WL-130g" Ta RT2560 Ta PCI
+.It "Atlantis Land A02-PCI-W54" Ta RT2560 Ta PCI
+.It "Atlantis Land A02-PCM-W54" Ta RT2560 Ta CardBus
+.It "Belkin F5D7000 v3" Ta RT2560 Ta PCI
+.It "Belkin F5D7010 v2" Ta RT2560 Ta CardBus
+.It "Billionton MIWLGRL" Ta RT2560 Ta mini-PCI
+.It "Canyon CN-WF511" Ta RT2560 Ta PCI
+.It "Canyon CN-WF513" Ta RT2560 Ta CardBus
+.It "CC&C WL-2102" Ta RT2560 Ta CardBus
+.It "CNet CWC-854" Ta RT2560 Ta CardBus
+.It "CNet CWP-854" Ta RT2560 Ta PCI
+.It "Compex WL54G" Ta RT2560 Ta CardBus
+.It "Compex WLP54G" Ta RT2560 Ta PCI
+.It "Conceptronic C54RC" Ta RT2560 Ta CardBus
+.It "Conceptronic C54Ri" Ta RT2560 Ta PCI
+.It "Digitus DN-7001G-RA" Ta RT2560 Ta CardBus
+.It "Digitus DN-7006G-RA" Ta RT2560 Ta PCI
+.It "E-Tech WGPC02" Ta RT2560 Ta CardBus
+.It "E-Tech WGPI02" Ta RT2560 Ta PCI
+.It "Edimax EW-7108PCg" Ta RT2560 Ta CardBus
+.It "Edimax EW-7128g" Ta RT2560 Ta PCI
+.It "Eminent EM3036" Ta RT2560 Ta CardBus
+.It "Eminent EM3037" Ta RT2560 Ta PCI
+.It "Encore ENLWI-G-RLAM" Ta RT2560 Ta PCI
+.It "Encore ENPWI-G-RLAM" Ta RT2560 Ta CardBus
+.It "Fiberline WL-400P" Ta RT2560 Ta PCI
+.It "Fibreline WL-400X" Ta RT2560 Ta CardBus
+.It "Gigabyte GN-WI01GS" Ta RT2561S Ta mini-PCI
+.It "Gigabyte GN-WIKG" Ta RT2560 Ta mini-PCI
+.It "Gigabyte GN-WMKG" Ta RT2560 Ta CardBus
+.It "Gigabyte GN-WP01GS" Ta RT2561S Ta PCI
+.It "Gigabyte GN-WPKG" Ta RT2560 Ta PCI
+.It "Hawking HWC54GR" Ta RT2560 Ta CardBus
+.It "Hawking HWP54GR" Ta RT2560 Ta PCI
+.It "iNexQ CR054g-009 (R03)" Ta RT2560 Ta PCI
+.It "JAHT WN-4054P" Ta RT2560 Ta CardBus
+.It "JAHT WN-4054PCI" Ta RT2560 Ta PCI
+.It "LevelOne WNC-0301 v2" Ta RT2560 Ta PCI
+.It "LevelOne WPC-0301 v2" Ta RT2560 Ta CardBus
+.It "Linksys WMP54G v4" Ta RT2560 Ta PCI
+.It "Micronet SP906GK" Ta RT2560 Ta PCI
+.It "Micronet SP908GK V3" Ta RT2560 Ta CardBus
+.It "Minitar MN54GCB-R" Ta RT2560 Ta CardBus
+.It "Minitar MN54GPC-R" Ta RT2560 Ta PCI
+.It "MSI CB54G2" Ta RT2560 Ta CardBus
+.It "MSI MP54G2" Ta RT2560 Ta mini-PCI
+.It "MSI PC54G2" Ta RT2560 Ta PCI
+.It "OvisLink EVO-W54PCI" Ta RT2560 Ta PCI
+.It "PheeNet HWL-PCIG/RA" Ta RT2560 Ta PCI
+.It "Pro-Nets CB80211G" Ta RT2560 Ta CardBus
+.It "Pro-Nets PC80211G" Ta RT2560 Ta PCI
+.It "Repotec RP-WB7108" Ta RT2560 Ta CardBus
+.It "Repotec RP-WP0854" Ta RT2560 Ta PCI
+.It "SATech SN-54C" Ta RT2560 Ta CardBus
+.It "SATech SN-54P" Ta RT2560 Ta PCI
+.It "Sitecom WL-112" Ta RT2560 Ta CardBus
+.It "Sitecom WL-115" Ta RT2560 Ta PCI
+.It "SMC SMCWCB-GM" Ta RT2661 Ta CardBus
+.It "SMC SMCWPCI-GM" Ta RT2661 Ta PCI
+.It "SparkLAN WL-685R" Ta RT2560 Ta CardBus
+.It "Surecom EP-9321-g" Ta RT2560 Ta PCI
+.It "Surecom EP-9321-g1" Ta RT2560 Ta PCI
+.It "Surecom EP-9428-g" Ta RT2560 Ta CardBus
+.It "Sweex LC500050" Ta RT2560 Ta CardBus
+.It "Sweex LC700030" Ta RT2560 Ta PCI
+.It "TekComm NE-9321-g" Ta RT2560 Ta PCI
+.It "TekComm NE-9428-g" Ta RT2560 Ta CardBus
+.It "Unex CR054g-R02" Ta RT2560 Ta PCI
+.It "Unex MR054g-R02" Ta RT2560 Ta CardBus
+.It "Zinwell ZWX-G160" Ta RT2560 Ta CardBus
+.It "Zinwell ZWX-G360" Ta RT2560 Ta mini-PCI
+.It "Zinwell ZWX-G361" Ta RT2560 Ta PCI
+.It "Zonet ZEW1500" Ta RT2560 Ta CardBus
+.It "Zonet ZEW1600" Ta RT2560 Ta PCI
 .El
 .Pp
 An up to date list can be found at

==== //depot/projects/toestack/share/man/man4/ural.4#2 (text+ko) ====

@@ -13,9 +13,9 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.\" $FreeBSD: src/share/man/man4/ural.4,v 1.14 2007/06/15 04:41:15 kevlo Exp $
+.\" $FreeBSD: src/share/man/man4/ural.4,v 1.15 2007/09/10 17:54:14 brueffer Exp $
 .\"
-.Dd October 7, 2006
+.Dd September 10, 2007
 .Os
 .Dt URAL 4
 .Sh NAME
@@ -55,37 +55,38 @@
 .Sh HARDWARE
 The
 .Nm
-driver supports the following adapters:
+driver supports USB 2.0 wireless adapters based on the Ralink Technology
+RT2500USB chipset, including:
 .Pp
 .Bl -column -compact ".Li Atlantis Land A02-PCM-W54" "Bus"
 .It Em Card Ta Em Bus
-.It Li "AMIT WL532U" Ta USB
-.It Li "ASUS WL-167g" Ta USB
-.It Li "Belkin F5D7050 v2000" Ta USB
-.It Li "Buffalo WLI-U2-KG54-AI" Ta USB
-.It Li "CNet CWD-854" Ta USB
-.It Li "Compex WLU54G 2A1100" Ta USB
-.It Li "Conceptronic C54RU" Ta USB
-.It Li "D-Link DWL-G122 b1" Ta USB
-.It Li "Dynalink WLG25USB" Ta USB
-.It Li "E-Tech WGUS02" Ta USB
-.It Li "Gigabyte GN-WBKG" Ta USB
-.It Li "Hercules HWGUSB2-54" Ta USB
-.It Li "KCORP LifeStyle KLS-685" Ta USB
-.It Li "Linksys WUSB54G v4" Ta USB
-.It Li "Linksys WUSB54GP v4" Ta USB
-.It Li "MSI MS-6861" Ta USB
-.It Li "MSI MS-6865" Ta USB
-.It Li "MSI MS-6869" Ta USB
-.It Li "NovaTech NV-902" Ta USB
-.It Li "OvisLink Evo-W54USB" Ta USB
-.It Li "SerComm UB801R" Ta USB
-.It Li "SparkLAN WL-685R" Ta USB
-.It Li "Surecom EP-9001-g" Ta USB
-.It Li "Sweex LC100060" Ta USB
-.It Li "Tonze UW-6200C" Ta USB
-.It Li "Zinwell ZWX-G261" Ta USB
-.It Li "Zonet ZEW2500P" Ta USB
+.It "AMIT WL532U" Ta USB
+.It "ASUS WL-167g" Ta USB
+.It "Belkin F5D7050 v2000" Ta USB
+.It "Buffalo WLI-U2-KG54-AI" Ta USB
+.It "CNet CWD-854" Ta USB
+.It "Compex WLU54G 2A1100" Ta USB
+.It "Conceptronic C54RU" Ta USB
+.It "D-Link DWL-G122 b1" Ta USB
+.It "Dynalink WLG25USB" Ta USB
+.It "E-Tech WGUS02" Ta USB
+.It "Gigabyte GN-WBKG" Ta USB
+.It "Hercules HWGUSB2-54" Ta USB
+.It "KCORP LifeStyle KLS-685" Ta USB
+.It "Linksys WUSB54G v4" Ta USB
+.It "Linksys WUSB54GP v4" Ta USB
+.It "MSI MS-6861" Ta USB
+.It "MSI MS-6865" Ta USB
+.It "MSI MS-6869" Ta USB
+.It "NovaTech NV-902" Ta USB
+.It "OvisLink Evo-W54USB" Ta USB
+.It "SerComm UB801R" Ta USB
+.It "SparkLAN WL-685R" Ta USB
+.It "Surecom EP-9001-g" Ta USB
+.It "Sweex LC100060" Ta USB
+.It "Tonze UW-6200C" Ta USB
+.It "Zinwell ZWX-G261" Ta USB
+.It "Zonet ZEW2500P" Ta USB
 .El
 .Pp
 An up to date list can be found at

==== //depot/projects/toestack/share/man/man4/wlan.4#3 (text+ko) ====

@@ -23,7 +23,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/share/man/man4/wlan.4,v 1.12 2007/09/06 20:15:04 brueffer Exp $
+.\" $FreeBSD: src/share/man/man4/wlan.4,v 1.13 2007/09/10 17:20:21 brueffer Exp $
 .\"
 .Dd September 6, 2007
 .Dt WLAN 4
@@ -50,8 +50,9 @@
 .Xr ral 4 ,
 .Xr rum 4 ,
 .Xr ural 4 ,
+.Xr wi 4 ,
 and
-.Xr wi 4
+.Xr zyd 4
 drivers, with other drivers to follow.
 .Pp
 The

==== //depot/projects/toestack/share/man/man4/wlan_amrr.4#2 (text+ko) ====

@@ -23,9 +23,9 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/share/man/man4/wlan_amrr.4,v 1.1 2007/06/15 04:41:15 kevlo Exp $
+.\" $FreeBSD: src/share/man/man4/wlan_amrr.4,v 1.2 2007/09/10 18:17:50 brueffer Exp $
 .\"
-.Dd June 15, 2007
+.Dd September 10, 2007
 .Dt WLAN_AMRR 4
 .Os
 .Sh NAME
@@ -36,7 +36,7 @@
 .Sh DESCRIPTION
 The
 .Nm
-module implements Adaptive Multi-Rate Retry tx rate control
+module implements the Adaptive Multi-Rate Retry tx rate control
 algorithm for use with 802.11 devices.
 The
 .Nm
@@ -45,7 +45,8 @@
 .Sh SEE ALSO
 .Xr rum 4 ,
 .Xr ural 4 ,
-.Xr wlan 4
+.Xr wlan 4 ,
+.Xr zyd 4
 .Sh STANDARDS
 More information can be found in the paper describing the 
 .Em AMRR

==== //depot/projects/toestack/sys/amd64/amd64/local_apic.c#2 (text+ko) ====

@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.41 2007/08/02 21:17:58 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.42 2007/09/11 22:54:08 attilio Exp $");
 
 #include "opt_hwpmc_hooks.h"
 
@@ -46,6 +46,7 @@
 #include <sys/mutex.h>
 #include <sys/pcpu.h>
 #include <sys/smp.h>
+#include <sys/proc.h>
 
 #include <vm/vm.h>
 #include <vm/pmap.h>
@@ -1061,7 +1062,7 @@
 		printf("%s: Failed to setup the local APIC: returned %d\n",
 		    best_enum->apic_name, retval);
 }
-SYSINIT(apic_setup_local, SI_SUB_CPU, SI_ORDER_FIRST, apic_setup_local, NULL)
+SYSINIT(apic_setup_local, SI_SUB_CPU, SI_ORDER_SECOND, apic_setup_local, NULL)
 
 /*
  * Setup the I/O APICs.

==== //depot/projects/toestack/sys/amd64/amd64/vm_machdep.c#2 (text+ko) ====

@@ -566,3 +566,23 @@
 
 	return 1;
 }
+
+void *
+contigmalloc2(vm_page_t m, vm_pindex_t npages, int flags)
+{
+        return (void *)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(m));
+}
+
+void
+contigfree(void *addr, unsigned long size, struct malloc_type *type)
+{
+	vm_pindex_t npgs;
+	vm_page_t m;
+	int i;
+	
+	npgs = round_page(size) >> PAGE_SHIFT;
+	m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)addr));
+	for (i = 0; i < npgs; i++, m++) 
+		vm_page_free(m);
+	malloc_type_freed(type, npgs << PAGE_SHIFT);
+}

==== //depot/projects/toestack/sys/amd64/conf/MULTIQ#3 (text+ko) ====

@@ -23,7 +23,7 @@
 
 # To statically compile in device wiring instead of /boot/device.hints
 #hints		"GENERIC.hints"		# Default places to look for devices.
-makeoptions	MODULES_OVERRIDE="cxgb em if_vlan linux linprocfs hwpmc netgraph"
+makeoptions	MODULES_OVERRIDE="cxgb em if_vlan linux linprocfs netgraph hwpmc"
 
 makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
 
@@ -212,4 +212,7 @@
 
 options		IFNET_MULTIQUEUE # add support for using multiple tx queues to ifnet
 options		ALT_BREAK_TO_DEBUGGER
-#options		BIND_ALL
+#options		LOCK_PROFILING
+options		HWPMC_HOOKS
+options		MINCLSIZE	48
+

==== //depot/projects/toestack/sys/amd64/include/vmparam.h#2 (text+ko) ====

@@ -185,4 +185,10 @@
 #define	VM_INITIAL_PAGEIN	16
 #endif
 
+/*
+ * We provide a machine specific contiguous mapping function
+ * which uses the direct map
+ */
+#define VM_MD_CONTIG
+
 #endif /* _MACHINE_VMPARAM_H_ */

==== //depot/projects/toestack/sys/conf/files.amd64#2 (text+ko) ====

@@ -180,6 +180,7 @@
 dev/hptmv/ioctl.c		optional	hptmv
 dev/hwpmc/hwpmc_amd.c		optional	hwpmc
 dev/hwpmc/hwpmc_piv.c		optional	hwpmc
+dev/hwpmc/hwpmc_ppro.c		optional	hwpmc
 dev/hwpmc/hwpmc_x86.c		optional	hwpmc
 dev/kbd/kbd.c			optional	atkbd | sc | ukbd
 dev/mem/memutil.c		optional	mem

==== //depot/projects/toestack/sys/conf/options#2 (text+ko) ====

@@ -535,6 +535,7 @@
 INVARIANT_SUPPORT	opt_global.h
 INVARIANTS		opt_global.h
 MCLSHIFT		opt_global.h
+MINCLSIZE		opt_global.h
 MUTEX_DEBUG		opt_global.h
 MUTEX_NOINLINE		opt_global.h
 LOCK_PROFILING		opt_global.h

==== //depot/projects/toestack/sys/contrib/opensolaris/uts/common/fs/zfs/arc.c#2 (text+ko) ====

@@ -1439,7 +1439,7 @@
 		return (1);
 #endif
 #else
-	if (kmem_used() > kmem_size() / 2)
+	if (kmem_used() > (kmem_size() * 4) / 5)
 		return (1);
 #endif
 
@@ -2729,7 +2729,7 @@
 		arc_c_max = (arc_c * 8) - (1<<30);
 	else
 		arc_c_max = arc_c_min;
-	arc_c_max = MAX(arc_c * 4, arc_c_max);
+	arc_c_max = MAX(arc_c * 6, arc_c_max);
 #ifdef _KERNEL
 	/*
 	 * Allow the tunables to override our calculations if they are

==== //depot/projects/toestack/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#2 (text+ko) ====

@@ -949,6 +949,39 @@
 	atomic_add_32(&zfs_active_fs_count, -1);
 }
 
+#ifdef __i386__
+static int desiredvnodes_backup;
+#endif
+
+static void
+zfs_vnodes_adjust(void)
+{
+#ifdef __i386__
+	int val;
+
+	desiredvnodes_backup = desiredvnodes;
+
+	/*
+	 * We calculate newdesiredvnodes the same way it is done in
+	 * vntblinit(). If it is equal to desiredvnodes, it means that
+	 * it wasn't tuned by the administrator and we can tune it down.
+	 */
+	val = min(maxproc + cnt.v_page_count / 4, 2 * vm_kmem_size /
+	    (5 * (sizeof(struct vm_object) + sizeof(struct vnode))));
+	if (desiredvnodes == val)
+		desiredvnodes = (3 * desiredvnodes) / 4;
+#endif
+}
+
+static void
+zfs_vnodes_adjust_back(void)
+{
+
+#ifdef __i386__
+	desiredvnodes = desiredvnodes_backup;
+#endif
+}
+
 void
 zfs_init(void)
 {
@@ -964,6 +997,13 @@
 	 * Initialize znode cache, vnode ops, etc...
 	 */
 	zfs_znode_init();
+
+	/*
+	 * Reduce number of vnodes. Originally number of vnodes is calculated
+	 * with UFS inode in mind. We reduce it here, because it's too big for
+	 * ZFS/i386.
+	 */
+	zfs_vnodes_adjust();
 }
 
 void
@@ -971,6 +1011,7 @@
 {
 	zfsctl_fini();
 	zfs_znode_fini();
+	zfs_vnodes_adjust_back();
 }
 
 int

==== //depot/projects/toestack/sys/dev/an/if_an.c#2 (text+ko) ====

@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/an/if_an.c,v 1.83 2007/08/07 12:26:19 avatar Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/an/if_an.c,v 1.84 2007/09/10 12:53:34 avatar Exp $");
 
 /*
  * The Aironet 4500/4800 series cards come in PCMCIA, ISA and PCI form.
@@ -1862,6 +1862,7 @@
 	struct ifreq		*ifr;
 	struct thread		*td = curthread;
 	struct ieee80211req	*ireq;
+	struct ieee80211_channel	ch;
 	u_int8_t		tmpstr[IEEE80211_NWID_LEN*2];
 	u_int8_t		*tmpptr;
 	struct an_ltv_genconfig	*config;
@@ -2217,6 +2218,22 @@
 			}
 			ireq->i_val = status->an_cur_channel;
 			break;
+		 case IEEE80211_IOC_CURCHAN:
+		 	sc->areq.an_type = AN_RID_STATUS;
+		 	if (an_read_record(sc,
+		 	    (struct an_ltv_gen *)&sc->areq)) {
+				error = EINVAL;
+				break;
+			}
+			bzero(&ch, sizeof(ch));
+			ch.ic_freq = ieee80211_ieee2mhz(status->an_cur_channel,
+			    IEEE80211_CHAN_B);
+			ch.ic_flags = IEEE80211_CHAN_B;
+			ch.ic_ieee = status->an_cur_channel;
+			AN_UNLOCK(sc);
+			error = copyout(&ch, ireq->i_data, sizeof(ch));
+			AN_LOCK(sc);
+			break;
 		case IEEE80211_IOC_POWERSAVE:
 			sc->areq.an_type = AN_RID_ACTUALCFG;
 			if (an_read_record(sc,

==== //depot/projects/toestack/sys/dev/ata/ata-chipset.c#2 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.198 2007/06/25 08:21:21 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.199 2007/09/10 19:16:39 simon Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -1710,6 +1710,10 @@
      { ATA_I82801HB_AH6, 0, AHCI, 0x00, ATA_SA300, "ICH8" },
      { ATA_I82801HBM_S1, 0, AHCI, 0x00, ATA_SA300, "ICH8M" },
      { ATA_I82801HBM_S2, 0, AHCI, 0x00, ATA_SA300, "ICH8M" },
+     { ATA_I82801IB_S1,  0, AHCI, 0x00, ATA_SA300, "ICH9" },
+     { ATA_I82801IB_S2,  0, AHCI, 0x00, ATA_SA300, "ICH9" },
+     { ATA_I82801IB_AH4, 0, AHCI, 0x00, ATA_SA300, "ICH9" },
+     { ATA_I82801IB_AH6, 0, AHCI, 0x00, ATA_SA300, "ICH9" },
      { ATA_I31244,       0,    0, 0x00, ATA_SA150, "31244" },
      { 0, 0, 0, 0, 0, 0}};
     char buffer[64]; 

==== //depot/projects/toestack/sys/dev/ata/ata-pci.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.77 2007/06/25 08:21:21 sos Exp $
+ * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.78 2007/09/10 19:16:39 simon Exp $
  */
 
 /* structure holding chipset config info */
@@ -167,6 +167,10 @@
 #define ATA_I82801HB_S2         0x28258086
 #define ATA_I82801HBM_S1        0x28298086
 #define ATA_I82801HBM_S2        0x282a8086
+#define ATA_I82801IB_S1         0x29208086
+#define ATA_I82801IB_AH6        0x29228086
+#define ATA_I82801IB_AH4        0x29238086
+#define ATA_I82801IB_S2         0x29268086
 #define ATA_I31244              0x32008086
 
 #define ATA_ITE_ID              0x1283

==== //depot/projects/toestack/sys/dev/cxgb/cxgb_main.c#5 (text+ko) ====

@@ -28,7 +28,7 @@
 ***************************************************************************/
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/cxgb/cxgb_main.c,v 1.35 2007/09/10 00:59:51 kmacy Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/cxgb/cxgb_main.c,v 1.36 2007/09/11 23:49:27 kmacy Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1238,10 +1238,6 @@
 	u_int nq[2]; 
 	uint8_t cpus[SGE_QSETS + 1];
 	uint16_t rspq_map[RSS_TABLE_SIZE];
-
-
-	if ((adap->flags & USING_MSIX) == 0)
-		return;
 	
 	for (i = 0; i < SGE_QSETS; ++i)
 		cpus[i] = i;
@@ -2557,7 +2553,7 @@
 		 * Read 256 bytes at a time as len can be large and we don't
 		 * want to use huge intermediate buffers.
 		 */
-		useraddr = (uint8_t *)(t + 1);   /* advance to start of buffer */
+		useraddr = (uint8_t *)t->buf; 
 		while (t->len) {
 			unsigned int chunk = min(t->len, sizeof(buf));
 

==== //depot/projects/toestack/sys/dev/cxgb/cxgb_multiq.c#3 (text+ko) ====

@@ -87,7 +87,7 @@
 #endif
 
 extern struct sysctl_oid_list sysctl__hw_cxgb_children;
-static int cxgb_pcpu_tx_coalesce = 1;
+static int cxgb_pcpu_tx_coalesce = 0;
 TUNABLE_INT("hw.cxgb.tx_coalesce", &cxgb_pcpu_tx_coalesce);
 SYSCTL_UINT(_hw_cxgb, OID_AUTO, tx_coalesce, CTLFLAG_RDTUN, &cxgb_pcpu_tx_coalesce, 0,
     "coalesce small packets into a single work request");
@@ -383,12 +383,13 @@
 }
 
 static int
-cxgb_pcpu_reclaim_tx(struct sge_txq *txq)
+cxgb_pcpu_reclaim_tx(struct sge_txq *txq, struct mbuf_head *mbq)
 {
 	int reclaimable, total_reclaimed, reclaimed, freed, i, j, n;
 	struct mbuf *m_vec[TX_CLEAN_MAX_DESC];
 	struct sge_qset *qs = txq_to_qset(txq, TXQ_ETH);
-		
+
+	
 	KASSERT(qs->qs_cpuid == curcpu, ("cpu qset mismatch cpuid=%d curcpu=%d",
 			qs->qs_cpuid, curcpu));
 	
@@ -398,12 +399,18 @@
 		
 		total_reclaimed += reclaimed;
 		
-		if (j > 10 || cxgb_debug)
+		if (j > 20 || cxgb_debug)
 			printf("n=%d reclaimable=%d txq->processed=%d txq->cleaned=%d txq->in_use=%d\n",
 			    n, reclaimable, txq->processed, txq->cleaned, txq->in_use);
-		
-		for (i = 0; i < n; i++) 
-			m_freem_vec(m_vec[i]);
+
+		for (i = 0; i < n; i++)
+			prefetch(m_vec[i]);
+		/*
+		 * really want to use an mbuf_ring here to avoid touching touching the mbufs
+		 * when all we want to do is store them for later
+		 */
+		for (i = 0; i < n; i++)
+			mbufq_tail(mbq, m_vec[i]);
 		freed += n;
 		j++;
 		
@@ -418,14 +425,14 @@
 }
 
 static int
-cxgb_pcpu_start_(struct sge_qset *qs, struct mbuf *immpkt, int tx_flush)
+cxgb_pcpu_start_(struct sge_qset *qs, struct mbuf *immpkt, int tx_flush, struct mbuf_head *mbq)
 {
 	int i, err, initerr, flush, reclaimed, stopped;
 	struct port_info *pi; 
 	struct sge_txq *txq;
 	adapter_t *sc;
 	uint32_t max_desc;
-
+	
 	pi = qs->port;
 	initerr = err = i = reclaimed = 0;
 	sc = pi->adapter;
@@ -447,7 +454,7 @@
 			m_freem_vec(immpkt);
 		return (initerr);
 	}
-	
+
 	if ((tx_flush && (desc_reclaimable(txq) > 0)) || (desc_reclaimable(txq) > (TX_ETH_Q_SIZE>>1))) {
 		int reclaimed = 0;
 
@@ -457,7 +464,7 @@
 			    qs->qs_cpuid, curcpu, desc_reclaimable(txq),
 			    txq, txq->cidx, txq->pidx);
 		}
-		reclaimed = cxgb_pcpu_reclaim_tx(txq);
+		reclaimed = cxgb_pcpu_reclaim_tx(txq, mbq);
 		if (cxgb_debug)
 			printf("reclaimed=%d\n", reclaimed);
 	}
@@ -494,6 +501,8 @@
 	struct port_info *pi;
 	struct sge_qset *qs;
 	struct sge_txq *txq = NULL /* gcc is dumb */;
+	struct mbuf_head mbq;
+	struct mbuf *m;
 	
 	pi = ifp->if_softc;
 	qs = NULL;
@@ -508,10 +517,11 @@
 		qs = &pi->adapter->sge.qs[pi->first_qset];
 
 	txq = &qs->txq[TXQ_ETH];
-	
+
+	mbufq_init(&mbq);
 	if (mtx_trylock(&txq->lock)) {
 		txq->flags |= TXQ_TRANSMITTING;
-		err = cxgb_pcpu_start_(qs, immpkt, FALSE);
+		err = cxgb_pcpu_start_(qs, immpkt, FALSE, &mbq);
 		txq->flags &= ~TXQ_TRANSMITTING;
 		resid = (mbufq_len(&txq->sendq) > 128) || (desc_reclaimable(txq) > 128);
 		mtx_unlock(&txq->lock);
@@ -521,6 +531,21 @@
 	if (resid && (txq->flags & TXQ_TRANSMITTING) == 0)
 		wakeup(qs);
 
+	critical_enter();
+	/*
+	 * Are we on a cpu with a service thread?
+	 */
+	if (curcpu < SGE_QSETS) {
+		qs = &pi->adapter->sge.qs[curcpu];
+		txq = &qs->txq[TXQ_ETH];
+		mbufq_append(&txq->cleanq, &mbq);
+		critical_exit();
+	} else {

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


More information about the p4-projects mailing list