summaryrefslogtreecommitdiff
path: root/drivers/target/target_core_internal.h
diff options
context:
space:
mode:
authorNicholas Bellinger <nab@linux-iscsi.org>2015-05-22 02:05:19 +0000
committerNicholas Bellinger <nab@linux-iscsi.org>2015-06-01 00:25:15 -0700
commitdf9766ca9da5d9c1f2bb4eea9c9f16a2e7e8e1a5 (patch)
tree975b36ac839245995493ce50c11bda0c0c4651ea /drivers/target/target_core_internal.h
parent84786546b6ff8d50c3e4c1ea877a872cf55d485a (diff)
target: Only reset specific dynamic entries during lun_group creation
This patch changes core_tpg_add_node_to_devs() to avoid unnecessarly resetting every se_dev_entry in se_node_acl->tpg_lun_hlist when the operation is driven by an explicit configfs se_lun->lun_group creation via core_dev_add_lun() to only update a single se_lun. Otherwise for the second core_tpg_check_initiator_node_acl() case, go ahead and continue to scan the full set of currently active se_lun in se_portal_group->tpg_lun_hlist. Reviewed-by: Hannes Reinecke <hare@suse.de> Cc: Christoph Hellwig <hch@lst.de> Cc: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target/target_core_internal.h')
-rw-r--r--drivers/target/target_core_internal.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/target/target_core_internal.h b/drivers/target/target_core_internal.h
index 2c160ceaf03f..ce80ca76f68b 100644
--- a/drivers/target/target_core_internal.h
+++ b/drivers/target/target_core_internal.h
@@ -64,7 +64,8 @@ extern struct se_device *g_lun0_dev;
struct se_node_acl *__core_tpg_get_initiator_node_acl(struct se_portal_group *tpg,
const char *);
-void core_tpg_add_node_to_devs(struct se_node_acl *, struct se_portal_group *);
+void core_tpg_add_node_to_devs(struct se_node_acl *, struct se_portal_group *,
+ struct se_lun *);
void core_tpg_wait_for_nacl_pr_ref(struct se_node_acl *);
struct se_lun *core_tpg_alloc_lun(struct se_portal_group *, u32);
int core_tpg_add_lun(struct se_portal_group *, struct se_lun *,