Lines Matching refs:tpg

41 	struct se_portal_group *tpg,  in __core_tpg_get_initiator_node_acl()  argument
46 list_for_each_entry(acl, &tpg->acl_node_list, acl_list) { in __core_tpg_get_initiator_node_acl()
59 struct se_portal_group *tpg, in core_tpg_get_initiator_node_acl() argument
72 mutex_lock(&tpg->acl_node_mutex); in core_tpg_get_initiator_node_acl()
73 acl = __core_tpg_get_initiator_node_acl(tpg, initiatorname); in core_tpg_get_initiator_node_acl()
78 mutex_unlock(&tpg->acl_node_mutex); in core_tpg_get_initiator_node_acl()
106 struct se_portal_group *tpg, in core_tpg_add_node_to_devs() argument
113 mutex_lock(&tpg->tpg_lun_mutex); in core_tpg_add_node_to_devs()
114 hlist_for_each_entry_rcu(lun, &tpg->tpg_lun_hlist, link) { in core_tpg_add_node_to_devs()
119 lockdep_is_held(&tpg->tpg_lun_mutex)); in core_tpg_add_node_to_devs()
124 if (!tpg->se_tpg_tfo->tpg_check_demo_mode_write_protect(tpg)) { in core_tpg_add_node_to_devs()
139 tpg->se_tpg_tfo->fabric_name, in core_tpg_add_node_to_devs()
140 tpg->se_tpg_tfo->tpg_get_tag(tpg), lun->unpacked_lun, in core_tpg_add_node_to_devs()
144 lun_access_ro, acl, tpg); in core_tpg_add_node_to_devs()
150 core_scsi3_check_aptpl_registration(dev, tpg, lun, acl, in core_tpg_add_node_to_devs()
153 mutex_unlock(&tpg->tpg_lun_mutex); in core_tpg_add_node_to_devs()
157 target_set_nacl_queue_depth(struct se_portal_group *tpg, in target_set_nacl_queue_depth() argument
164 "defaulting to 1.\n", tpg->se_tpg_tfo->fabric_name, in target_set_nacl_queue_depth()
170 static struct se_node_acl *target_alloc_node_acl(struct se_portal_group *tpg, in target_alloc_node_acl() argument
176 acl = kzalloc(max(sizeof(*acl), tpg->se_tpg_tfo->node_acl_size), in target_alloc_node_acl()
190 if (tpg->se_tpg_tfo->tpg_get_default_depth) in target_alloc_node_acl()
191 queue_depth = tpg->se_tpg_tfo->tpg_get_default_depth(tpg); in target_alloc_node_acl()
194 target_set_nacl_queue_depth(tpg, acl, queue_depth); in target_alloc_node_acl()
197 acl->se_tpg = tpg; in target_alloc_node_acl()
200 tpg->se_tpg_tfo->set_default_node_attributes(acl); in target_alloc_node_acl()
207 struct se_portal_group *tpg = acl->se_tpg; in target_add_node_acl() local
209 mutex_lock(&tpg->acl_node_mutex); in target_add_node_acl()
210 list_add_tail(&acl->acl_list, &tpg->acl_node_list); in target_add_node_acl()
211 mutex_unlock(&tpg->acl_node_mutex); in target_add_node_acl()
215 tpg->se_tpg_tfo->fabric_name, in target_add_node_acl()
216 tpg->se_tpg_tfo->tpg_get_tag(tpg), in target_add_node_acl()
219 tpg->se_tpg_tfo->fabric_name, in target_add_node_acl()
223 bool target_tpg_has_node_acl(struct se_portal_group *tpg, in target_tpg_has_node_acl() argument
229 mutex_lock(&tpg->acl_node_mutex); in target_tpg_has_node_acl()
230 list_for_each_entry(acl, &tpg->acl_node_list, acl_list) { in target_tpg_has_node_acl()
236 mutex_unlock(&tpg->acl_node_mutex); in target_tpg_has_node_acl()
243 struct se_portal_group *tpg, in core_tpg_check_initiator_node_acl() argument
248 acl = core_tpg_get_initiator_node_acl(tpg, initiatorname); in core_tpg_check_initiator_node_acl()
252 if (!tpg->se_tpg_tfo->tpg_check_demo_mode(tpg)) in core_tpg_check_initiator_node_acl()
255 acl = target_alloc_node_acl(tpg, initiatorname); in core_tpg_check_initiator_node_acl()
274 if ((tpg->se_tpg_tfo->tpg_check_demo_mode_login_only == NULL) || in core_tpg_check_initiator_node_acl()
275 (tpg->se_tpg_tfo->tpg_check_demo_mode_login_only(tpg) != 1)) in core_tpg_check_initiator_node_acl()
276 core_tpg_add_node_to_devs(acl, tpg, NULL); in core_tpg_check_initiator_node_acl()
290 struct se_portal_group *tpg, in core_tpg_add_initiator_node_acl() argument
295 mutex_lock(&tpg->acl_node_mutex); in core_tpg_add_initiator_node_acl()
296 acl = __core_tpg_get_initiator_node_acl(tpg, initiatorname); in core_tpg_add_initiator_node_acl()
301 " for %s\n", tpg->se_tpg_tfo->fabric_name, in core_tpg_add_initiator_node_acl()
302 tpg->se_tpg_tfo->tpg_get_tag(tpg), initiatorname); in core_tpg_add_initiator_node_acl()
303 mutex_unlock(&tpg->acl_node_mutex); in core_tpg_add_initiator_node_acl()
309 " request.\n", tpg->se_tpg_tfo->fabric_name, in core_tpg_add_initiator_node_acl()
310 initiatorname, tpg->se_tpg_tfo->tpg_get_tag(tpg)); in core_tpg_add_initiator_node_acl()
311 mutex_unlock(&tpg->acl_node_mutex); in core_tpg_add_initiator_node_acl()
314 mutex_unlock(&tpg->acl_node_mutex); in core_tpg_add_initiator_node_acl()
316 acl = target_alloc_node_acl(tpg, initiatorname); in core_tpg_add_initiator_node_acl()
347 struct se_portal_group *tpg = acl->se_tpg; in core_tpg_del_initiator_node_acl() local
349 mutex_lock(&tpg->acl_node_mutex); in core_tpg_del_initiator_node_acl()
353 mutex_unlock(&tpg->acl_node_mutex); in core_tpg_del_initiator_node_acl()
365 core_free_device_list_for_node(acl, tpg); in core_tpg_del_initiator_node_acl()
368 " Initiator Node: %s\n", tpg->se_tpg_tfo->fabric_name, in core_tpg_del_initiator_node_acl()
369 tpg->se_tpg_tfo->tpg_get_tag(tpg), acl->queue_depth, in core_tpg_del_initiator_node_acl()
370 tpg->se_tpg_tfo->fabric_name, acl->initiatorname); in core_tpg_del_initiator_node_acl()
383 struct se_portal_group *tpg = acl->se_tpg; in core_tpg_set_initiator_node_queue_depth() local
397 target_set_nacl_queue_depth(tpg, acl, queue_depth); in core_tpg_set_initiator_node_queue_depth()
406 acl->initiatorname, tpg->se_tpg_tfo->fabric_name, in core_tpg_set_initiator_node_queue_depth()
407 tpg->se_tpg_tfo->tpg_get_tag(tpg)); in core_tpg_set_initiator_node_queue_depth()
420 struct se_portal_group *tpg, in core_tpg_set_initiator_node_tag() argument
608 struct se_portal_group *tpg, in core_tpg_alloc_lun() argument
628 lun->lun_tpg = tpg; in core_tpg_alloc_lun()
634 struct se_portal_group *tpg, in core_tpg_add_lun() argument
650 mutex_lock(&tpg->tpg_lun_mutex); in core_tpg_add_lun()
664 hlist_add_head_rcu(&lun->link, &tpg->tpg_lun_hlist); in core_tpg_add_lun()
665 mutex_unlock(&tpg->tpg_lun_mutex); in core_tpg_add_lun()
674 struct se_portal_group *tpg, in core_tpg_remove_lun() argument
685 core_clear_lun_from_tpg(lun, tpg); in core_tpg_remove_lun()
694 mutex_lock(&tpg->tpg_lun_mutex); in core_tpg_remove_lun()
708 mutex_unlock(&tpg->tpg_lun_mutex); in core_tpg_remove_lun()