#
0e1e5c22 |
| 11-Sep-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r287527 through r287679.
|
#
fb606eba |
| 10-Sep-2015 |
Alexander Motin <mav@FreeBSD.org> |
Remove unused target and initiator IDs.
|
Revision tags: release/10.2.0 |
|
#
416ba5c7 |
| 22-Jun-2015 |
Navdeep Parhar <np@FreeBSD.org> |
Catch up with HEAD (r280229-r284686).
|
#
76aeda8a |
| 20-Jun-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r284188 through r284643.
|
#
7834ea88 |
| 20-Jun-2015 |
Alexander Motin <mav@FreeBSD.org> |
Bring per-port LUN enable/disable code up to date: - remove last remnants of never implemented multiple targets support; - implement missing support for LUN mapping in this area.
Due to existing l
Bring per-port LUN enable/disable code up to date: - remove last remnants of never implemented multiple targets support; - implement missing support for LUN mapping in this area.
Due to existing locking constraints LUN mapping code is practically unlocked at this point. Hopefully it is not racy enough to live until somebody get idea how to call sleeping fronend methods under lock also taken by the same frontend in non-sleepable context. :(
show more ...
|
#
754e4935 |
| 20-Jun-2015 |
Alexander Motin <mav@FreeBSD.org> |
Remove some dead and duplicate LUN enabling code.
|
#
98e0ffae |
| 27-May-2015 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge sync of head
|
#
9f3d45b6 |
| 08-Feb-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from HEAD
|
#
73ee00ce |
| 02-Feb-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r278005 through r278109.
|
#
920c6cba |
| 01-Feb-2015 |
Alexander Motin <mav@FreeBSD.org> |
CTL LUN mapping rewrite.
Replace iSCSI-specific LUN mapping mechanism with new one, working for any ports. By default all ports are created without LUN mapping, exposing all CTL LUNs as before. Bu
CTL LUN mapping rewrite.
Replace iSCSI-specific LUN mapping mechanism with new one, working for any ports. By default all ports are created without LUN mapping, exposing all CTL LUNs as before. But, if needed, LUN mapping can be manually set on per-port basis via ctladm. For its iSCSI ports ctld does it via ioctl(2). The next step will be to teach ctld to work with FibreChannel ports also.
Respecting additional flexibility of the new mechanism, ctl.conf now allows alternative syntax for LUN definition. LUNs can now be defined in global context, and then referenced from targets by unique name, as needed. It allows same LUN to be exposed several times via multiple targets.
While there, increase limit for LUNs per target in ctld from 256 to 1024. Some initiators do not support LUNs above 255, but that is not our problem.
Discussed with: trasz MFC after: 2 weeks Relnotes: yes Sponsored by: iXsystems, Inc.
show more ...
|
#
d899be7d |
| 19-Jan-2015 |
Glen Barber <gjb@FreeBSD.org> |
Reintegrate head: r274132-r277384
Sponsored by: The FreeBSD Foundation
|
#
8f0ea33f |
| 13-Jan-2015 |
Glen Barber <gjb@FreeBSD.org> |
Reintegrate head revisions r273096-r277147
Sponsored by: The FreeBSD Foundation
|
#
23b30f56 |
| 21-Nov-2014 |
Alexander Motin <mav@FreeBSD.org> |
Partially reconstruct Active/Standby clusting.
In this mode one head is in Active state, supporting all commands, while another is in Standby state, supporting only minimal LUN discovery subset.
It
Partially reconstruct Active/Standby clusting.
In this mode one head is in Active state, supporting all commands, while another is in Standby state, supporting only minimal LUN discovery subset.
It is still incomplete since Standby state requires reservation support, which is impossible to do right without having interlink between heads. But it allows to run some basic experiments.
show more ...
|
Revision tags: release/10.1.0 |
|
#
246e7a2b |
| 02-Sep-2014 |
Neel Natu <neel@FreeBSD.org> |
IFC @r269962
Submitted by: Anish Gupta (akgupt3@gmail.com)
|
#
ee7b0571 |
| 19-Aug-2014 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge head from 7/28
|
#
1b833d53 |
| 13-Aug-2014 |
Alexander V. Chernikov <melifaro@FreeBSD.org> |
Sync to HEAD@r269943.
|
#
984a2ea9 |
| 16-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Add support for VMWare dialect of EXTENDED COPY command, aka VAAI Clone.
This allows to clone VMs and move them between LUNs inside one storage host without generating extra network traffic to the i
Add support for VMWare dialect of EXTENDED COPY command, aka VAAI Clone.
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.
show more ...
|
Revision tags: release/9.3.0 |
|
#
604e2579 |
| 07-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Teach ctl_add_initiator() to dynamically allocate IIDs from pool.
If port passed negative IID value, the function will try to allocate IID from the pool of unused, based on passed wwpn or name argum
Teach ctl_add_initiator() to dynamically allocate IIDs from pool.
If port passed negative IID value, the function will try to allocate IID from the pool of unused, based on passed wwpn or name arguments. It does all its best to make IID unique and persistent across reconnects.
This makes persistent reservation properly work for iSCSI. Previously, in case of reconnects, reservation could be unexpectedly lost, or even migrate between intiators.
show more ...
|
#
1380b77c |
| 06-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Close race in r268291 between port destruction, delayed by sessions teardown, and new port creation during `service ctld restart`.
Close it by returning iSCSI port internal state, that allows to ide
Close race in r268291 between port destruction, delayed by sessions teardown, and new port creation during `service ctld restart`.
Close it by returning iSCSI port internal state, that allows to identify dying ports, which should not be counted as existing, from really alive.
show more ...
|
#
c26eee2d |
| 06-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Move lun_map() method from command nexus to port.
Previous implementation made impossible to do some things, such as calling it for ports other then one through which command arrived.
|
#
027e5269 |
| 05-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Burry devid port method, which was a gross hack.
Instead make ports provide wanted port and target IDs, and LUNs provide wanted LUN IDs. After that core Device ID VPD code only had to link all of t
Burry devid port method, which was a gross hack.
Instead make ports provide wanted port and target IDs, and LUNs provide wanted LUN IDs. After that core Device ID VPD code only had to link all of them together and add relative port and port group numbers.
LUN ID for iSCSI LUNs no longer created by CTL, but by ctld, and passed to CTL as "scsiname" LUN option. This makes LUNs to report the same set of IDs, independently from the port through which it is accessed, as required by SCSI specifications.
show more ...
|
#
917d38fb |
| 05-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Create separate CTL port for every iSCSI target (and maybe portal group).
Having single port for all iSCSI connections makes problematic implementing some more advanced SCSI functionality in CTL, th
Create separate CTL port for every iSCSI target (and maybe portal group).
Having single port for all iSCSI connections makes problematic implementing some more advanced SCSI functionality in CTL, that require proper ports enumeration and identification.
This change extends CTL iSCSI API, making ctld daemon to control list of iSCSI ports in CTL. When new target is defined in config fine, ctld will create respective port in CTL. When target is removed -- port will be also removed after all active commands through that port properly aborted. This change require ctld to be rebuilt to match the kernel.
As a minor side effect, this allows to have iSCSI targets without LUNs. While that may look odd and not very useful, that is not incorrect.
show more ...
|
#
ab2616c5 |
| 05-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Implement and use ctl_frontend_find().
|
#
92168f4c |
| 04-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Separate concepts of frontend and port.
Before iSCSI implementation CTL had no knowledge about frontend drivers, it had only frontends, which really were ports (alike to LUNs, if comparing to backen
Separate concepts of frontend and port.
Before iSCSI implementation CTL had no knowledge about frontend drivers, it had only frontends, which really were ports (alike to LUNs, if comparing to backends). But iSCSI added there ioctl() method, which does not belong to frontend as a port, but belongs to a frontend driver.
show more ...
|
#
2f5be87a |
| 04-Jul-2014 |
Alexander Motin <mav@FreeBSD.org> |
Remove targ_enable()/targ_disable() frontend methods.
Those methods were never implemented, and I believe that their concept is wrong, since single frontend (SCSI port) can not handle several target
Remove targ_enable()/targ_disable() frontend methods.
Those methods were never implemented, and I believe that their concept is wrong, since single frontend (SCSI port) can not handle several targets.
show more ...
|