diff options
author | David Disseldorp <ddiss@suse.de> | 2018-11-23 18:36:13 +0100 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2018-11-28 18:50:59 -0500 |
commit | 59a206b4499edf4c54fd53983f0e366eef052b05 (patch) | |
tree | 9d061ba893687adc27341123794ae89fb74fd960 /include/target | |
parent | 30c7ca9350048486ab32fdb9f5f6ed0603bba39a (diff) | |
download | lwn-59a206b4499edf4c54fd53983f0e366eef052b05.tar.gz lwn-59a206b4499edf4c54fd53983f0e366eef052b05.zip |
scsi: target: replace fabric_ops.name with fabric_alias
iscsi_target_mod is the only LIO fabric where fabric_ops.name differs from
the fabric_ops.fabric_name string. fabric_ops.name is used when matching
target/$fabric ConfigFS create paths, so rename it .fabric_alias and
fallback to target/$fabric vs .fabric_name comparison if .fabric_alias
isn't initialised. iscsi_target_mod is the only fabric module to set
.fabric_alias . All other fabric modules rely on .fabric_name matching and
can drop the duplicate string.
Signed-off-by: David Disseldorp <ddiss@suse.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'include/target')
-rw-r--r-- | include/target/target_core_fabric.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/include/target/target_core_fabric.h b/include/target/target_core_fabric.h index a0b41110d266..0a1595f3c5a1 100644 --- a/include/target/target_core_fabric.h +++ b/include/target/target_core_fabric.h @@ -8,10 +8,16 @@ struct target_core_fabric_ops { struct module *module; - const char *name; /* - * fabric_name is used for the ALUA state path and is stored on disk - * with PR state. + * XXX: Special case for iscsi/iSCSI... + * If non-null, fabric_alias is used for matching target/$fabric + * ConfigFS paths. If null, fabric_name is used for this (see below). + */ + const char *fabric_alias; + /* + * fabric_name is used for matching target/$fabric ConfigFS paths + * without a fabric_alias (see above). It's also used for the ALUA state + * path and is stored on disk with PR state. */ const char *fabric_name; size_t node_acl_size; |