xref: /freebsd/share/man/man4/sfxge.4 (revision 00007ed4b8285e85bdc9c0b4682cd33b44e6e74f)
1e948693eSPhilip Paeps.\" Copyright (c) 2011 Solarflare Communications, Inc.
2e948693eSPhilip Paeps.\" All rights reserved.
3e948693eSPhilip Paeps.\"
4e948693eSPhilip Paeps.\" Redistribution and use in source and binary forms, with or without
5e948693eSPhilip Paeps.\" modification, are permitted provided that the following conditions
6e948693eSPhilip Paeps.\" are met:
7e948693eSPhilip Paeps.\" 1. Redistributions of source code must retain the above copyright
8e948693eSPhilip Paeps.\"    notice, this list of conditions and the following disclaimer.
9e948693eSPhilip Paeps.\" 2. Redistributions in binary form must reproduce the above copyright
10e948693eSPhilip Paeps.\"    notice, this list of conditions and the following disclaimer in the
11e948693eSPhilip Paeps.\"    documentation and/or other materials provided with the distribution.
12e948693eSPhilip Paeps.\"
13e948693eSPhilip Paeps.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14e948693eSPhilip Paeps.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15e948693eSPhilip Paeps.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16e948693eSPhilip Paeps.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17e948693eSPhilip Paeps.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18e948693eSPhilip Paeps.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19e948693eSPhilip Paeps.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20e948693eSPhilip Paeps.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21e948693eSPhilip Paeps.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22e948693eSPhilip Paeps.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23e948693eSPhilip Paeps.\" SUCH DAMAGE.
24e948693eSPhilip Paeps.\"
25e948693eSPhilip Paeps.\" $FreeBSD$
26e948693eSPhilip Paeps.\"
27*00007ed4SAndrew Rybchenko.Dd February 22, 2015
28e948693eSPhilip Paeps.Dt SFXGE 4
29e948693eSPhilip Paeps.Os
30e948693eSPhilip Paeps.Sh NAME
31e948693eSPhilip Paeps.Nm sfxge
32e948693eSPhilip Paeps.Nd "Solarflare 10Gb Ethernet adapter driver"
33e948693eSPhilip Paeps.Sh SYNOPSIS
34e948693eSPhilip PaepsTo compile this driver into the kernel,
35e948693eSPhilip Paepsplace the following lines in your
36e948693eSPhilip Paepskernel configuration file:
37e948693eSPhilip Paeps.Bd -ragged -offset indent
38e948693eSPhilip Paeps.Cd "device sfxge"
39e948693eSPhilip Paeps.Ed
40e948693eSPhilip Paeps.Pp
41e948693eSPhilip PaepsTo load the driver as a
42e948693eSPhilip Paepsmodule at boot time, place the following line in
43e948693eSPhilip Paeps.Xr loader.conf 5 :
44e948693eSPhilip Paeps.Bd -literal -offset indent
45e948693eSPhilip Paepssfxge_load="YES"
46e948693eSPhilip Paeps.Ed
47e948693eSPhilip Paeps.Sh DESCRIPTION
48e948693eSPhilip PaepsThe
49e948693eSPhilip Paeps.Nm
50e948693eSPhilip Paepsdriver provides support for 10Gb Ethernet adapters based on
51d21f98cbSChristian BruefferSolarflare SFC9000 family controllers.
52d21f98cbSChristian BruefferThe driver supports jumbo
53e948693eSPhilip Paepsframes, transmit/receive checksum offload, TCP Segmentation Offload
54e948693eSPhilip Paeps(TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO,
55e948693eSPhilip Paepsand Receive Side Scaling (RSS) using MSI-X interrupts.
56e948693eSPhilip Paeps.Pp
57e948693eSPhilip PaepsThe driver allocates 1 receive queue, transmit queue, event queue and
58d21f98cbSChristian BruefferIRQ per CPU up to a maximum of 64.
59d21f98cbSChristian BruefferIRQ affinities should be spread out using
60814b16baSGlen Barber.Xr cpuset 1 .
61e948693eSPhilip PaepsInterrupt moderation may be controlled through the sysctl
62d21f98cbSChristian Brueffer.Va dev.sfxge.%d.int_mod
63d21f98cbSChristian Brueffer(units are microseconds).
64e948693eSPhilip Paeps.Pp
65e948693eSPhilip PaepsFor more information on configuring this device, see
66e948693eSPhilip Paeps.Xr ifconfig 8 .
67e948693eSPhilip Paeps.Pp
68e948693eSPhilip PaepsA large number of MAC, PHY and data path statistics are available
69d21f98cbSChristian Bruefferunder the sysctl
70d21f98cbSChristian Brueffer.Va dev.sfxge.%d.stats .
71d21f98cbSChristian BruefferThe adapter's VPD
72e948693eSPhilip Paepsfields including its serial number are available under the sysctl
73d21f98cbSChristian Brueffer.Va dev.sfxge.%d.vpd .
74e948693eSPhilip Paeps.Sh HARDWARE
75e948693eSPhilip PaepsThe
76e948693eSPhilip Paeps.Nm
77e948693eSPhilip Paepsdriver supports all 10Gb Ethernet adapters based on Solarflare SFC9000
78e948693eSPhilip Paepsfamily controllers.
79316ee70dSGeorge V. Neville-Neil.Sh LOADER TUNABLES
80316ee70dSGeorge V. Neville-NeilTunables can be set at the
81316ee70dSGeorge V. Neville-Neil.Xr loader 8
82316ee70dSGeorge V. Neville-Neilprompt before booting the kernel or stored in
83316ee70dSGeorge V. Neville-Neil.Xr loader.conf 5 .
84316ee70dSGeorge V. Neville-NeilActual values can be obtained using
85316ee70dSGeorge V. Neville-Neil.Xr sysctl 8 .
86316ee70dSGeorge V. Neville-Neil.Bl -tag -width indent
87316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.rx_ring
8898286ba5SBenjamin KadukThe maximum number of descriptors in a receive queue ring.
89316ee70dSGeorge V. Neville-NeilSupported values are: 512, 1024, 2048 and 4096.
90316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.tx_ring
9198286ba5SBenjamin KadukThe maximum number of descriptors in a transmit queue ring.
92316ee70dSGeorge V. Neville-NeilSupported values are: 512, 1024, 2048 and 4096.
93316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.tx_dpl_get_max
9498286ba5SBenjamin KadukThe maximum length of the deferred packet
9598286ba5SBenjamin Kaduk.Dq get-list
9693929f25SAndrew Rybchenkofor queued transmit packets (TCP and non-TCP), used only if the transmit
9793929f25SAndrew Rybchenkoqueue lock can be acquired.
9898286ba5SBenjamin KadukIf a packet is dropped, the
9993929f25SAndrew Rybchenko.Va tx_get_overflow
10093929f25SAndrew Rybchenkocounter is incremented and the local sender receives ENOBUFS.
10193929f25SAndrew RybchenkoThe value must be greater than 0.
10293929f25SAndrew Rybchenko.It Va hw.sfxge.tx_dpl_get_non_tcp_max
10393929f25SAndrew RybchenkoThe maximum number of non-TCP packets in the deferred packet
10493929f25SAndrew Rybchenko.Dq get-list
10593929f25SAndrew Rybchenko, used only if the transmit queue lock can be acquired.
106*00007ed4SAndrew RybchenkoIf a packet is dropped, the
10793929f25SAndrew Rybchenko.Va tx_get_non_tcp_overflow
10898286ba5SBenjamin Kadukcounter is incremented and the local sender receives ENOBUFS.
10998286ba5SBenjamin KadukThe value must be greater than 0.
110316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.tx_dpl_put_max
11198286ba5SBenjamin KadukThe maximum length of the deferred packet
11298286ba5SBenjamin Kaduk.Dq put-list
11398286ba5SBenjamin Kadukfor queued transmit
114316ee70dSGeorge V. Neville-Neilpackets, used if the transmit queue lock cannot be acquired.
11598286ba5SBenjamin KadukIf a packet is dropped, the
11693929f25SAndrew Rybchenko.Va tx_put_overflow
11798286ba5SBenjamin Kadukcounter is incremented and the local sender receives ENOBUFS.
11898286ba5SBenjamin KadukThe value must be greater than or equal to 0.
119d9e49c83SAndrew Rybchenko.It Va hw.sfxge.N.max_rss_channels
120d9e49c83SAndrew RybchenkoThe maximum number of allocated RSS channels for the Nth adapter.
121d9e49c83SAndrew RybchenkoIf set to 0 or unset, the number of channels is determined by the number
122d9e49c83SAndrew Rybchenkoof CPU cores.
12398286ba5SBenjamin Kaduk.El
124e948693eSPhilip Paeps.Sh SUPPORT
125e948693eSPhilip PaepsFor general information and support,
126e948693eSPhilip Paepsgo to the Solarflare support website at:
127e948693eSPhilip Paeps.Pa https://support.solarflare.com .
128e948693eSPhilip Paeps.Sh SEE ALSO
1290b3504fdSChristian Brueffer.Xr cpuset 1 ,
130e948693eSPhilip Paeps.Xr arp 4 ,
131e948693eSPhilip Paeps.Xr netintro 4 ,
132e948693eSPhilip Paeps.Xr ng_ether 4 ,
133e948693eSPhilip Paeps.Xr vlan 4 ,
134e948693eSPhilip Paeps.Xr ifconfig 8
135e948693eSPhilip Paeps.Sh AUTHORS
136e948693eSPhilip PaepsThe
137e948693eSPhilip Paeps.Nm
138e948693eSPhilip Paepsdriver was written by
139e948693eSPhilip Paeps.An Philip Paeps
140e948693eSPhilip Paepsand
141e948693eSPhilip Paeps.An Solarflare Communications, Inc.
142