xref: /freebsd/share/man/man4/ix.4 (revision a340b4649621f0dbc0607115217889909ce33bd1)
1d8b48a26SFelix Johnson.\" Copyright (c) 2001-2008, Intel Corporation
2d8b48a26SFelix Johnson.\" All rights reserved.
3d8b48a26SFelix Johnson.\"
4d8b48a26SFelix Johnson.\" Redistribution and use in source and binary forms, with or without
5d8b48a26SFelix Johnson.\" modification, are permitted provided that the following conditions are met:
6d8b48a26SFelix Johnson.\"
7d8b48a26SFelix Johnson.\" 1. Redistributions of source code must retain the above copyright notice,
8d8b48a26SFelix Johnson.\"    this list of conditions and the following disclaimer.
9d8b48a26SFelix Johnson.\"
10d8b48a26SFelix Johnson.\" 2. Redistributions in binary form must reproduce the above copyright
11d8b48a26SFelix Johnson.\"    notice, this list of conditions and the following disclaimer in the
12d8b48a26SFelix Johnson.\"    documentation and/or other materials provided with the distribution.
13d8b48a26SFelix Johnson.\"
14d8b48a26SFelix Johnson.\" 3. Neither the name of the Intel Corporation nor the names of its
15d8b48a26SFelix Johnson.\"    contributors may be used to endorse or promote products derived from
16d8b48a26SFelix Johnson.\"    this software without specific prior written permission.
17d8b48a26SFelix Johnson.\"
18d8b48a26SFelix Johnson.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19d8b48a26SFelix Johnson.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20d8b48a26SFelix Johnson.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21d8b48a26SFelix Johnson.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22d8b48a26SFelix Johnson.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23d8b48a26SFelix Johnson.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24d8b48a26SFelix Johnson.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25d8b48a26SFelix Johnson.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26d8b48a26SFelix Johnson.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27d8b48a26SFelix Johnson.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28d8b48a26SFelix Johnson.\" POSSIBILITY OF SUCH DAMAGE.
29d8b48a26SFelix Johnson.\"
30d8b48a26SFelix Johnson.\" * Other names and brands may be claimed as the property of others.
31d8b48a26SFelix Johnson.\"
32d8b48a26SFelix Johnson.Dd May 17, 2023
33d8b48a26SFelix Johnson.Dt IX 4
34d8b48a26SFelix Johnson.Os
35d8b48a26SFelix Johnson.Sh NAME
36d8b48a26SFelix Johnson.Nm ix
37d8b48a26SFelix Johnson.Nd "Intel(R) 10Gb Ethernet driver for the FreeBSD operating system"
38d8b48a26SFelix Johnson.Sh SYNOPSIS
39d8b48a26SFelix JohnsonTo compile this driver into the kernel,
40d8b48a26SFelix Johnsonplace the following lines in your
41d8b48a26SFelix Johnsonkernel configuration file:
42d8b48a26SFelix Johnson.Bd -ragged -offset indent
43d8b48a26SFelix Johnson.Cd "device iflib"
44d8b48a26SFelix Johnson.Cd "device ix"
45d8b48a26SFelix Johnson.Ed
46d8b48a26SFelix Johnson.Pp
47d8b48a26SFelix JohnsonAlternatively, to load the driver as a
48d8b48a26SFelix Johnsonmodule at boot time, place the following line in
49d8b48a26SFelix Johnson.Xr loader.conf 5 :
50d8b48a26SFelix Johnson.Bd -literal -offset indent
51d8b48a26SFelix Johnsonif_ix_load="YES"
52d8b48a26SFelix Johnson.Ed
53d8b48a26SFelix Johnson.Sh DESCRIPTION
54d8b48a26SFelix JohnsonThe
55d8b48a26SFelix Johnson.Nm
56d8b48a26SFelix Johnsondriver provides support for PCI 10Gb Ethernet adapters based on
57d8b48a26SFelix Johnsonthe Intel 82598EB Intel(R) Network Connections.
58d8b48a26SFelix JohnsonThe driver supports Jumbo Frames, MSIX, TSO, and RSS.
59d8b48a26SFelix Johnson.Pp
60d8b48a26SFelix JohnsonFor questions related to hardware requirements,
61d8b48a26SFelix Johnsonrefer to the documentation supplied with your Intel 10GbE adapter.
62d8b48a26SFelix JohnsonAll hardware requirements listed apply to use with
63d8b48a26SFelix Johnson.Fx .
64d8b48a26SFelix Johnson.Pp
65d8b48a26SFelix JohnsonSupport for Jumbo Frames is provided via the interface MTU setting.
66d8b48a26SFelix JohnsonSelecting an MTU larger than 1500 bytes with the
67d8b48a26SFelix Johnson.Xr ifconfig 8
68d8b48a26SFelix Johnsonutility configures the adapter to receive and transmit Jumbo Frames.
69d8b48a26SFelix JohnsonThe maximum MTU size for Jumbo Frames is 9710.
70d8b48a26SFelix Johnson.Pp
71d8b48a26SFelix JohnsonThis driver version supports VLANs.
72d8b48a26SFelix JohnsonFor information on enabling VLANs, see
73d8b48a26SFelix Johnson.Xr ifconfig 8 .
74d8b48a26SFelix Johnson.Sh HARDWARE
75d8b48a26SFelix JohnsonThe
76d8b48a26SFelix Johnson.Nm
77d8b48a26SFelix Johnsondriver supports the following cards:
78d8b48a26SFelix Johnson.Pp
79d8b48a26SFelix Johnson.Bl -bullet -compact
80d8b48a26SFelix Johnson.It
81d8b48a26SFelix JohnsonIntel(R) 10 Gigabit XF SR/AF Dual Port Server Adapter
82d8b48a26SFelix Johnson.It
83d8b48a26SFelix JohnsonIntel(R) 10 Gigabit XF SR/LR Server Adapter
84d8b48a26SFelix Johnson.It
85d8b48a26SFelix JohnsonIntel(R) 82598EB 10 Gigabit AF Network Connection
86d8b48a26SFelix Johnson.It
87d8b48a26SFelix JohnsonIntel(R) 82598EB 10 Gigabit AT CX4 Network Connection
88d8b48a26SFelix Johnson.El
89*a340b464SFelix Johnson.Sh LOADER TUNABLES
90*a340b464SFelix JohnsonThe
91*a340b464SFelix Johnson.Nm
92*a340b464SFelix Johnsondriver supports the following loader tunables:
93*a340b464SFelix Johnson.Bl -tag -width "hw.ix.allow_unsupported_sfp"
94*a340b464SFelix Johnson.It Va hw.ix.max_interrupt_rate
95*a340b464SFelix JohnsonMaximum interrupts per second.
96*a340b464SFelix Johnson.It Va hw.ix.flow_control
97*a340b464SFelix JohnsonDefault flow control used for all adapters.
98*a340b464SFelix Johnson.It Va hw.ix.advertise_speed
99*a340b464SFelix JohnsonDefault advertised speed for all adapters.
100*a340b464SFelix Johnson.It Va hw.ix.enable_msix
101*a340b464SFelix JohnsonEnable Message Signalled Interrupts (MSI-X).
102*a340b464SFelix Johnson.It Va hw.ix.allow_unsupported_sfp
103*a340b464SFelix JohnsonAllow unsupported small form-factor pluggable
104*a340b464SFelix Johnson.Pq SFP
105*a340b464SFelix Johnsonmodules.
106*a340b464SFelix JohnsonUse at your own risk.
107*a340b464SFelix Johnson.It Va hw.ix.enable_fdir
108*a340b464SFelix JohnsonEnable Flow Director.
109*a340b464SFelix JohnsonFlow Director directs Ethernet packets to the core where the
110*a340b464SFelix Johnsonpacket consuming process, application, container,
111*a340b464SFelix Johnsonor microservice is running.
112*a340b464SFelix Johnson.It Va hw.ix.enable_rss
113*a340b464SFelix JohnsonEnable Receive-Side Scaling (RSS).
114*a340b464SFelix JohnsonWhen RSS is enabled, all of the receive data processing for
115*a340b464SFelix Johnsona particular TCP connection is shared across multiple processors
116*a340b464SFelix Johnsonor processor cores.
117*a340b464SFelix JohnsonWithout RSS, all of the processing is performed by a single
118*a340b464SFelix Johnsonprocessor, resulting in inefficient system cache utilization.
119*a340b464SFelix JohnsonThis has no effect if your system has only one processing unit.
120*a340b464SFelix Johnson.It Va hw.ix.enable_aim
121*a340b464SFelix JohnsonEnable Adaptive Interrupt Moderation (AIM).
122*a340b464SFelix JohnsonVary the interrupt rate over time based on the traffic for
123*a340b464SFelix Johnsonthat interrupt vector.
124*a340b464SFelix Johnson.El
125d8b48a26SFelix Johnson.Sh DIAGNOSTICS
126d8b48a26SFelix Johnson.Bl -diag
127d8b48a26SFelix Johnson.It "ix%d: Unable to allocate bus resource: memory"
128d8b48a26SFelix JohnsonA fatal initialization error has occurred.
129d8b48a26SFelix Johnson.It "ix%d: Unable to allocate bus resource: interrupt"
130d8b48a26SFelix JohnsonA fatal initialization error has occurred.
131d8b48a26SFelix Johnson.It "ix%d: watchdog timeout -- resetting"
132d8b48a26SFelix JohnsonThe device has stopped responding to the network, or there is a problem with
133d8b48a26SFelix Johnsonthe network connection (cable).
134d8b48a26SFelix Johnson.El
135d8b48a26SFelix Johnson.Sh SUPPORT
136d8b48a26SFelix JohnsonFor general information and support,
137d8b48a26SFelix Johnsongo to the Intel support website at:
138d8b48a26SFelix Johnson.Pa http://support.intel.com .
139d8b48a26SFelix Johnson.Pp
140d8b48a26SFelix JohnsonIf an issue is identified with the released source code on the supported kernel
141d8b48a26SFelix Johnsonwith a supported adapter, email the specific information related to the
142d8b48a26SFelix Johnsonissue to
143d8b48a26SFelix Johnson.Aq Mt freebsd@intel.com .
144d8b48a26SFelix Johnson.Sh SEE ALSO
145d8b48a26SFelix Johnson.Xr altq 4 ,
146d8b48a26SFelix Johnson.Xr arp 4 ,
147d8b48a26SFelix Johnson.Xr iflib 4 ,
148d8b48a26SFelix Johnson.Xr netintro 4 ,
149d8b48a26SFelix Johnson.Xr ng_ether 4 ,
150d8b48a26SFelix Johnson.Xr polling 4 ,
151d8b48a26SFelix Johnson.Xr vlan 4 ,
152*a340b464SFelix Johnson.Xr ifconfig 8 ,
153*a340b464SFelix Johnson.Xr sysctl 8
154d8b48a26SFelix Johnson.Sh HISTORY
155d8b48a26SFelix JohnsonThe
156d8b48a26SFelix Johnson.Nm
157d8b48a26SFelix Johnsondevice driver first appeared in
158d8b48a26SFelix Johnson.Fx 7.0 .
159d8b48a26SFelix Johnson.Sh AUTHORS
160d8b48a26SFelix JohnsonThe
161d8b48a26SFelix Johnson.Nm
162d8b48a26SFelix Johnsondriver was written by
163d8b48a26SFelix Johnson.An Intel Corporation Aq Mt freebsd@intel.com .
164d8b48a26SFelix Johnson.Sh CAVEATS
165d8b48a26SFelix JohnsonIntel (R) Flow director support is not fully implemented in
166d8b48a26SFelix Johnson.Fx
167d8b48a26SFelix Johnsonat this time and additional work is required
168d8b48a26SFelix Johnsonbefore those features can be supported.
169d8b48a26SFelix Johnson.Pp
170d8b48a26SFelix JohnsonEnabling flow director may route traffic to the wrong RX queue of the NIC,
171d8b48a26SFelix Johnsonresulting in sub-optimal performance on the receive side.
172