net/smc: Use active link of the connection
authorGuvenc Gulce <guvenc@linux.ibm.com>
Tue, 1 Dec 2020 19:20:37 +0000 (20:20 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 2 Dec 2020 01:56:12 +0000 (17:56 -0800)
Use active link of the connection directly and not
via linkgroup array structure when obtaining link
data of the connection.

Signed-off-by: Guvenc Gulce <guvenc@linux.ibm.com>
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/smc/smc_diag.c

index f15fca5..c222523 100644 (file)
@@ -160,17 +160,17 @@ static int __smc_diag_dump(struct sock *sk, struct sk_buff *skb,
            !list_empty(&smc->conn.lgr->list)) {
                struct smc_diag_lgrinfo linfo = {
                        .role = smc->conn.lgr->role,
-                       .lnk[0].ibport = smc->conn.lgr->lnk[0].ibport,
-                       .lnk[0].link_id = smc->conn.lgr->lnk[0].link_id,
+                       .lnk[0].ibport = smc->conn.lnk->ibport,
+                       .lnk[0].link_id = smc->conn.lnk->link_id,
                };
 
                memcpy(linfo.lnk[0].ibname,
                       smc->conn.lgr->lnk[0].smcibdev->ibdev->name,
-                      sizeof(smc->conn.lgr->lnk[0].smcibdev->ibdev->name));
+                      sizeof(smc->conn.lnk->smcibdev->ibdev->name));
                smc_gid_be16_convert(linfo.lnk[0].gid,
-                                    smc->conn.lgr->lnk[0].gid);
+                                    smc->conn.lnk->gid);
                smc_gid_be16_convert(linfo.lnk[0].peer_gid,
-                                    smc->conn.lgr->lnk[0].peer_gid);
+                                    smc->conn.lnk->peer_gid);
 
                if (nla_put(skb, SMC_DIAG_LGRINFO, sizeof(linfo), &linfo) < 0)
                        goto errout;