Hello Eli Cohen,
This is a semi-automatic email about new static checker warnings.
The patch e126ba97dba9: "mlx5: Add driver for Mellanox Connect-IB
adapters" from Jul 7, 2013, leads to the following Smatch complaint:
drivers/infiniband/hw/mlx5/qp.c:979 create_qp_common()
error: we previously assumed 'pd->uobject' could be null (see line 847)
drivers/infiniband/hw/mlx5/qp.c
846 if (pd) {
847 if (pd->uobject) {
^^^^^^^^^^^
There are a bunch of checks for pd->uobject.
848 mlx5_ib_dbg(dev, "requested sq_wqe_count
(%d)\n", ucmd.sq_wqe_count);
849 if (ucmd.rq_wqe_shift != qp->rq.wqe_shift ||
850 ucmd.rq_wqe_count != qp->rq.wqe_cnt) {
851 mlx5_ib_dbg(dev, "invalid rq params\n");
852 return -EINVAL;
853 }
854 if (ucmd.sq_wqe_count >
dev->mdev.caps.max_wqes) {
855 mlx5_ib_dbg(dev, "requested
sq_wqe_count (%d) > max allowed (%d)\n",
[ snip ]
971 qp->doorbell_qpn = swab32(qp->mqp.qpn << 8);
972
973 qp->mqp.event = mlx5_ib_qp_event;
974
975 return 0;
976
977 err_create:
978 if (qp->create_type == MLX5_QP_USER)
979 destroy_qp_user(pd, qp);
^^^^^^^^^^^^^^^
But we dereference it inside destroy_qp_user() unconditionally.
980 else if (qp->create_type == MLX5_QP_KERNEL)
981 destroy_qp_kernel(dev, qp);
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html