Re: [PATCH rdma-next] RDMA/cxgb4: Protect from possible dereference

Leon Romanovsky
2017-10-30T05:30:24Z

[-- Attachment #1: Type: text/plain, Size: 1647 bytes --]

On Sun, Oct 29, 2017 at 04:29:50PM -0500, Steve Wise wrote:
> >
> > Smatch tool reports the following error:
> > drivers/infiniband/hw/cxgb4/qp.c:1886
> > c4iw_create_qp() error: we previously assumed 'ucontext'
> > could be null (see line 1804)
> >
> > Cc: Steve Wise <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
> > Signed-off-by: Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
> > ---
> > drivers/infiniband/hw/cxgb4/qp.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/infiniband/hw/cxgb4/qp.c
> > b/drivers/infiniband/hw/cxgb4/qp.c
> > index 57b23e33eb8b..4b3267358dff 100644
> > --- a/drivers/infiniband/hw/cxgb4/qp.c
> > +++ b/drivers/infiniband/hw/cxgb4/qp.c
> > @@ -1843,7 +1843,7 @@ struct ib_qp *c4iw_create_qp(struct ib_pd *pd,
> > struct ib_qp_init_attr *attrs,
> > if (ret)
> > goto err_destroy_qp;
> >
> > - if (udata) {
> > + if (udata && ucontext) {
> > sq_key_mm = kmalloc(sizeof(*sq_key_mm), GFP_KERNEL);
> > if (!sq_key_mm) {
> > ret = -ENOMEM;
>
>
> Hey Leon, doesn't udata imply ucontext? It's not a big deal, though, I
> guess.

Yes, it is, but I don't see any other option to clean RDMA.

➜ linux-rdma git:(rdma-next) x checks
Preparing /tmp/tmp.rkPKPYnNE2 (identifier tmp.rkPKPYnNE2)
Checking out files: 100% (61292/61292), done.
HEAD is now at e183225dff87 RDMA/cxgb4: Protect from possible dereference
Redirecting the output to /tmp/tmp.VZsidBz0jJ
There are 387 errors/warnings

>
> Reviewed-by: Steve Wise <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
>

Thanks

>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]