RDMA/qedr: Zero stack memory before copying to user space
authorJason Gunthorpe <jgg@mellanox.com>
Thu, 5 Apr 2018 02:58:13 +0000 (20:58 -0600)
committerJason Gunthorpe <jgg@mellanox.com>
Thu, 5 Apr 2018 16:11:37 +0000 (10:11 -0600)
The fact this struct was not init'd like all the others was missed when
the padding reserved field was added.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: 71e80a4781af ("RDMA/qedr: Fix uABI structure layouts for 32/64 compat")
Acked-by: Michal Kalderon <Michal.Kalderon@cavium.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/qedr/verbs.c

index a9f494f..1835dc9 100644 (file)
@@ -473,9 +473,9 @@ struct ib_pd *qedr_alloc_pd(struct ib_device *ibdev,
        pd->pd_id = pd_id;
 
        if (udata && context) {
-               struct qedr_alloc_pd_uresp uresp;
-
-               uresp.pd_id = pd_id;
+               struct qedr_alloc_pd_uresp uresp = {
+                       .pd_id = pd_id,
+               };
 
                rc = qedr_ib_copy_to_udata(udata, &uresp, sizeof(uresp));
                if (rc) {