summaryrefslogtreecommitdiffstats
path: root/drivers/target/target_core_device.c
diff options
context:
space:
mode:
authorNicholas Bellinger2014-10-04 06:23:15 +0200
committerNicholas Bellinger2014-10-04 07:40:19 +0200
commite24805637d2d270d7975502e9024d473de86afdb (patch)
tree36277763794b04de9628d2d51889e6f0b77be26e /drivers/target/target_core_device.c
parentqla_target: don't delete changed nacls (diff)
downloadkernel-qcow2-linux-e24805637d2d270d7975502e9024d473de86afdb.tar.gz
kernel-qcow2-linux-e24805637d2d270d7975502e9024d473de86afdb.tar.xz
kernel-qcow2-linux-e24805637d2d270d7975502e9024d473de86afdb.zip
target: Fix APTPL metadata handling for dynamic MappedLUNs
This patch fixes a bug in handling of SPC-3 PR Activate Persistence across Target Power Loss (APTPL) logic where re-creation of state for MappedLUNs from dynamically generated NodeACLs did not occur during I_T Nexus establishment. It adds the missing core_scsi3_check_aptpl_registration() call during core_tpg_check_initiator_node_acl() -> core_tpg_add_node_to_devs() in order to replay any pre-loaded APTPL metadata state associated with the newly connected SCSI Initiator Port. Cc: Mike Christie <michaelc@cs.wisc.edu> Cc: <stable@vger.kernel.org> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target/target_core_device.c')
-rw-r--r--drivers/target/target_core_device.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/target/target_core_device.c b/drivers/target/target_core_device.c
index f5057a2f4ed1..d18dd8b532a8 100644
--- a/drivers/target/target_core_device.c
+++ b/drivers/target/target_core_device.c
@@ -1399,7 +1399,8 @@ int core_dev_add_initiator_node_lun_acl(
* Check to see if there are any existing persistent reservation APTPL
* pre-registrations that need to be enabled for this LUN ACL..
*/
- core_scsi3_check_aptpl_registration(lun->lun_se_dev, tpg, lun, lacl);
+ core_scsi3_check_aptpl_registration(lun->lun_se_dev, tpg, lun, nacl,
+ lacl->mapped_lun);
return 0;
}