CC: kbuild-...@lists.01.org
BCC: l...@intel.com
CC: linux-ker...@vger.kernel.org
TO: Eli Cohen <e...@nvidia.com>
CC: Saeed Mahameed <sae...@nvidia.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   09688c0166e76ce2fb85e86b9d99be8b0084cdf9
commit: 7c9f131f366ab414691907fa0407124ea2b2f3bc {net,vdpa}/mlx5: Configure 
interface MAC into mpfs L2 table
date:   10 months ago
:::::: branch date: 26 hours ago
:::::: commit date: 10 months ago
config: riscv-randconfig-m031-20220313 
(https://download.01.org/0day-ci/archive/20220315/202203150629.hhcgylen-...@intel.com/config)
compiler: riscv64-linux-gcc (GCC) 11.2.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <l...@intel.com>
Reported-by: Dan Carpenter <dan.carpen...@oracle.com>

New smatch warnings:
drivers/vdpa/mlx5/net/mlx5_vnet.c:2063 mlx5_vdpa_dev_add() error: uninitialized 
symbol 'pfmdev'.

Old smatch warnings:
drivers/vdpa/mlx5/net/mlx5_vnet.c:638 umem_size() error: uninitialized symbol 
'p_a'.
drivers/vdpa/mlx5/net/mlx5_vnet.c:638 umem_size() error: uninitialized symbol 
'p_b'.
drivers/vdpa/mlx5/net/mlx5_vnet.c:720 umem_destroy() error: potentially 
dereferencing uninitialized 'umem'.

vim +/pfmdev +2063 drivers/vdpa/mlx5/net/mlx5_vnet.c

58926c8aab104da Eli Cohen       2021-04-08  1994  
58926c8aab104da Eli Cohen       2021-04-08  1995  static int 
mlx5_vdpa_dev_add(struct vdpa_mgmt_dev *v_mdev, const char *name)
1a86b377aa2147a Eli Cohen       2020-08-04  1996  {
58926c8aab104da Eli Cohen       2021-04-08  1997        struct 
mlx5_vdpa_mgmtdev *mgtdev = container_of(v_mdev, struct mlx5_vdpa_mgmtdev, 
mgtdev);
1a86b377aa2147a Eli Cohen       2020-08-04  1998        struct 
virtio_net_config *config;
7c9f131f366ab41 Eli Cohen       2021-04-22  1999        struct mlx5_core_dev 
*pfmdev;
1a86b377aa2147a Eli Cohen       2020-08-04  2000        struct mlx5_vdpa_dev 
*mvdev;
1a86b377aa2147a Eli Cohen       2020-08-04  2001        struct mlx5_vdpa_net 
*ndev;
58926c8aab104da Eli Cohen       2021-04-08  2002        struct mlx5_core_dev 
*mdev;
1a86b377aa2147a Eli Cohen       2020-08-04  2003        u32 max_vqs;
1a86b377aa2147a Eli Cohen       2020-08-04  2004        int err;
1a86b377aa2147a Eli Cohen       2020-08-04  2005  
58926c8aab104da Eli Cohen       2021-04-08  2006        if (mgtdev->ndev)
58926c8aab104da Eli Cohen       2021-04-08  2007                return -ENOSPC;
58926c8aab104da Eli Cohen       2021-04-08  2008  
58926c8aab104da Eli Cohen       2021-04-08  2009        mdev = 
mgtdev->madev->mdev;
1a86b377aa2147a Eli Cohen       2020-08-04  2010        /* we save one 
virtqueue for control virtqueue should we require it */
1a86b377aa2147a Eli Cohen       2020-08-04  2011        max_vqs = 
MLX5_CAP_DEV_VDPA_EMULATION(mdev, max_num_virtio_queues);
1a86b377aa2147a Eli Cohen       2020-08-04  2012        max_vqs = min_t(u32, 
max_vqs, MLX5_MAX_SUPPORTED_VQS);
1a86b377aa2147a Eli Cohen       2020-08-04  2013  
1a86b377aa2147a Eli Cohen       2020-08-04  2014        ndev = 
vdpa_alloc_device(struct mlx5_vdpa_net, mvdev.vdev, mdev->device, 
&mlx5_vdpa_ops,
58926c8aab104da Eli Cohen       2021-04-08  2015                                
 name);
1a86b377aa2147a Eli Cohen       2020-08-04  2016        if (IS_ERR(ndev))
74c9729dd892a1b Leon Romanovsky 2020-10-04  2017                return 
PTR_ERR(ndev);
1a86b377aa2147a Eli Cohen       2020-08-04  2018  
1a86b377aa2147a Eli Cohen       2020-08-04  2019        ndev->mvdev.max_vqs = 
max_vqs;
1a86b377aa2147a Eli Cohen       2020-08-04  2020        mvdev = &ndev->mvdev;
1a86b377aa2147a Eli Cohen       2020-08-04  2021        mvdev->mdev = mdev;
1a86b377aa2147a Eli Cohen       2020-08-04  2022        init_mvqs(ndev);
1a86b377aa2147a Eli Cohen       2020-08-04  2023        
mutex_init(&ndev->reslock);
1a86b377aa2147a Eli Cohen       2020-08-04  2024        config = &ndev->config;
d084d996aaf53c0 Si-Wei Liu      2021-04-08  2025        err = query_mtu(mdev, 
&ndev->mtu);
1a86b377aa2147a Eli Cohen       2020-08-04  2026        if (err)
1a86b377aa2147a Eli Cohen       2020-08-04  2027                goto err_mtu;
1a86b377aa2147a Eli Cohen       2020-08-04  2028  
1a86b377aa2147a Eli Cohen       2020-08-04  2029        err = 
mlx5_query_nic_vport_mac_address(mdev, 0, 0, config->mac);
1a86b377aa2147a Eli Cohen       2020-08-04  2030        if (err)
1a86b377aa2147a Eli Cohen       2020-08-04  2031                goto err_mtu;
1a86b377aa2147a Eli Cohen       2020-08-04  2032  
7c9f131f366ab41 Eli Cohen       2021-04-22  2033        if 
(!is_zero_ether_addr(config->mac)) {
7c9f131f366ab41 Eli Cohen       2021-04-22  2034                pfmdev = 
pci_get_drvdata(pci_physfn(mdev->pdev));
7c9f131f366ab41 Eli Cohen       2021-04-22  2035                err = 
mlx5_mpfs_add_mac(pfmdev, config->mac);
7c9f131f366ab41 Eli Cohen       2021-04-22  2036                if (err)
7c9f131f366ab41 Eli Cohen       2021-04-22  2037                        goto 
err_mtu;
7c9f131f366ab41 Eli Cohen       2021-04-22  2038        }
7c9f131f366ab41 Eli Cohen       2021-04-22  2039  
1a86b377aa2147a Eli Cohen       2020-08-04  2040        mvdev->vdev.dma_dev = 
mdev->device;
1a86b377aa2147a Eli Cohen       2020-08-04  2041        err = 
mlx5_vdpa_alloc_resources(&ndev->mvdev);
1a86b377aa2147a Eli Cohen       2020-08-04  2042        if (err)
7c9f131f366ab41 Eli Cohen       2021-04-22  2043                goto err_mpfs;
1a86b377aa2147a Eli Cohen       2020-08-04  2044  
1a86b377aa2147a Eli Cohen       2020-08-04  2045        err = 
alloc_resources(ndev);
1a86b377aa2147a Eli Cohen       2020-08-04  2046        if (err)
1a86b377aa2147a Eli Cohen       2020-08-04  2047                goto err_res;
1a86b377aa2147a Eli Cohen       2020-08-04  2048  
58926c8aab104da Eli Cohen       2021-04-08  2049        mvdev->vdev.mdev = 
&mgtdev->mgtdev;
58926c8aab104da Eli Cohen       2021-04-08  2050        err = 
_vdpa_register_device(&mvdev->vdev, 2 * mlx5_vdpa_max_qps(max_vqs));
1a86b377aa2147a Eli Cohen       2020-08-04  2051        if (err)
1a86b377aa2147a Eli Cohen       2020-08-04  2052                goto err_reg;
1a86b377aa2147a Eli Cohen       2020-08-04  2053  
58926c8aab104da Eli Cohen       2021-04-08  2054        mgtdev->ndev = ndev;
74c9729dd892a1b Leon Romanovsky 2020-10-04  2055        return 0;
1a86b377aa2147a Eli Cohen       2020-08-04  2056  
1a86b377aa2147a Eli Cohen       2020-08-04  2057  err_reg:
1a86b377aa2147a Eli Cohen       2020-08-04  2058        free_resources(ndev);
1a86b377aa2147a Eli Cohen       2020-08-04  2059  err_res:
1a86b377aa2147a Eli Cohen       2020-08-04  2060        
mlx5_vdpa_free_resources(&ndev->mvdev);
7c9f131f366ab41 Eli Cohen       2021-04-22  2061  err_mpfs:
7c9f131f366ab41 Eli Cohen       2021-04-22  2062        if 
(!is_zero_ether_addr(config->mac))
7c9f131f366ab41 Eli Cohen       2021-04-22 @2063                
mlx5_mpfs_del_mac(pfmdev, config->mac);
1a86b377aa2147a Eli Cohen       2020-08-04  2064  err_mtu:
1a86b377aa2147a Eli Cohen       2020-08-04  2065        
mutex_destroy(&ndev->reslock);
1a86b377aa2147a Eli Cohen       2020-08-04  2066        
put_device(&mvdev->vdev.dev);
74c9729dd892a1b Leon Romanovsky 2020-10-04  2067        return err;
1a86b377aa2147a Eli Cohen       2020-08-04  2068  }
1a86b377aa2147a Eli Cohen       2020-08-04  2069  

---
0-DAY CI Kernel Test Service
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org

Reply via email to