Merge tag 'drm/tegra/for-3.16-rc1' of git://anongit.freedesktop.org/tegra/linux into...
[firefly-linux-kernel-4.4.55.git] / drivers / target / tcm_fc / tfc_sess.c
index 04751422178c2d3a8016ecf8ca7241ed97b495c7..21ce50880c79d1480166b08b52b4bb81cc85d4d6 100644 (file)
@@ -51,7 +51,7 @@ static void ft_sess_delete_all(struct ft_tport *);
  * Lookup or allocate target local port.
  * Caller holds ft_lport_lock.
  */
-static struct ft_tport *ft_tport_create(struct fc_lport *lport)
+static struct ft_tport *ft_tport_get(struct fc_lport *lport)
 {
        struct ft_tpg *tpg;
        struct ft_tport *tport;
@@ -68,6 +68,7 @@ static struct ft_tport *ft_tport_create(struct fc_lport *lport)
 
        if (tport) {
                tport->tpg = tpg;
+               tpg->tport = tport;
                return tport;
        }
 
@@ -114,7 +115,7 @@ static void ft_tport_delete(struct ft_tport *tport)
 void ft_lport_add(struct fc_lport *lport, void *arg)
 {
        mutex_lock(&ft_lport_lock);
-       ft_tport_create(lport);
+       ft_tport_get(lport);
        mutex_unlock(&ft_lport_lock);
 }
 
@@ -351,7 +352,7 @@ static int ft_prli_locked(struct fc_rport_priv *rdata, u32 spp_len,
        struct ft_node_acl *acl;
        u32 fcp_parm;
 
-       tport = ft_tport_create(rdata->local_port);
+       tport = ft_tport_get(rdata->local_port);
        if (!tport)
                goto not_target;        /* not a target for this local port */