OSDN Git Service

RDMA: Clear PD objects during their allocation
authorLeon Romanovsky <leonro@mellanox.com>
Wed, 9 Jan 2019 18:15:58 +0000 (20:15 +0200)
committerJason Gunthorpe <jgg@mellanox.com>
Fri, 11 Jan 2019 00:08:52 +0000 (17:08 -0700)
As part of an audit process to update drivers to use rdma_restrack_add()
ensure that PD objects is cleared before access.

Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/hns/hns_roce_pd.c
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mthca/mthca_provider.c
drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c
drivers/infiniband/sw/rdmavt/pd.c

index e11c149..4a29b2c 100644 (file)
@@ -66,7 +66,7 @@ struct ib_pd *hns_roce_alloc_pd(struct ib_device *ib_dev,
        struct hns_roce_pd *pd;
        int ret;
 
-       pd = kmalloc(sizeof(*pd), GFP_KERNEL);
+       pd = kzalloc(sizeof(*pd), GFP_KERNEL);
        if (!pd)
                return ERR_PTR(-ENOMEM);
 
index 11e9783..717e853 100644 (file)
@@ -2263,7 +2263,7 @@ static struct ib_pd *mlx5_ib_alloc_pd(struct ib_device *ibdev,
        u32 in[MLX5_ST_SZ_DW(alloc_pd_in)]   = {};
        u16 uid = 0;
 
-       pd = kmalloc(sizeof(*pd), GFP_KERNEL);
+       pd = kzalloc(sizeof(*pd), GFP_KERNEL);
        if (!pd)
                return ERR_PTR(-ENOMEM);
 
index 53fff6a..f87ee30 100644 (file)
@@ -381,7 +381,7 @@ static struct ib_pd *mthca_alloc_pd(struct ib_device *ibdev,
        struct mthca_pd *pd;
        int err;
 
-       pd = kmalloc(sizeof *pd, GFP_KERNEL);
+       pd = kzalloc(sizeof(*pd), GFP_KERNEL);
        if (!pd)
                return ERR_PTR(-ENOMEM);
 
index 4d238d0..65b6115 100644 (file)
@@ -457,7 +457,7 @@ struct ib_pd *pvrdma_alloc_pd(struct ib_device *ibdev,
        if (!atomic_add_unless(&dev->num_pds, 1, dev->dsr->caps.max_pd))
                return ERR_PTR(-ENOMEM);
 
-       pd = kmalloc(sizeof(*pd), GFP_KERNEL);
+       pd = kzalloc(sizeof(*pd), GFP_KERNEL);
        if (!pd) {
                ptr = ERR_PTR(-ENOMEM);
                goto err;
index 8a89aff..dcc1870 100644 (file)
@@ -66,7 +66,7 @@ struct ib_pd *rvt_alloc_pd(struct ib_device *ibdev,
        struct rvt_pd *pd;
        struct ib_pd *ret;
 
-       pd = kmalloc(sizeof(*pd), GFP_KERNEL);
+       pd = kzalloc(sizeof(*pd), GFP_KERNEL);
        if (!pd) {
                ret = ERR_PTR(-ENOMEM);
                goto bail;