target: Fix se_tpg_tfo->tf_subsys regression + remove tf_subsystem
authorChristoph Hellwig <hch@lst.de>
Sun, 3 May 2015 06:50:52 +0000 (08:50 +0200)
committerNicholas Bellinger <nab@linux-iscsi.org>
Sun, 31 May 2015 01:04:20 +0000 (18:04 -0700)
commitd588cf8f618d7b316743a0bc99fede20f7a01bb7
treeee81f6056ec9868f83338b67256a9e21044f6f84
parentee7619f2eb21304dcc846b8dc8f8c3d6cbe11792
target: Fix se_tpg_tfo->tf_subsys regression + remove tf_subsystem

There is just one configfs subsystem in the target code, so we might as
well add two helpers to reference / unreference it from the core code
instead of passing pointers to it around.

This fixes a regression introduced for v4.1-rc1 with commit 9ac8928e6,
where configfs_depend_item() callers using se_tpg_tfo->tf_subsys would
fail, because the assignment from the original target_core_subsystem[]
is no longer happening at target_register_template() time.

(Fix target_core_exit_configfs pointer dereference - Sagi)

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reported-by: Himanshu Madhani <himanshu.madhani@qlogic.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/scsi/qla2xxx/tcm_qla2xxx.c
drivers/target/target_core_configfs.c
drivers/target/target_core_internal.h
drivers/target/target_core_pr.c
drivers/target/target_core_xcopy.c
drivers/vhost/scsi.c
include/target/target_core_configfs.h
include/target/target_core_fabric.h