Commit 479163f4 authored by Al Viro's avatar Al Viro Committed by David S. Miller
Browse files

mlx5: don't duplicate kvfree()

parent c92d418f
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -805,14 +805,14 @@ struct ib_cq *mlx5_ib_create_cq(struct ib_device *ibdev, int entries,
		}


	mlx5_vfree(cqb);
	kvfree(cqb);
	return &cq->ibcq;

err_cmd:
	mlx5_core_destroy_cq(dev->mdev, &cq->mcq);

err_cqb:
	mlx5_vfree(cqb);
	kvfree(cqb);
	if (context)
		destroy_cq_user(cq, context);
	else
@@ -1159,11 +1159,11 @@ int mlx5_ib_resize_cq(struct ib_cq *ibcq, int entries, struct ib_udata *udata)
	}
	mutex_unlock(&cq->resize_mutex);

	mlx5_vfree(in);
	kvfree(in);
	return 0;

ex_alloc:
	mlx5_vfree(in);
	kvfree(in);

ex_resize:
	if (udata)
+2 −2
Original line number Diff line number Diff line
@@ -853,14 +853,14 @@ static struct mlx5_ib_mr *reg_create(struct ib_pd *pd, u64 virt_addr,
		goto err_2;
	}
	mr->umem = umem;
	mlx5_vfree(in);
	kvfree(in);

	mlx5_ib_dbg(dev, "mkey = 0x%x\n", mr->mmr.key);

	return mr;

err_2:
	mlx5_vfree(in);
	kvfree(in);

err_1:
	kfree(mr);
+4 −4
Original line number Diff line number Diff line
@@ -647,7 +647,7 @@ err_unmap:
	mlx5_ib_db_unmap_user(context, &qp->db);

err_free:
	mlx5_vfree(*in);
	kvfree(*in);

err_umem:
	if (qp->umem)
@@ -761,7 +761,7 @@ err_wrid:
	kfree(qp->rq.wrid);

err_free:
	mlx5_vfree(*in);
	kvfree(*in);

err_buf:
	mlx5_buf_free(dev->mdev, &qp->buf);
@@ -971,7 +971,7 @@ static int create_qp_common(struct mlx5_ib_dev *dev, struct ib_pd *pd,
		goto err_create;
	}

	mlx5_vfree(in);
	kvfree(in);
	/* Hardware wants QPN written in big-endian order (after
	 * shifting) for send doorbell.  Precompute this value to save
	 * a little bit when posting sends.
@@ -988,7 +988,7 @@ err_create:
	else if (qp->create_type == MLX5_QP_KERNEL)
		destroy_qp_kernel(dev, qp);

	mlx5_vfree(in);
	kvfree(in);
	return err;
}

+3 −3
Original line number Diff line number Diff line
@@ -141,7 +141,7 @@ static int create_srq_user(struct ib_pd *pd, struct mlx5_ib_srq *srq,
	return 0;

err_in:
	mlx5_vfree(*in);
	kvfree(*in);

err_umem:
	ib_umem_release(srq->umem);
@@ -209,7 +209,7 @@ static int create_srq_kernel(struct mlx5_ib_dev *dev, struct mlx5_ib_srq *srq,
	return 0;

err_in:
	mlx5_vfree(*in);
	kvfree(*in);

err_buf:
	mlx5_buf_free(dev->mdev, &srq->buf);
@@ -306,7 +306,7 @@ struct ib_srq *mlx5_ib_create_srq(struct ib_pd *pd,
	in->ctx.pd = cpu_to_be32(to_mpd(pd)->pdn);
	in->ctx.db_record = cpu_to_be64(srq->db.dma);
	err = mlx5_core_create_srq(dev->mdev, &srq->msrq, in, inlen);
	mlx5_vfree(in);
	kvfree(in);
	if (err) {
		mlx5_ib_dbg(dev, "create SRQ failed, err %d\n", err);
		goto err_usr_kern_srq;
+2 −2
Original line number Diff line number Diff line
@@ -390,7 +390,7 @@ int mlx5_create_map_eq(struct mlx5_core_dev *dev, struct mlx5_eq *eq, u8 vecidx,
	 */
	eq_update_ci(eq, 1);

	mlx5_vfree(in);
	kvfree(in);
	return 0;

err_irq:
@@ -400,7 +400,7 @@ err_eq:
	mlx5_cmd_destroy_eq(dev, eq->eqn);

err_in:
	mlx5_vfree(in);
	kvfree(in);

err_buf:
	mlx5_buf_free(dev, &eq->buf);
Loading