xref: /freebsd-src/share/man/man4/nvmft.4 (revision a15f7c96a27644de3ed3bfcf5feee285ebc1cc91)
1*a15f7c96SJohn Baldwin.\"
2*a15f7c96SJohn Baldwin.\" SPDX-License-Identifier: BSD-2-Clause
3*a15f7c96SJohn Baldwin.\"
4*a15f7c96SJohn Baldwin.\" Copyright (c) 2024 Chelsio Communications, Inc.
5*a15f7c96SJohn Baldwin.\"
6*a15f7c96SJohn Baldwin.Dd May 2, 2024
7*a15f7c96SJohn Baldwin.Dt NVMFT 4
8*a15f7c96SJohn Baldwin.Os
9*a15f7c96SJohn Baldwin.Sh NAME
10*a15f7c96SJohn Baldwin.Nm nvmft
11*a15f7c96SJohn Baldwin.Nd "NVM Express over Fabrics CAM Target Layer frontend"
12*a15f7c96SJohn Baldwin.Sh SYNOPSIS
13*a15f7c96SJohn BaldwinTo compile the subsystem into the kernel,
14*a15f7c96SJohn Baldwinplace the following lines in the
15*a15f7c96SJohn Baldwinkernel configuration file:
16*a15f7c96SJohn Baldwin.Bd -ragged -offset indent
17*a15f7c96SJohn Baldwin.Cd "device nvmft"
18*a15f7c96SJohn Baldwin.Cd "device ctl"
19*a15f7c96SJohn Baldwin.Ed
20*a15f7c96SJohn Baldwin.Pp
21*a15f7c96SJohn BaldwinAlternatively, to load the subsystem as a
22*a15f7c96SJohn Baldwinmodule at boot time, place the following line in
23*a15f7c96SJohn Baldwin.Xr loader.conf 5 :
24*a15f7c96SJohn Baldwin.Bd -literal -offset indent
25*a15f7c96SJohn Baldwinnvmft_load="YES"
26*a15f7c96SJohn Baldwin.Ed
27*a15f7c96SJohn Baldwin.Sh DESCRIPTION
28*a15f7c96SJohn BaldwinThe
29*a15f7c96SJohn Baldwin.Nm
30*a15f7c96SJohn Baldwindriver provides the kernel component of an NVM Express over Fabrics
31*a15f7c96SJohn Baldwincontroller.
32*a15f7c96SJohn BaldwinThe NVMeoF controller is the server exporting namespaces backed by
33*a15f7c96SJohn Baldwinlocal files and volumes to remote hosts.
34*a15f7c96SJohn Baldwin.Nm
35*a15f7c96SJohn Baldwinfollows the dynamic controller model and creates a new dynamic controller
36*a15f7c96SJohn Baldwinfor each association.
37*a15f7c96SJohn Baldwin.Pp
38*a15f7c96SJohn Baldwin.Nm
39*a15f7c96SJohn Baldwinis implemented as a
40*a15f7c96SJohn Baldwin.Xr ctl 4
41*a15f7c96SJohn Baldwinfrontend and exports CAM Target Layer LUNs as namespaces to remote hosts.
42*a15f7c96SJohn BaldwinLUNs can be configured via
43*a15f7c96SJohn Baldwin.Xr ctladm 8 .
44*a15f7c96SJohn Baldwin.Pp
45*a15f7c96SJohn BaldwinAssociations between the local controller and remote hosts are managed
46*a15f7c96SJohn Baldwinusing both the
47*a15f7c96SJohn Baldwin.Xr nvmfd 8
48*a15f7c96SJohn Baldwindaemon and the
49*a15f7c96SJohn Baldwin.Xr ctladm 8
50*a15f7c96SJohn Baldwinutility.
51*a15f7c96SJohn BaldwinThe
52*a15f7c96SJohn Baldwin.Xr nvmfd 8
53*a15f7c96SJohn Baldwindaemon listens for new associations and handles transport-specific
54*a15f7c96SJohn Baldwinnegotiation before handing off connected queue pairs to
55*a15f7c96SJohn Baldwin.Nm
56*a15f7c96SJohn Baldwinwhich associates queue pairs with a suitable controller instance.
57*a15f7c96SJohn BaldwinThe
58*a15f7c96SJohn Baldwin.Cm nvlist
59*a15f7c96SJohn Baldwin.Xr ctladm 8
60*a15f7c96SJohn Baldwincommand lists active controllers.
61*a15f7c96SJohn BaldwinThe
62*a15f7c96SJohn Baldwin.Cm nvterminate
63*a15f7c96SJohn Baldwincommand terminates one or more associations between a local controller
64*a15f7c96SJohn Baldwinand a remote host.
65*a15f7c96SJohn Baldwin.Pp
66*a15f7c96SJohn BaldwinAssociations require a supported transport such as
67*a15f7c96SJohn Baldwin.Xr nvmf_tcp 4
68*a15f7c96SJohn Baldwinfor associations using TCP/IP.
69*a15f7c96SJohn Baldwin.Sh SEE ALSO
70*a15f7c96SJohn Baldwin.Xr ctl 4 ,
71*a15f7c96SJohn Baldwin.Xr nvmf 4 ,
72*a15f7c96SJohn Baldwin.Xr nvmf_tcp 4 ,
73*a15f7c96SJohn Baldwin.Xr ctladm 8 ,
74*a15f7c96SJohn Baldwin.Xr nvmfd 8
75*a15f7c96SJohn Baldwin.Sh HISTORY
76*a15f7c96SJohn BaldwinThe
77*a15f7c96SJohn Baldwin.Nm
78*a15f7c96SJohn Baldwinmodule first appeared in
79*a15f7c96SJohn Baldwin.Fx 15.0 .
80*a15f7c96SJohn Baldwin.Sh AUTHORS
81*a15f7c96SJohn BaldwinThe
82*a15f7c96SJohn Baldwin.Nm
83*a15f7c96SJohn Baldwinsubsystem was developed by
84*a15f7c96SJohn Baldwin.An John Baldwin Aq Mt jhb@FreeBSD.org
85*a15f7c96SJohn Baldwinunder sponsorship from Chelsio Communications, Inc.
86