target: Drop config_item_name usage in fabric TFO->free_wwn()
This patch removes config_item_name() informational usage of TFO->free_wwn() treewide in loopback, tcm_fc, ib_srpt and tcm_vhost module code. Using v4 target_core_fabric_configfs.c logic, a fabric call for config_item_name() in TFO->drop_wwn() context returns NULL as target_fabric_drop_wwn() invoking config_item_put() -> config_group_put() will release fabric_port->port_wwn.wwn_group before the last config_item_put() -> TFO->drop_wwn() is invoked. Reported-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
Родитель
97c34f3b04
Коммит
6297b07cbc
|
@ -1342,17 +1342,16 @@ void tcm_loop_drop_scsi_hba(
|
|||
{
|
||||
struct tcm_loop_hba *tl_hba = container_of(wwn,
|
||||
struct tcm_loop_hba, tl_hba_wwn);
|
||||
int host_no = tl_hba->sh->host_no;
|
||||
|
||||
pr_debug("TCM_Loop_ConfigFS: Deallocating emulated Target"
|
||||
" SAS Address: %s at Linux/SCSI Host ID: %d\n",
|
||||
tl_hba->tl_wwn_address, tl_hba->sh->host_no);
|
||||
/*
|
||||
* Call device_unregister() on the original tl_hba->dev.
|
||||
* tcm_loop_fabric_scsi.c:tcm_loop_release_adapter() will
|
||||
* release *tl_hba;
|
||||
*/
|
||||
device_unregister(&tl_hba->dev);
|
||||
|
||||
pr_debug("TCM_Loop_ConfigFS: Deallocated emulated Target"
|
||||
" SAS Address: %s at Linux/SCSI Host ID: %d\n",
|
||||
config_item_name(&wwn->wwn_group.cg_item), host_no);
|
||||
}
|
||||
|
||||
/* Start items for tcm_loop_cit */
|
||||
|
|
|
@ -436,8 +436,7 @@ static void ft_del_lport(struct se_wwn *wwn)
|
|||
struct ft_lport_acl *lacl = container_of(wwn,
|
||||
struct ft_lport_acl, fc_lport_wwn);
|
||||
|
||||
pr_debug("del lport %s\n",
|
||||
config_item_name(&wwn->wwn_group.cg_item));
|
||||
pr_debug("del lport %s\n", lacl->name);
|
||||
mutex_lock(&ft_lport_lock);
|
||||
list_del(&lacl->list);
|
||||
mutex_unlock(&ft_lport_lock);
|
||||
|
|
Загрузка…
Ссылка в новой задаче