158e5fbcbSAlexander Motin.\" 258e5fbcbSAlexander Motin.\" Copyright (c) 2016 Alexander Motin <mav@FreeBSD.org> 358e5fbcbSAlexander Motin.\" All rights reserved. 458e5fbcbSAlexander Motin.\" 558e5fbcbSAlexander Motin.\" Redistribution and use in source and binary forms, with or without 658e5fbcbSAlexander Motin.\" modification, are permitted provided that the following conditions 758e5fbcbSAlexander Motin.\" are met: 858e5fbcbSAlexander Motin.\" 1. Redistributions of source code must retain the above copyright 958e5fbcbSAlexander Motin.\" notice, this list of conditions and the following disclaimer. 1058e5fbcbSAlexander Motin.\" 2. Redistributions in binary form must reproduce the above copyright 1158e5fbcbSAlexander Motin.\" notice, this list of conditions and the following disclaimer in the 1258e5fbcbSAlexander Motin.\" documentation and/or other materials provided with the distribution. 1358e5fbcbSAlexander Motin.\" 1458e5fbcbSAlexander Motin.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 1558e5fbcbSAlexander Motin.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1658e5fbcbSAlexander Motin.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1758e5fbcbSAlexander Motin.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 1858e5fbcbSAlexander Motin.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1958e5fbcbSAlexander Motin.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2058e5fbcbSAlexander Motin.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2158e5fbcbSAlexander Motin.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2258e5fbcbSAlexander Motin.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2358e5fbcbSAlexander Motin.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2458e5fbcbSAlexander Motin.\" SUCH DAMAGE. 2558e5fbcbSAlexander Motin.\" 26*3990853dSAlexander Motin.Dd September 2, 2017 2758e5fbcbSAlexander Motin.Dt IF_NTB 4 2858e5fbcbSAlexander Motin.Os 2958e5fbcbSAlexander Motin.Sh NAME 3058e5fbcbSAlexander Motin.Nm if_ntb 3158e5fbcbSAlexander Motin.Nd Virtual Ethernet interface for Non-Transparent Bridges 3258e5fbcbSAlexander Motin.Sh SYNOPSIS 3358e5fbcbSAlexander MotinTo compile this driver into your kernel, 3458e5fbcbSAlexander Motinplace the following lines in your kernel configuration file: 3558e5fbcbSAlexander Motin.Bd -ragged -offset indent 36ed9652daSAlexander Motin.Cd "device ntb" 37ed9652daSAlexander Motin.Cd "device ntb_transport" 3858e5fbcbSAlexander Motin.Cd "device if_ntb" 3958e5fbcbSAlexander Motin.Ed 4058e5fbcbSAlexander Motin.Pp 4158e5fbcbSAlexander MotinOr, to load the driver as a module at boot, place the following line in 4258e5fbcbSAlexander Motin.Xr loader.conf 5 : 4358e5fbcbSAlexander Motin.Bd -literal -offset indent 4458e5fbcbSAlexander Motinif_ntb_load="YES" 4558e5fbcbSAlexander Motin.Ed 4658e5fbcbSAlexander Motin.Pp 4758e5fbcbSAlexander MotinThe following tunables are settable from the 4858e5fbcbSAlexander Motin.Xr loader 8 : 4958e5fbcbSAlexander Motin.Bl -ohang 5058e5fbcbSAlexander Motin.It Va hw.if_ntb.num_queues 51*3990853dSAlexander MotinLimits maximal number of queues per interface. 526bd57d14SAlexander MotinDefault is unlimited. 5358e5fbcbSAlexander Motin.El 5458e5fbcbSAlexander Motin.Sh DESCRIPTION 5558e5fbcbSAlexander MotinThe 5658e5fbcbSAlexander Motin.Nm 5758e5fbcbSAlexander Motindriver attaches on top of the 5858e5fbcbSAlexander Motin.Xr ntb_transport 4 59*3990853dSAlexander Motindriver to utilize one or more of its packet queues to create virtual 60*3990853dSAlexander MotinEthernet network interface between the systems. 61*3990853dSAlexander MotinTypical MTU for the interface is about 64KB to reduce overhead. 62*3990853dSAlexander MotinDefault MAC address for the interface is randomly generated. 6358e5fbcbSAlexander Motin.Pp 6458e5fbcbSAlexander MotinThe 6558e5fbcbSAlexander Motin.Nm 6658e5fbcbSAlexander Motindriver does not implement any real hardware offload, but since PCIe link is 6758e5fbcbSAlexander Motinprotected by CRC32, in some situations it may be possible to save some CPU 6858e5fbcbSAlexander Motincycles by enabling fake checksum offload on both link sides via setting 6958e5fbcbSAlexander Motin.Cm rxcsum 7058e5fbcbSAlexander Motinand 7158e5fbcbSAlexander Motin.Cm txcsum 7258e5fbcbSAlexander Motininterface options. 7358e5fbcbSAlexander Motin.Sh SEE ALSO 7458e5fbcbSAlexander Motin.Xr ntb_transport 4 7558e5fbcbSAlexander Motin.Sh AUTHORS 7658e5fbcbSAlexander Motin.An -nosplit 7758e5fbcbSAlexander MotinThe 7858e5fbcbSAlexander Motin.Nm 7958e5fbcbSAlexander Motindriver was developed by Intel and originally written by 8058e5fbcbSAlexander Motin.An Carl Delsey Aq Mt carl@FreeBSD.org . 8158e5fbcbSAlexander MotinLater improvements were done by 8258e5fbcbSAlexander Motin.An Conrad E. Meyer Aq Mt cem@FreeBSD.org 8358e5fbcbSAlexander Motinand 8458e5fbcbSAlexander Motin.An Alexander Motin Aq Mt mav@FreeBSD.org . 856bd57d14SAlexander Motin.Sh BUGS 866bd57d14SAlexander MotinLinux supports only one queue per interface, so manual configuration 876bd57d14SAlexander Motinmay be required for compatibility. 88