-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add documentation for the igb networking driver. v2: - Removed trailing white space - Removed Ethtool version info - Removed LRO kernel version info Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
- Loading branch information
Jeff Kirsher
authored and
David S. Miller
committed
Aug 9, 2010
1 parent
2d0bb1c
commit b55c52b
Showing
1 changed file
with
132 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,132 @@ | ||
Linux* Base Driver for Intel(R) Network Connection | ||
================================================== | ||
|
||
Intel Gigabit Linux driver. | ||
Copyright(c) 1999 - 2010 Intel Corporation. | ||
|
||
Contents | ||
======== | ||
|
||
- Identifying Your Adapter | ||
- Additional Configurations | ||
- Support | ||
|
||
Identifying Your Adapter | ||
======================== | ||
|
||
This driver supports all 82575, 82576 and 82580-based Intel (R) gigabit network | ||
connections. | ||
|
||
For specific information on how to identify your adapter, go to the Adapter & | ||
Driver ID Guide at: | ||
|
||
http://support.intel.com/support/go/network/adapter/idguide.htm | ||
|
||
Command Line Parameters | ||
======================= | ||
|
||
The default value for each parameter is generally the recommended setting, | ||
unless otherwise noted. | ||
|
||
max_vfs | ||
------- | ||
Valid Range: 0-7 | ||
Default Value: 0 | ||
|
||
This parameter adds support for SR-IOV. It causes the driver to spawn up to | ||
max_vfs worth of virtual function. | ||
|
||
Additional Configurations | ||
========================= | ||
|
||
Jumbo Frames | ||
------------ | ||
Jumbo Frames support is enabled by changing the MTU to a value larger than | ||
the default of 1500. Use the ifconfig command to increase the MTU size. | ||
For example: | ||
|
||
ifconfig eth<x> mtu 9000 up | ||
|
||
This setting is not saved across reboots. | ||
|
||
Notes: | ||
|
||
- The maximum MTU setting for Jumbo Frames is 9216. This value coincides | ||
with the maximum Jumbo Frames size of 9234 bytes. | ||
|
||
- Using Jumbo Frames at 10 or 100 Mbps may result in poor performance or | ||
loss of link. | ||
|
||
Ethtool | ||
------- | ||
The driver utilizes the ethtool interface for driver configuration and | ||
diagnostics, as well as displaying statistical information. | ||
|
||
http://sourceforge.net/projects/gkernel. | ||
|
||
Enabling Wake on LAN* (WoL) | ||
--------------------------- | ||
WoL is configured through the Ethtool* utility. | ||
|
||
For instructions on enabling WoL with Ethtool, refer to the Ethtool man page. | ||
|
||
WoL will be enabled on the system during the next shut down or reboot. | ||
For this driver version, in order to enable WoL, the igb driver must be | ||
loaded when shutting down or rebooting the system. | ||
|
||
Wake On LAN is only supported on port A of multi-port adapters. | ||
|
||
Wake On LAN is not supported for the Intel(R) Gigabit VT Quad Port Server | ||
Adapter. | ||
|
||
Multiqueue | ||
---------- | ||
In this mode, a separate MSI-X vector is allocated for each queue and one | ||
for "other" interrupts such as link status change and errors. All | ||
interrupts are throttled via interrupt moderation. Interrupt moderation | ||
must be used to avoid interrupt storms while the driver is processing one | ||
interrupt. The moderation value should be at least as large as the expected | ||
time for the driver to process an interrupt. Multiqueue is off by default. | ||
|
||
REQUIREMENTS: MSI-X support is required for Multiqueue. If MSI-X is not | ||
found, the system will fallback to MSI or to Legacy interrupts. | ||
|
||
LRO | ||
--- | ||
Large Receive Offload (LRO) is a technique for increasing inbound throughput | ||
of high-bandwidth network connections by reducing CPU overhead. It works by | ||
aggregating multiple incoming packets from a single stream into a larger | ||
buffer before they are passed higher up the networking stack, thus reducing | ||
the number of packets that have to be processed. LRO combines multiple | ||
Ethernet frames into a single receive in the stack, thereby potentially | ||
decreasing CPU utilization for receives. | ||
|
||
NOTE: You need to have inet_lro enabled via either the CONFIG_INET_LRO or | ||
CONFIG_INET_LRO_MODULE kernel config option. Additionally, if | ||
CONFIG_INET_LRO_MODULE is used, the inet_lro module needs to be loaded | ||
before the igb driver. | ||
|
||
You can verify that the driver is using LRO by looking at these counters in | ||
Ethtool: | ||
|
||
lro_aggregated - count of total packets that were combined | ||
lro_flushed - counts the number of packets flushed out of LRO | ||
lro_no_desc - counts the number of times an LRO descriptor was not available | ||
for the LRO packet | ||
|
||
NOTE: IPv6 and UDP are not supported by LRO. | ||
|
||
Support | ||
======= | ||
|
||
For general information, go to the Intel support website at: | ||
|
||
www.intel.com/support/ | ||
|
||
or the Intel Wired Networking project hosted by Sourceforge at: | ||
|
||
http://sourceforge.net/projects/e1000 | ||
|
||
If an issue is identified with the released source code on the supported | ||
kernel with a supported adapter, email the specific information related | ||
to the issue to e1000-devel@lists.sf.net |