2011-11-16 17:11:13 +00:00
|
|
|
.\" Copyright (c) 2011 Solarflare Communications, Inc.
|
|
|
|
.\" All rights reserved.
|
|
|
|
.\"
|
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided that the following conditions
|
|
|
|
.\" are met:
|
|
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
.\" SUCH DAMAGE.
|
|
|
|
.\"
|
|
|
|
.\" $FreeBSD$
|
|
|
|
.\"
|
2015-02-22 18:59:00 +00:00
|
|
|
.Dd February 22, 2015
|
2011-11-16 17:11:13 +00:00
|
|
|
.Dt SFXGE 4
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm sfxge
|
|
|
|
.Nd "Solarflare 10Gb Ethernet adapter driver"
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
To compile this driver into the kernel,
|
|
|
|
place the following lines in your
|
|
|
|
kernel configuration file:
|
|
|
|
.Bd -ragged -offset indent
|
|
|
|
.Cd "device sfxge"
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
To load the driver as a
|
|
|
|
module at boot time, place the following line in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
sfxge_load="YES"
|
|
|
|
.Ed
|
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver provides support for 10Gb Ethernet adapters based on
|
2011-11-17 17:57:35 +00:00
|
|
|
Solarflare SFC9000 family controllers.
|
|
|
|
The driver supports jumbo
|
2011-11-16 17:11:13 +00:00
|
|
|
frames, transmit/receive checksum offload, TCP Segmentation Offload
|
|
|
|
(TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO,
|
2012-03-29 05:02:12 +00:00
|
|
|
and Receive Side Scaling (RSS) using MSI-X interrupts.
|
2011-11-16 17:11:13 +00:00
|
|
|
.Pp
|
|
|
|
The driver allocates 1 receive queue, transmit queue, event queue and
|
2011-11-17 17:57:35 +00:00
|
|
|
IRQ per CPU up to a maximum of 64.
|
|
|
|
IRQ affinities should be spread out using
|
2012-02-09 04:37:30 +00:00
|
|
|
.Xr cpuset 1 .
|
2011-11-16 17:11:13 +00:00
|
|
|
Interrupt moderation may be controlled through the sysctl
|
2011-11-17 17:57:35 +00:00
|
|
|
.Va dev.sfxge.%d.int_mod
|
|
|
|
(units are microseconds).
|
2011-11-16 17:11:13 +00:00
|
|
|
.Pp
|
|
|
|
For more information on configuring this device, see
|
|
|
|
.Xr ifconfig 8 .
|
|
|
|
.Pp
|
|
|
|
A large number of MAC, PHY and data path statistics are available
|
2011-11-17 17:57:35 +00:00
|
|
|
under the sysctl
|
|
|
|
.Va dev.sfxge.%d.stats .
|
|
|
|
The adapter's VPD
|
2011-11-16 17:11:13 +00:00
|
|
|
fields including its serial number are available under the sysctl
|
2011-11-17 17:57:35 +00:00
|
|
|
.Va dev.sfxge.%d.vpd .
|
2011-11-16 17:11:13 +00:00
|
|
|
.Sh HARDWARE
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver supports all 10Gb Ethernet adapters based on Solarflare SFC9000
|
|
|
|
family controllers.
|
2014-09-30 20:38:36 +00:00
|
|
|
.Sh LOADER TUNABLES
|
|
|
|
Tunables can be set at the
|
|
|
|
.Xr loader 8
|
|
|
|
prompt before booting the kernel or stored in
|
|
|
|
.Xr loader.conf 5 .
|
|
|
|
Actual values can be obtained using
|
|
|
|
.Xr sysctl 8 .
|
|
|
|
.Bl -tag -width indent
|
|
|
|
.It Va hw.sfxge.rx_ring
|
2014-10-01 17:16:18 +00:00
|
|
|
The maximum number of descriptors in a receive queue ring.
|
2014-09-30 20:38:36 +00:00
|
|
|
Supported values are: 512, 1024, 2048 and 4096.
|
|
|
|
.It Va hw.sfxge.tx_ring
|
2014-10-01 17:16:18 +00:00
|
|
|
The maximum number of descriptors in a transmit queue ring.
|
2014-09-30 20:38:36 +00:00
|
|
|
Supported values are: 512, 1024, 2048 and 4096.
|
|
|
|
.It Va hw.sfxge.tx_dpl_get_max
|
2014-10-01 17:16:18 +00:00
|
|
|
The maximum length of the deferred packet
|
|
|
|
.Dq get-list
|
2015-01-29 19:11:37 +00:00
|
|
|
for queued transmit packets (TCP and non-TCP), used only if the transmit
|
|
|
|
queue lock can be acquired.
|
2014-10-01 17:16:18 +00:00
|
|
|
If a packet is dropped, the
|
2015-01-29 19:11:37 +00:00
|
|
|
.Va tx_get_overflow
|
|
|
|
counter is incremented and the local sender receives ENOBUFS.
|
|
|
|
The value must be greater than 0.
|
|
|
|
.It Va hw.sfxge.tx_dpl_get_non_tcp_max
|
|
|
|
The maximum number of non-TCP packets in the deferred packet
|
|
|
|
.Dq get-list
|
|
|
|
, used only if the transmit queue lock can be acquired.
|
2015-02-22 18:59:00 +00:00
|
|
|
If a packet is dropped, the
|
2015-01-29 19:11:37 +00:00
|
|
|
.Va tx_get_non_tcp_overflow
|
2014-10-01 17:16:18 +00:00
|
|
|
counter is incremented and the local sender receives ENOBUFS.
|
|
|
|
The value must be greater than 0.
|
2014-09-30 20:38:36 +00:00
|
|
|
.It Va hw.sfxge.tx_dpl_put_max
|
2014-10-01 17:16:18 +00:00
|
|
|
The maximum length of the deferred packet
|
|
|
|
.Dq put-list
|
|
|
|
for queued transmit
|
2014-09-30 20:38:36 +00:00
|
|
|
packets, used if the transmit queue lock cannot be acquired.
|
2014-10-01 17:16:18 +00:00
|
|
|
If a packet is dropped, the
|
2015-01-29 19:11:37 +00:00
|
|
|
.Va tx_put_overflow
|
2014-10-01 17:16:18 +00:00
|
|
|
counter is incremented and the local sender receives ENOBUFS.
|
|
|
|
The value must be greater than or equal to 0.
|
2015-01-29 19:09:14 +00:00
|
|
|
.It Va hw.sfxge.N.max_rss_channels
|
|
|
|
The maximum number of allocated RSS channels for the Nth adapter.
|
|
|
|
If set to 0 or unset, the number of channels is determined by the number
|
|
|
|
of CPU cores.
|
2014-10-01 17:16:18 +00:00
|
|
|
.El
|
2011-11-16 17:11:13 +00:00
|
|
|
.Sh SUPPORT
|
|
|
|
For general information and support,
|
|
|
|
go to the Solarflare support website at:
|
|
|
|
.Pa https://support.solarflare.com .
|
|
|
|
.Sh SEE ALSO
|
2014-12-21 09:53:29 +00:00
|
|
|
.Xr cpuset 1 ,
|
2011-11-16 17:11:13 +00:00
|
|
|
.Xr arp 4 ,
|
|
|
|
.Xr netintro 4 ,
|
|
|
|
.Xr ng_ether 4 ,
|
|
|
|
.Xr vlan 4 ,
|
|
|
|
.Xr ifconfig 8
|
|
|
|
.Sh AUTHORS
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver was written by
|
|
|
|
.An Philip Paeps
|
|
|
|
and
|
|
|
|
.An Solarflare Communications, Inc.
|