Messages in this thread Patch in this message |  | | | Subject | Re: whole bunch o' new IB warnings | | From | Roland Dreier <> | | Date | Wed, 13 Jun 2007 13:53:41 -0700 |
| |
> Current git tree on x86-64 (make allmodconfig) wants fixing for 2.6.22: > > drivers/infiniband/hw/mlx4/qp.c: In function set_rq_size: > drivers/infiniband/hw/mlx4/qp.c:210: warning: comparison of distinct > pointer types lacks a cast
Thanks, you're right. You have to admit, it's pretty amusing how many times roundup_pow_of_two() expands its argument (via ilog2)...
Anyway, I have this queued up to fix it. I'll ask Linus to pull shortly.
commit 42c059ea2b0aac5f961253ba81c1b464d181a600 Author: Roland Dreier <rolandd@cisco.com> Date: Tue Jun 12 10:52:02 2007 -0700
IB/mlx4: Fix warning in rounding up queue sizes
Doing max(1, foo) where foo is u32 generates a warning, because 1 is a signed constant. Fix this by using 1U instead.
Signed-off-by: Roland Dreier <rolandd@cisco.com>
diff --git a/drivers/infiniband/hw/mlx4/qp.c b/drivers/infiniband/hw/mlx4/qp.c index 5c6d054..4c15fa3 100644 --- a/drivers/infiniband/hw/mlx4/qp.c +++ b/drivers/infiniband/hw/mlx4/qp.c @@ -207,8 +207,8 @@ static int set_rq_size(struct mlx4_ib_dev *dev, struct ib_qp_cap *cap, if (is_user && (!cap->max_recv_wr || !cap->max_recv_sge)) return -EINVAL; - qp->rq.max = roundup_pow_of_two(max(1, cap->max_recv_wr)); - qp->rq.max_gs = roundup_pow_of_two(max(1, cap->max_recv_sge)); + qp->rq.max = roundup_pow_of_two(max(1U, cap->max_recv_wr)); + qp->rq.max_gs = roundup_pow_of_two(max(1U, cap->max_recv_sge)); qp->rq.wqe_shift = ilog2(qp->rq.max_gs * sizeof (struct mlx4_wqe_data_seg)); } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |