History

target: Drop incorrect se_lun_acl release for dynamic -> explict ACL conversion

This patch removes some potentially problematic legacy code within core_clear_initiator_node_from_tpg() that was originally intended to release left over se_lun_acl setup during dynamic NodeACL+MappedLUN generate when running with TPG demo-mode operation. Since we now only ever expect to allocate and release se_lun_acl from within target_core_fabric_configfs.c:target_fabric_make_mappedlun() and target_fabric_drop_mappedlun() context respectively, this code for demo-mode release is incorrect and needs to be removed.

Nicholas Bellinger committed 14 years ago

Commit cfebf8f1 parent 06383f11 file · +0 −22Browse files

Unified · Split

drivers/target/target_core_tpg.c+0−22
@@ -60,7 +60,6 @@ static void core_clear_initiator_node_from_tpg( · 59 unmodified lines
6060 int i;
6161 struct se_dev_entry *deve;
6262 struct se_lun *lun;
63− struct se_lun_acl *acl, *acl_tmp;
6463
6564 spin_lock_irq(&nacl->device_list_lock);
6665 for (i = 0; i < TRANSPORT_MAX_LUNS_PER_TPG; i++) {
@@ -81,28 +80,7 @@ static void core_clear_initiator_node_from_tpg( · 14 unmodified lines
8180 core_update_device_list_for_node(lun, NULL, deve->mapped_lun,
8281 TRANSPORT_LUNFLAGS_NO_ACCESS, nacl, tpg, 0);
8382
84− spin_lock(&lun->lun_acl_lock);
85− list_for_each_entry_safe(acl, acl_tmp,
86− &lun->lun_acl_list, lacl_list) {
87− if (!strcmp(acl->initiatorname, nacl->initiatorname) &&
88− (acl->mapped_lun == deve->mapped_lun))
89− break;
90− }
91−
92− if (!acl) {
93− pr_err("Unable to locate struct se_lun_acl for %s,"
94− " mapped_lun: %u\n", nacl->initiatorname,
95− deve->mapped_lun);
96− spin_unlock(&lun->lun_acl_lock);
97− spin_lock_irq(&nacl->device_list_lock);
98− continue;
99− }
100−
101− list_del(&acl->lacl_list);
102− spin_unlock(&lun->lun_acl_lock);
103−
10483 spin_lock_irq(&nacl->device_list_lock);
105− kfree(acl);
10684 }
10785 spin_unlock_irq(&nacl->device_list_lock);
10886 }