igb.4: Update according to the recent TX/RX MSI-X handling work
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 21 Dec 2015 12:35:12 +0000 (20:35 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 21 Dec 2015 12:35:12 +0000 (20:35 +0800)
share/man/man4/igb.4

index d8f4824..eaff6b0 100644 (file)
@@ -31,7 +31,7 @@
 .\"
 .\" $FreeBSD: src/share/man/man4/igb.4,v 1.2 2010/05/14 20:11:30 marius Exp $
 .\"
-.Dd December 19, 2015
+.Dd December 21, 2015
 .Dt IGB 4
 .Os
 .Sh NAME
@@ -319,11 +319,19 @@ as many transmission queues ready-for-use as allowed by the number of CPUs.
 By default,
 the driver will use MSI-X if it is supported.
 This behaviour can be turned off by setting this tunable to 0.
-.It Va hw.igbX.msix.off
-If MSI-X is used
-and the number of MSI-X vectors is not enough to
+.It Va hw.igb.msix.agg_rxtx Va hw.igbX.msix.agg_rxtx
+If MSI-X is used,
+the driver aggregates transmission queue and reception queue processing
+by default.
+This behaviour could be turned off by setting this tunable to 0.
+If the number of MSI-X vectors is not enough to
 put transmission queue processing and reception queue processing
 onto independent MSI-X vector,
+then transmission queue and reception queue processing are always
+aggregated.
+.It Va hw.igbX.msix.off
+If MSI-X is used,
+and transmission queue and reception queue processing are aggregated,
 this tunable specifies the leading target CPU for
 transmission and reception queues processing.
 The value specificed must be aligned to the maximum of
@@ -331,18 +339,14 @@ the number of reception queues
 and the number of transmission queues enabled,
 and must be less than the power of 2 number of CPUs.
 .It Va hw.igbX.msix.rxoff
-If MSI-X is used
-and the number of MSI-X vectors is enough to
-put transmission queue processing and reception queue processing
-onto independent MSI-X vector,
+If MSI-X is used,
+and transmission queue and reception queue processing are not aggregated,
 this tunable specifies the leading target CPU for reception queues processing.
 The value specificed must be aligned to the number of reception queues enabled
 and must be less than the power of 2 number of CPUs.
 .It Va hw.igbX.msix.txoff
-If MSI-X is used
-and the number of MSI-X vectors is enough to
-put transmission queue processing and reception queue processing
-onto independent MSI-X vector,
+If MSI-X is used,
+and transmission queue and reception queue processing are not aggregated,
 this tunable specifies the leading target CPU
 for transmission queues processing.
 The value specificed must be aligned to
@@ -394,7 +398,7 @@ A number of per-interface variables are implemented in the
 branch of the
 .Xr sysctl 3
 MIB.
-.Bl -tag -width "tx_intr_nsegs"
+.Bl -tag -width "rxtx_intr_rate"
 .It Va rxr
 Number of reception queues could be enabled (read-only).
 Use the tunable
@@ -427,23 +431,33 @@ Use the tunable
 or
 .Va hw.igbX.txd
 to configure it.
-.It Va intr_rate
+.It Va rxtx_intr_rate
 If MSI or legacy interrupt is used,
 this sysctl controls the highest possible frequency
 that interrupt could be generated by the device.
+If MSI-X is used,
+this sysctl controls the highest possible frequency
+that interrupt could be generated by the MSI-X vectors,
+which aggregate transmission queue and reception queue procecssing.
 It is 6000 by default (~150us).
-.It Va msixY_rate
+.It Va rx_intr_rate
 If MSI-X is used,
 this sysctl controls the highest possible frequency
-that interrupt could be generated by the
-.Em Y
-MSI-X vector.
-For reception processing only MSI-X vector,
-the default value is 6000 (~150us).
-For transmission processing only MSI-X vector,
-the default value is 4000 (250us).
-For MSI-X vector which handles both reception and transmission,
-the default value is 6000 (~150us).
+that interrupt could be generated by the MSI-X vectors,
+which only process reception queue.
+It is 6000 by default (~150us).
+.It Va tx_intr_rate
+If MSI-X is used,
+this sysctl controls the highest possible frequency
+that interrupt could be generated by the MSI-X vectors,
+which only process transmission queue.
+It is 4000 by default (250us).
+.It Va sts_intr_rate
+If MSI-X is used,
+this sysctl controls the highest possible frequency
+that interrupt could be generated by the MSI-X vectors,
+which only process chip status changes.
+It is 6000 by default (~150us).
 .It Va tx_intr_nsegs
 Transmission interrupt is asked to be generated upon every
 .Va tx_intr_nsegs