xref: /freebsd/share/man/man4/ix.4 (revision 2d28fd51e5b9d8ef184445dfa204f6ba22d460a5)
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.\"
32*2d28fd51SAlexander Ziaee.Dd October 26, 2024
33d8b48a26SFelix Johnson.Dt IX 4
34d8b48a26SFelix Johnson.Os
35d8b48a26SFelix Johnson.Sh NAME
36d8b48a26SFelix Johnson.Nm ix
37*2d28fd51SAlexander Ziaee.Nd Intel 10Gb Ethernet driver
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
56*2d28fd51SAlexander Ziaeedriver provides support for Intel(R) 10Gb Ethernet PCIe adapters.
57d8b48a26SFelix JohnsonThe driver supports Jumbo Frames, MSIX, TSO, and RSS.
58d8b48a26SFelix Johnson.Pp
59d8b48a26SFelix JohnsonFor questions related to hardware requirements,
60d8b48a26SFelix Johnsonrefer to the documentation supplied with your Intel 10GbE adapter.
61d8b48a26SFelix JohnsonAll hardware requirements listed apply to use with
62d8b48a26SFelix Johnson.Fx .
63d8b48a26SFelix Johnson.Pp
64d8b48a26SFelix JohnsonSupport for Jumbo Frames is provided via the interface MTU setting.
65d8b48a26SFelix JohnsonSelecting an MTU larger than 1500 bytes with the
66d8b48a26SFelix Johnson.Xr ifconfig 8
67d8b48a26SFelix Johnsonutility configures the adapter to receive and transmit Jumbo Frames.
68d8b48a26SFelix JohnsonThe maximum MTU size for Jumbo Frames is 9710.
69d8b48a26SFelix Johnson.Pp
70d8b48a26SFelix JohnsonThis driver version supports VLANs.
71d8b48a26SFelix JohnsonFor information on enabling VLANs, see
72d8b48a26SFelix Johnson.Xr ifconfig 8 .
73d8b48a26SFelix Johnson.Sh HARDWARE
74d8b48a26SFelix JohnsonThe
75d8b48a26SFelix Johnson.Nm
76*2d28fd51SAlexander Ziaeedriver supports Intel 10Gb Ethernet PCIe adapters,
77*2d28fd51SAlexander Ziaeeincluding:
78d8b48a26SFelix Johnson.Pp
79d8b48a26SFelix Johnson.Bl -bullet -compact
80d8b48a26SFelix Johnson.It
81*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X553
82d8b48a26SFelix Johnson.It
83*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X552
84d8b48a26SFelix Johnson.It
85*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X550
86d8b48a26SFelix Johnson.It
87*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X540 Bypass
88*2d28fd51SAlexander Ziaee.It
89*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X540
90*2d28fd51SAlexander Ziaee.It
91*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X520 Bypass (82599)
92*2d28fd51SAlexander Ziaee.It
93*2d28fd51SAlexander ZiaeeIntel(R) Ethernet X520 (82599)
94*2d28fd51SAlexander Ziaee.It
95*2d28fd51SAlexander ZiaeeIntel(R) 10 Gigabit Server Adapter (82598EB)
96d8b48a26SFelix Johnson.El
97a340b464SFelix Johnson.Sh LOADER TUNABLES
98a340b464SFelix JohnsonThe
99a340b464SFelix Johnson.Nm
100a340b464SFelix Johnsondriver supports the following loader tunables:
101a340b464SFelix Johnson.Bl -tag -width "hw.ix.allow_unsupported_sfp"
102a340b464SFelix Johnson.It Va hw.ix.max_interrupt_rate
103a340b464SFelix JohnsonMaximum interrupts per second.
104a340b464SFelix Johnson.It Va hw.ix.flow_control
105a340b464SFelix JohnsonDefault flow control used for all adapters.
106a340b464SFelix Johnson.It Va hw.ix.advertise_speed
107a340b464SFelix JohnsonDefault advertised speed for all adapters.
108a340b464SFelix Johnson.It Va hw.ix.enable_msix
109a340b464SFelix JohnsonEnable Message Signalled Interrupts (MSI-X).
110a340b464SFelix Johnson.It Va hw.ix.allow_unsupported_sfp
111a340b464SFelix JohnsonAllow unsupported small form-factor pluggable
112a340b464SFelix Johnson.Pq SFP
113a340b464SFelix Johnsonmodules.
114a340b464SFelix JohnsonUse at your own risk.
115a340b464SFelix Johnson.It Va hw.ix.enable_fdir
116a340b464SFelix JohnsonEnable Flow Director.
117a340b464SFelix JohnsonFlow Director directs Ethernet packets to the core where the
118a340b464SFelix Johnsonpacket consuming process, application, container,
119a340b464SFelix Johnsonor microservice is running.
120a340b464SFelix Johnson.It Va hw.ix.enable_rss
121a340b464SFelix JohnsonEnable Receive-Side Scaling (RSS).
122a340b464SFelix JohnsonWhen RSS is enabled, all of the receive data processing for
123a340b464SFelix Johnsona particular TCP connection is shared across multiple processors
124a340b464SFelix Johnsonor processor cores.
125a340b464SFelix JohnsonWithout RSS, all of the processing is performed by a single
126a340b464SFelix Johnsonprocessor, resulting in inefficient system cache utilization.
127a340b464SFelix JohnsonThis has no effect if your system has only one processing unit.
128a340b464SFelix Johnson.It Va hw.ix.enable_aim
129a340b464SFelix JohnsonEnable Adaptive Interrupt Moderation (AIM).
130a340b464SFelix JohnsonVary the interrupt rate over time based on the traffic for
131a340b464SFelix Johnsonthat interrupt vector.
132a340b464SFelix Johnson.El
133d8b48a26SFelix Johnson.Sh DIAGNOSTICS
134d8b48a26SFelix Johnson.Bl -diag
135d8b48a26SFelix Johnson.It "ix%d: Unable to allocate bus resource: memory"
136d8b48a26SFelix JohnsonA fatal initialization error has occurred.
137d8b48a26SFelix Johnson.It "ix%d: Unable to allocate bus resource: interrupt"
138d8b48a26SFelix JohnsonA fatal initialization error has occurred.
139d8b48a26SFelix Johnson.It "ix%d: watchdog timeout -- resetting"
140d8b48a26SFelix JohnsonThe device has stopped responding to the network, or there is a problem with
141d8b48a26SFelix Johnsonthe network connection (cable).
142d8b48a26SFelix Johnson.El
143d8b48a26SFelix Johnson.Sh SUPPORT
144d8b48a26SFelix JohnsonFor general information and support,
145d8b48a26SFelix Johnsongo to the Intel support website at:
146d8b48a26SFelix Johnson.Pa http://support.intel.com .
147d8b48a26SFelix Johnson.Pp
148d8b48a26SFelix JohnsonIf an issue is identified with the released source code on the supported kernel
149d8b48a26SFelix Johnsonwith a supported adapter, email the specific information related to the
150d8b48a26SFelix Johnsonissue to
151d8b48a26SFelix Johnson.Aq Mt freebsd@intel.com .
152d8b48a26SFelix Johnson.Sh SEE ALSO
153d8b48a26SFelix Johnson.Xr altq 4 ,
154d8b48a26SFelix Johnson.Xr arp 4 ,
155d8b48a26SFelix Johnson.Xr iflib 4 ,
156d8b48a26SFelix Johnson.Xr netintro 4 ,
157d8b48a26SFelix Johnson.Xr ng_ether 4 ,
158d8b48a26SFelix Johnson.Xr polling 4 ,
159d8b48a26SFelix Johnson.Xr vlan 4 ,
160a340b464SFelix Johnson.Xr ifconfig 8 ,
161a340b464SFelix Johnson.Xr sysctl 8
162d8b48a26SFelix Johnson.Sh HISTORY
163d8b48a26SFelix JohnsonThe
164d8b48a26SFelix Johnson.Nm
165d8b48a26SFelix Johnsondevice driver first appeared in
166d8b48a26SFelix Johnson.Fx 7.0 .
167d8b48a26SFelix Johnson.Sh AUTHORS
168d8b48a26SFelix JohnsonThe
169d8b48a26SFelix Johnson.Nm
170d8b48a26SFelix Johnsondriver was written by
171d8b48a26SFelix Johnson.An Intel Corporation Aq Mt freebsd@intel.com .
172d8b48a26SFelix Johnson.Sh CAVEATS
173d8b48a26SFelix JohnsonIntel (R) Flow director support is not fully implemented in
174d8b48a26SFelix Johnson.Fx
175d8b48a26SFelix Johnsonat this time and additional work is required
176d8b48a26SFelix Johnsonbefore those features can be supported.
177d8b48a26SFelix Johnson.Pp
178d8b48a26SFelix JohnsonEnabling flow director may route traffic to the wrong RX queue of the NIC,
179d8b48a26SFelix Johnsonresulting in sub-optimal performance on the receive side.
180