xref: /freebsd/share/man/man4/ctl.4 (revision 98e0ffaefb0f241cda3a72395d3be04192ae0d47)
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 May 22, 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.maxcmdsn_delta
95The number of outstanding commands to advertise to the initiator.
96Technically, it's the difference between ExpCmdSN and MaxCmdSN fields
97in the iSCSI PDU.
98.It Va kern.cam.ctl.iscsi.ping_timeout
99The number of seconds to wait for the initiator to respond to a NOP-In
100PDU.
101In the event that there is no response within that time the session gets
102forcibly terminated.
103.Sh SEE ALSO
104.Xr ctladm 8 ,
105.Xr ctld 8 ,
106.Xr ctlstat 8
107.Sh HISTORY
108The
109.Nm
110subsystem first appeared in
111.Fx 9.1 .
112.Sh AUTHORS
113The
114.Nm
115subsystem was written by
116.An Kenneth Merry Aq Mt ken@FreeBSD.org .
117