]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Modify target port groups logic in CTL.
authorAlexander Motin <mav@FreeBSD.org>
Wed, 11 Nov 2015 13:18:38 +0000 (13:18 +0000)
committerAlexander Motin <mav@FreeBSD.org>
Wed, 11 Nov 2015 13:18:38 +0000 (13:18 +0000)
commit6bd364b5239d0e5d97f37d4ae2b9855c86ff83fa
tree4494fa08da892ab78c188245e2c14023a9938b89
parentcd3903c620b3999949e3ee4df6eb9b5b37ef6499
Modify target port groups logic in CTL.

 - Introduce "ha_shared" port option, which being set to "on" moves the
port into separate port group, shared between HA nodes.  This allows to
better handle cases when iSCSI portals are bound to CARP address that can
dynamically move between nodes.  Some initiators (at least VMware) don't
detect that after iSCSI reconnect they've attached to different SCSI port
from different port group, that totally breakes ALUA status parsing.
In theory, I believe, it should be enough to have different iSCSI portal
group tags on different nodes to make initiators detect this condition,
but it seems like VMware ignores those values, and even full LUN retaste
forced by UA does not help.
 - Make CTL report up to three port groups: 1 -- non-HA mode or ports
with "ha_shared" option set, 2 -- HA node 1, 3 -- HA node 2.
 - Report Transitioning state for all port groups when HA interlink is
connected, but neither of nodes is primary for the LUN.

MFC after: 2 weeks
sys/cam/ctl/ctl.c
sys/cam/ctl/ctl_frontend.c
sys/cam/ctl/ctl_frontend.h
sys/cam/ctl/ctl_private.h