xref: /freebsd/tools/tools/nvmf/nvmfd/nvmfd.8 (revision 83dc2f33394bfee9e5e64693dda36b69e75718fc)
1*83dc2f33SJohn Baldwin.\"
2*83dc2f33SJohn Baldwin.\" SPDX-License-Identifier: BSD-2-Clause
3*83dc2f33SJohn Baldwin.\"
4*83dc2f33SJohn Baldwin.\" Copyright (c) 2024 Chelsio Communications, Inc.
5*83dc2f33SJohn Baldwin.\"
6*83dc2f33SJohn Baldwin.Dd July 25, 2024
7*83dc2f33SJohn Baldwin.Dt NVMFD 8
8*83dc2f33SJohn Baldwin.Os
9*83dc2f33SJohn Baldwin.Sh NAME
10*83dc2f33SJohn Baldwin.Nm nvmfd
11*83dc2f33SJohn Baldwin.Nd "NVMeoF controller daemon"
12*83dc2f33SJohn Baldwin.Sh SYNOPSIS
13*83dc2f33SJohn Baldwin.Nm
14*83dc2f33SJohn Baldwin.Fl K
15*83dc2f33SJohn Baldwin.Op Fl dFGg
16*83dc2f33SJohn Baldwin.Op Fl H Ar MAXH2CDATA
17*83dc2f33SJohn Baldwin.Op Fl P Ar port
18*83dc2f33SJohn Baldwin.Op Fl p Ar port
19*83dc2f33SJohn Baldwin.Op Fl t Ar transport
20*83dc2f33SJohn Baldwin.Op Fl n Ar subnqn
21*83dc2f33SJohn Baldwin.Nm
22*83dc2f33SJohn Baldwin.Op Fl dFGg
23*83dc2f33SJohn Baldwin.Op Fl H Ar MAXH2CDATA
24*83dc2f33SJohn Baldwin.Op Fl P Ar port
25*83dc2f33SJohn Baldwin.Op Fl p Ar port
26*83dc2f33SJohn Baldwin.Op Fl t Ar transport
27*83dc2f33SJohn Baldwin.Op Fl n Ar subnqn
28*83dc2f33SJohn Baldwin.Ar device
29*83dc2f33SJohn Baldwin.Op Ar device ...
30*83dc2f33SJohn Baldwin.Sh DESCRIPTION
31*83dc2f33SJohn Baldwin.Nm
32*83dc2f33SJohn Baldwinaccepts incoming NVMeoF connections for both I/O and discovery controllers.
33*83dc2f33SJohn Baldwin.Nm
34*83dc2f33SJohn Baldwincan either implement a single dynamic I/O controller in user mode or hand
35*83dc2f33SJohn Baldwinoff incoming I/O controller connections to
36*83dc2f33SJohn Baldwin.Xr nvmft 4 .
37*83dc2f33SJohn BaldwinA dynamic discovery controller service is always provided in user mode.
38*83dc2f33SJohn Baldwin.Pp
39*83dc2f33SJohn BaldwinThe following options are available:
40*83dc2f33SJohn Baldwin.Bl -tag -width "-t transport"
41*83dc2f33SJohn Baldwin.It Fl F
42*83dc2f33SJohn BaldwinPermit remote hosts to disable SQ flow control.
43*83dc2f33SJohn Baldwin.It Fl G
44*83dc2f33SJohn BaldwinPermit remote hosts to enable PDU data digests for the TCP transport.
45*83dc2f33SJohn Baldwin.It Fl g
46*83dc2f33SJohn BaldwinPermit remote hosts to enable PDU header digests for the TCP transport.
47*83dc2f33SJohn Baldwin.It Fl H
48*83dc2f33SJohn BaldwinSet the MAXH2CDATA value advertised to the remote host for the TCP transport.
49*83dc2f33SJohn BaldwinThis value is in bytes and determines the maximum data payload size for
50*83dc2f33SJohn Baldwindata PDUs sent by the remote host.
51*83dc2f33SJohn BaldwinThe value must be at least 4096 and defaults to 256KiB.
52*83dc2f33SJohn Baldwin.It Fl K
53*83dc2f33SJohn BaldwinEnable kernel mode which hands off incoming I/O controller connections to
54*83dc2f33SJohn Baldwin.Xr nvmft 4 .
55*83dc2f33SJohn Baldwin.It Fl P Ar port
56*83dc2f33SJohn BaldwinUse
57*83dc2f33SJohn Baldwin.Ar port
58*83dc2f33SJohn Baldwinas the listen TCP port for the discovery controller service.
59*83dc2f33SJohn BaldwinThe default value is 8009.
60*83dc2f33SJohn Baldwin.It Fl d
61*83dc2f33SJohn BaldwinEnable debug mode.
62*83dc2f33SJohn BaldwinThe daemon sends any errors to standard output and does not place
63*83dc2f33SJohn Baldwinitself in the background.
64*83dc2f33SJohn Baldwin.It Fl p Ar port
65*83dc2f33SJohn BaldwinUse
66*83dc2f33SJohn Baldwin.Ar port
67*83dc2f33SJohn Baldwinas the listen TCP port for the I/O controller service.
68*83dc2f33SJohn BaldwinBy default an unused ephemeral port will be chosen.
69*83dc2f33SJohn Baldwin.It Fl n Ar subnqn
70*83dc2f33SJohn BaldwinThe Subsystem NVMe Qualified Name for the I/O controller.
71*83dc2f33SJohn BaldwinIf an explicit NQN is not given, a default value is generated from the
72*83dc2f33SJohn Baldwincurrent host's UUID obtained from the
73*83dc2f33SJohn Baldwin.Vt kern.hostuuid
74*83dc2f33SJohn Baldwinsysctl.
75*83dc2f33SJohn Baldwin.It Fl t Ar transport
76*83dc2f33SJohn BaldwinThe transport type to use.
77*83dc2f33SJohn BaldwinThe default transport is
78*83dc2f33SJohn Baldwin.Dq tcp .
79*83dc2f33SJohn Baldwin.It Ar device
80*83dc2f33SJohn BaldwinWhen implementing a user mode I/O controller,
81*83dc2f33SJohn Baldwinone or more
82*83dc2f33SJohn Baldwin.Ar device
83*83dc2f33SJohn Baldwinarguments must be specified.
84*83dc2f33SJohn BaldwinEach
85*83dc2f33SJohn Baldwin.Ar device
86*83dc2f33SJohn Baldwindescribes the backing store for a namespace exported to remote hosts.
87*83dc2f33SJohn BaldwinDevices can be specified using one of the following syntaxes:
88*83dc2f33SJohn Baldwin.Bl -tag -width "ramdisk:size"
89*83dc2f33SJohn Baldwin.It Pa pathname
90*83dc2f33SJohn BaldwinFile or disk device
91*83dc2f33SJohn Baldwin.It ramdisk : Ns Ar size
92*83dc2f33SJohn BaldwinAllocate a memory disk with the given
93*83dc2f33SJohn Baldwin.Ar size .
94*83dc2f33SJohn Baldwin.Ar size
95*83dc2f33SJohn Baldwinmay use any of the suffixes supported by
96*83dc2f33SJohn Baldwin.Xr expand_number 3 .
97*83dc2f33SJohn Baldwin.El
98*83dc2f33SJohn Baldwin.El
99*83dc2f33SJohn Baldwin.Sh FILES
100*83dc2f33SJohn Baldwin.Bl -tag -width "/var/run/nvmfd.pid" -compact
101*83dc2f33SJohn Baldwin.It Pa /var/run/nvmfd.pid
102*83dc2f33SJohn BaldwinThe default location of the
103*83dc2f33SJohn Baldwin.Nm
104*83dc2f33SJohn BaldwinPID file.
105*83dc2f33SJohn Baldwin.El
106*83dc2f33SJohn Baldwin.Sh EXIT STATUS
107*83dc2f33SJohn Baldwin.Ex -std
108*83dc2f33SJohn Baldwin.Sh SEE ALSO
109*83dc2f33SJohn Baldwin.Xr ctl 4 ,
110*83dc2f33SJohn Baldwin.Xr nvmft 4 ,
111*83dc2f33SJohn Baldwin.Xr ctladm 8 ,
112*83dc2f33SJohn Baldwin.Xr ctld 8
113*83dc2f33SJohn Baldwin.Sh HISTORY
114*83dc2f33SJohn BaldwinThe
115*83dc2f33SJohn Baldwin.Nm
116*83dc2f33SJohn Baldwinmodule first appeared in
117*83dc2f33SJohn Baldwin.Fx 15.0 .
118*83dc2f33SJohn Baldwin.Sh AUTHORS
119*83dc2f33SJohn BaldwinThe
120*83dc2f33SJohn Baldwin.Nm
121*83dc2f33SJohn Baldwinsubsystem was developed by
122*83dc2f33SJohn Baldwin.An John Baldwin Aq Mt jhb@FreeBSD.org
123*83dc2f33SJohn Baldwinunder sponsorship from Chelsio Communications, Inc.
124*83dc2f33SJohn Baldwin.Sh BUGS
125*83dc2f33SJohn BaldwinThe discovery controller and kernel mode functionality of
126*83dc2f33SJohn Baldwin.Nm
127*83dc2f33SJohn Baldwinshould be merged into
128*83dc2f33SJohn Baldwin.Xr ctld 8 .
129*83dc2f33SJohn Baldwin.Pp
130*83dc2f33SJohn BaldwinAdditional parameters such as
131*83dc2f33SJohn Baldwinqueue sizes should be configurable.
132