ibmvscsis: Use tpgt passed in by user
ibmvscsis always returned 0 for the tpg/tag, since it did not parse the value passed in by the user. When functions like ALUA members exports the value, it will be incorrect because targetcli/rtslib starts the tpg numbering at 1. Signed-off-by: Bryant G. Ly <bryantly@linux.vnet.ibm.com> Signed-off-by: Mike Christie <mchristi@redhat.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
8fa4011e0d
commit
e9447a46e9
|
@ -3914,8 +3914,16 @@ static struct se_portal_group *ibmvscsis_make_tpg(struct se_wwn *wwn,
|
||||||
{
|
{
|
||||||
struct ibmvscsis_tport *tport =
|
struct ibmvscsis_tport *tport =
|
||||||
container_of(wwn, struct ibmvscsis_tport, tport_wwn);
|
container_of(wwn, struct ibmvscsis_tport, tport_wwn);
|
||||||
|
u16 tpgt;
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
|
if (strstr(name, "tpgt_") != name)
|
||||||
|
return ERR_PTR(-EINVAL);
|
||||||
|
rc = kstrtou16(name + 5, 0, &tpgt);
|
||||||
|
if (rc)
|
||||||
|
return ERR_PTR(rc);
|
||||||
|
tport->tport_tpgt = tpgt;
|
||||||
|
|
||||||
tport->releasing = false;
|
tport->releasing = false;
|
||||||
|
|
||||||
rc = core_tpg_register(&tport->tport_wwn, &tport->se_tpg,
|
rc = core_tpg_register(&tport->tport_wwn, &tport->se_tpg,
|
||||||
|
|
Loading…
Reference in New Issue