net/smc: Fix searching in list of known pnetids in smc_pnet_add_pnetid
authorLi RongQing <lirongqing@baidu.com>
Mon, 14 Oct 2024 11:53:21 +0000 (19:53 +0800)
committerJakub Kicinski <kuba@kernel.org>
Tue, 15 Oct 2024 17:56:31 +0000 (10:56 -0700)
pnetid of pi (not newly allocated pe) should be compared

Fixes: e888a2e8337c ("net/smc: introduce list of pnetids for Ethernet devices")
Reviewed-by: D. Wythe <alibuda@linux.alibaba.com>
Reviewed-by: Wen Gu <guwen@linux.alibaba.com>
Signed-off-by: Li RongQing <lirongqing@baidu.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Gerd Bayer <gbayer@linux.ibm.com>
Link: https://patch.msgid.link/20241014115321.33234-1-lirongqing@baidu.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/smc/smc_pnet.c

index 1dd3623..a04aa0e 100644 (file)
@@ -753,7 +753,7 @@ static int smc_pnet_add_pnetid(struct net *net, u8 *pnetid)
 
        write_lock(&sn->pnetids_ndev.lock);
        list_for_each_entry(pi, &sn->pnetids_ndev.list, list) {
-               if (smc_pnet_match(pnetid, pe->pnetid)) {
+               if (smc_pnet_match(pnetid, pi->pnetid)) {
                        refcount_inc(&pi->refcnt);
                        kfree(pe);
                        goto unlock;