<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/modules/ctl, branch release/11.0.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F11.0.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F11.0.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2015-09-10T12:40:31Z</updated>
<entry>
<title>Reimplement CTL High Availability.</title>
<updated>2015-09-10T12:40:31Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2015-09-10T12:40:31Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=7ac58230ea37d1b0a2095ff19bea8e928fd79bfc'/>
<id>urn:sha1:7ac58230ea37d1b0a2095ff19bea8e928fd79bfc</id>
<content type='text'>
CTL HA functionality was originally implemented by Copan many years ago,
but large part of the sources was never published.  This change includes
clean room implementation of the missing code and fixes for many bugs.

This code supports dual-node HA with ALUA in four modes:
 - Active/Unavailable without interlink between nodes;
 - Active/Standby with second node handling only basic LUN discovery and
reservation, synchronizing with the first node through the interlink;
 - Active/Active with both nodes processing commands and accessing the
backing storage, synchronizing with the first node through the interlink;
 - Active/Active with second node working as proxy, transfering all
commands to the first node for execution through the interlink.

Unlike original Copan's implementation, depending on specific hardware,
this code uses simple custom TCP-based protocol for interlink.  It has
no authentication, so it should never be enabled on public interfaces.

The code may still need some polishing, but generally it is functional.

Relnotes:	yes
Sponsored by:	iXsystems, Inc.
</content>
</entry>
<entry>
<title>Move "ioctl" CAM frontend into separate file.</title>
<updated>2015-08-15T15:42:21Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2015-08-15T15:42:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=67ceb24bcac8942d702398dc1cea26154f9ddd0c'/>
<id>urn:sha1:67ceb24bcac8942d702398dc1cea26154f9ddd0c</id>
<content type='text'>
It has nothing to share with too huge ctl.c other then device descriptor,
but even that may be counted as design error that may be fixed later.
At some point we may even want to have several ioctl ports.
</content>
</entry>
<entry>
<title>Drop "internal" CTL frontend.</title>
<updated>2015-08-15T13:34:38Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2015-08-15T13:34:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=2f444d157b9fc470c8a4bf69846b2c5fda30eed4'/>
<id>urn:sha1:2f444d157b9fc470c8a4bf69846b2c5fda30eed4</id>
<content type='text'>
Its idea was to be a simple initiator and execute several commands from
kernel level, but FreeBSD never had consumer for that functionality,
while its implementation polluted many unrelated places..
</content>
</entry>
<entry>
<title>Add kobj interface between ICL and the rest of the iSCSI stack.</title>
<updated>2015-01-31T07:49:50Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2015-01-31T07:49:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=321b17ec15bd4e76414b0442d3a027e3434855e6'/>
<id>urn:sha1:321b17ec15bd4e76414b0442d3a027e3434855e6</id>
<content type='text'>
Review note - icl.c was moved to icl_soft.c.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>Add support for VMWare dialect of EXTENDED COPY command, aka VAAI Clone.</title>
<updated>2014-07-16T15:57:17Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2014-07-16T15:57:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=984a2ea91fbc21063e931d117aed354cfe0c02f5'/>
<id>urn:sha1:984a2ea91fbc21063e931d117aed354cfe0c02f5</id>
<content type='text'>
This allows to clone VMs and move them between LUNs inside one storage
host without generating extra network traffic to the initiator and back,
and without being limited by network bandwidth.

LUNs participating in copy operation should have UNIQUE NAA or EUI IDs set.
For LUNs without these IDs VMWare will use traditional copy operations.

Beware: the above LUN IDs explicitly set to values non-unique from the VM
cluster point of view may cause data corruption if wrong LUN is addressed!

MFC after:	2 weeks
Sponsored by:	iXsystems, Inc.
</content>
</entry>
<entry>
<title>Remove ctl_mem_pool.{c,h}.</title>
<updated>2014-03-27T11:10:13Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2014-03-27T11:10:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0f26fd2c6149c3b951f2aff1bfdc652e418533d3'/>
<id>urn:sha1:0f26fd2c6149c3b951f2aff1bfdc652e418533d3</id>
<content type='text'>
Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>- For kernel compiled only with KDTRACE_HOOKS and not any lock debugging</title>
<updated>2013-11-25T07:38:45Z</updated>
<author>
<name>Attilio Rao</name>
<email>attilio@FreeBSD.org</email>
</author>
<published>2013-11-25T07:38:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=54366c0bd7d0ea904fb9ab32460c66d57684a7cb'/>
<id>urn:sha1:54366c0bd7d0ea904fb9ab32460c66d57684a7cb</id>
<content type='text'>
  option, unbreak the lock tracing release semantic by embedding
  calls to LOCKSTAT_PROFILE_RELEASE_LOCK() direclty in the inlined
  version of the releasing functions for mutex, rwlock and sxlock.
  Failing to do so skips the lockstat_probe_func invokation for
  unlocking.
- As part of the LOCKSTAT support is inlined in mutex operation, for
  kernel compiled without lock debugging options, potentially every
  consumer must be compiled including opt_kdtrace.h.
  Fix this by moving KDTRACE_HOOKS into opt_global.h and remove the
  dependency by opt_kdtrace.h for all files, as now only KDTRACE_FRAMES
  is linked there and it is only used as a compile-time stub [0].

[0] immediately shows some new bug as DTRACE-derived support for debug
in sfxge is broken and it was never really tested.  As it was not
including correctly opt_kdtrace.h before it was never enabled so it
was kept broken for a while.  Fix this by using a protection stub,
leaving sfxge driver authors the responsibility for fixing it
appropriately [1].

Sponsored by:	EMC / Isilon storage division
Discussed with:	rstone
[0] Reported by:	rstone
[1] Discussed with:	philip
</content>
</entry>
<entry>
<title>Bring in the new iSCSI target and initiator.</title>
<updated>2013-09-14T15:29:06Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2013-09-14T15:29:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=009ea47eb2d21856af4529aaaca32cd67748daea'/>
<id>urn:sha1:009ea47eb2d21856af4529aaaca32cd67748daea</id>
<content type='text'>
Reviewed by:	ken (parts)
Approved by:	re (delphij)
Sponsored by:	FreeBSD Foundation
</content>
</entry>
<entry>
<title>Remove ctl(4) from GENERIC.  Also remove 'options CTL_DISABLE'</title>
<updated>2013-04-12T16:25:03Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2013-04-12T16:25:03Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=8ed98609141e56dd738ea333279beec9f961dca8'/>
<id>urn:sha1:8ed98609141e56dd738ea333279beec9f961dca8</id>
<content type='text'>
and kern.cam.ctl.disable tunable; those were introduced as a workaround
to make it possible to boot GENERIC on low memory machines.

With ctl(4) being built as a module and automatically loaded by ctladm(8),
this makes CTL work out of the box.

Reviewed by:	ken
Sponsored by:	FreeBSD Foundation
</content>
</entry>
<entry>
<title>- Remove extra $FreeBSD$</title>
<updated>2013-04-02T13:52:09Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2013-04-02T13:52:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b77ea89ea51966c04d851c923bdd660459d2a6ff'/>
<id>urn:sha1:b77ea89ea51966c04d851c923bdd660459d2a6ff</id>
<content type='text'>
- Touch options headers to make module buildable.

Reviewed by:	trasz
</content>
</entry>
</feed>
