mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-15 12:54:27 +00:00
127 lines
2.8 KiB
Groff
127 lines
2.8 KiB
Groff
|
.\"
|
||
|
.\" SPDX-License-Identifier: BSD-2-Clause
|
||
|
.\"
|
||
|
.\" Copyright (c) 2024 Chelsio Communications, Inc.
|
||
|
.\"
|
||
|
.Dd May 2, 2024
|
||
|
.Dt NVMFD 8
|
||
|
.Os
|
||
|
.Sh NAME
|
||
|
.Nm nvmfd
|
||
|
.Nd "NVMeoF controller daemon"
|
||
|
.Sh SYNOPSIS
|
||
|
.Nm
|
||
|
.Fl K
|
||
|
.Op Fl dFGg
|
||
|
.Op Fl P Ar port
|
||
|
.Op Fl p Ar port
|
||
|
.Op Fl t Ar transport
|
||
|
.Op Fl n Ar subnqn
|
||
|
.Nm
|
||
|
.Op Fl dFGg
|
||
|
.Op Fl P Ar port
|
||
|
.Op Fl p Ar port
|
||
|
.Op Fl t Ar transport
|
||
|
.Op Fl n Ar subnqn
|
||
|
.Ar device
|
||
|
.Op Ar device ...
|
||
|
.Sh DESCRIPTION
|
||
|
.Nm
|
||
|
accepts incoming NVMeoF connections for both I/O and discovery controllers.
|
||
|
.Nm
|
||
|
can either implement a single dynamic I/O controller in user mode or hand
|
||
|
off incoming I/O controller connections to
|
||
|
.Xr nvmft 4 .
|
||
|
A dynamic discovery controller service is always provided in user mode.
|
||
|
.Pp
|
||
|
The following options are available:
|
||
|
.Bl -tag -width "-t transport"
|
||
|
.It Fl F
|
||
|
Permit remote hosts to disable SQ flow control.
|
||
|
.It Fl G
|
||
|
Permit remote hosts to enable PDU data digests for the TCP transport.
|
||
|
.It Fl g
|
||
|
Permit remote hosts to enable PDU header digests for the TCP transport.
|
||
|
.It Fl K
|
||
|
Enable kernel mode which hands off incoming I/O controller connections to
|
||
|
.Xr nvmft 4 .
|
||
|
.It Fl P Ar port
|
||
|
Use
|
||
|
.Ar port
|
||
|
as the listen TCP port for the discovery controller service.
|
||
|
The default value is 8009.
|
||
|
.It Fl d
|
||
|
Enable debug mode.
|
||
|
The daemon sends any errors to standard output and does not place
|
||
|
itself in the background.
|
||
|
.It Fl p Ar port
|
||
|
Use
|
||
|
.Ar port
|
||
|
as the listen TCP port for the I/O controller service.
|
||
|
By default an unused ephemeral port will be chosen.
|
||
|
.It Fl n Ar subnqn
|
||
|
The Subsystem NVMe Qualified Name for the I/O controller.
|
||
|
If an explicit NQN is not given, a default value is generated from the
|
||
|
current host's UUID obtained from the
|
||
|
.Vt kern.hostuuid
|
||
|
sysctl.
|
||
|
.It Fl t Ar transport
|
||
|
The transport type to use.
|
||
|
The default transport is
|
||
|
.Dq tcp .
|
||
|
.It Ar device
|
||
|
When implementing a user mode I/O controller,
|
||
|
one or more
|
||
|
.Ar device
|
||
|
arguments must be specified.
|
||
|
Each
|
||
|
.Ar device
|
||
|
describes the backing store for a namespace exported to remote hosts.
|
||
|
Devices can be specified using one of the following syntaxes:
|
||
|
.Bl -tag -width "ramdisk:size"
|
||
|
.It Pa pathname
|
||
|
File or disk device
|
||
|
.It ramdisk : Ns Ar size
|
||
|
Allocate a memory disk with the given
|
||
|
.Ar size .
|
||
|
.Ar size
|
||
|
may use any of the suffixes supported by
|
||
|
.Xr expand_number 3 .
|
||
|
.El
|
||
|
.El
|
||
|
.Sh FILES
|
||
|
.Bl -tag -width "/var/run/nvmfd.pid" -compact
|
||
|
.It Pa /var/run/nvmfd.pid
|
||
|
The default location of the
|
||
|
.Nm
|
||
|
PID file.
|
||
|
.El
|
||
|
.Sh EXIT STATUS
|
||
|
.Ex -std
|
||
|
.Sh SEE ALSO
|
||
|
.Xr ctl 4 ,
|
||
|
.Xr nvmft 4 ,
|
||
|
.Xr ctladm 8 ,
|
||
|
.Xr ctld 8
|
||
|
.Sh HISTORY
|
||
|
The
|
||
|
.Nm
|
||
|
module first appeared in
|
||
|
.Fx 15.0 .
|
||
|
.Sh AUTHORS
|
||
|
The
|
||
|
.Nm
|
||
|
subsystem was developed by
|
||
|
.An John Baldwin Aq Mt jhb@FreeBSD.org
|
||
|
under sponsorship from Chelsio Communications, Inc.
|
||
|
.Sh BUGS
|
||
|
The discovery controller and kernel mode functionality of
|
||
|
.Nm
|
||
|
should be merged into
|
||
|
.Xr ctld 8 .
|
||
|
.Pp
|
||
|
Additional paramters such as
|
||
|
.Va MAXR2T ,
|
||
|
.Va MAXH2CDATA ,
|
||
|
and queue sizes should be configurable.
|