xref: /freebsd/share/man/man4/ctl.4 (revision b78ee15e9f04ae15c3e1200df974473167524d17)
1.\" Copyright (c) 2013 Edward Tomasz Napierala
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD$
26.Dd June 20, 2015
27.Dt CTL 4
28.Os
29.Sh NAME
30.Nm ctl
31.Nd CAM Target Layer
32.Sh SYNOPSIS
33To compile this driver into the kernel,
34place the following line in your
35kernel configuration file:
36.Bd -ragged -offset indent
37.Cd "device iscsi"
38.Cd "device ctl"
39.Ed
40.Pp
41Alternatively, to load the driver as a
42module at boot time, place the following line in
43.Xr loader.conf 5 :
44.Bd -literal -offset indent
45ctl_load="YES"
46.Ed
47.Sh DESCRIPTION
48The
49.Nm
50subsystem provides SCSI disk and processor emulation.
51It supports features such as:
52.Pp
53.Bl -bullet -compact
54.It
55Disk and processor device emulation
56.It
57Tagged queueing
58.It
59SCSI task attribute support (ordered, head of queue, simple tags)
60.It
61SCSI implicit command ordering support
62.It
63Full task management support (abort, LUN reset, target reset, etc.)
64.It
65Support for multiple ports
66.It
67Support for multiple simultaneous initiators
68.It
69Support for multiple simultaneous backing stores
70.It
71Support for VMWare VAAI: COMPARE AND WRITE, XCOPY, WRITE SAME,
72and UNMAP commands
73.It
74Support for Microsoft ODX: POPULATE TOKEN/WRITE USING TOKEN,
75WRITE SAME, and UNMAP commands
76.It
77Persistent reservation support
78.It
79Mode sense/select support
80.It
81Error injection support
82.It
83All I/O handled in-kernel, no userland context switch overhead
84.El
85.Pp
86It also serves as a kernel component of the native iSCSI target.
87.Sh SYSCTL VARIABLES
88The following variables are available as both
89.Xr sysctl 8
90variables and
91.Xr loader 8
92tunables:
93.Bl -tag -width indent
94.It Va kern.cam.ctl.iscsi.debug
95Verbosity level for log messages from the kernel part of iSCSI target.
96Set to 0 to disable logging or 1 to warn about potential problems.
97Larger values enable debugging output.
98Defaults to 1.
99.It Va kern.cam.ctl.iscsi.maxcmdsn_delta
100The number of outstanding commands to advertise to the iSCSI initiator.
101Technically, it is the difference between ExpCmdSN and MaxCmdSN fields
102in the iSCSI PDU.
103.It Va kern.cam.ctl.iscsi.ping_timeout
104The number of seconds to wait for the iSCSI initiator to respond to a NOP-In
105PDU.
106In the event that there is no response within that time the session gets
107forcibly terminated.
108.Sh SEE ALSO
109.Xr ctladm 8 ,
110.Xr ctld 8 ,
111.Xr ctlstat 8
112.Sh HISTORY
113The
114.Nm
115subsystem first appeared in
116.Fx 9.1 .
117.Sh AUTHORS
118The
119.Nm
120subsystem was written by
121.An Kenneth Merry Aq Mt ken@FreeBSD.org .
122