From: Vladimir Sokolovsky Date: Sun, 27 Oct 2013 12:03:59 +0000 (+0200) Subject: mlx4_core: Use div_u64 to avoid unresolved symbol on 32-bit OSes X-Git-Tag: v4.1.12-92~293^2~1^2~64 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=7c8726f9a7162f43e52992e31fb5ecfb0b89193b;p=users%2Fjedix%2Flinux-maple.git mlx4_core: Use div_u64 to avoid unresolved symbol on 32-bit OSes E.g.: On Xenserver6.1/2: WARNING: "__udivdi3" [/drivers/net/ethernet/mellanox/mlx4/mlx4_core.ko] undefined! Signed-off-by: Vladimir Sokolovsky (Ported from Mellanox OFED 2.4) Signed-off-by: Mukesh Kacker --- diff --git a/drivers/net/ethernet/mellanox/mlx4/icm.c b/drivers/net/ethernet/mellanox/mlx4/icm.c index ff147bb7f33e4..d633e926cf8f3 100644 --- a/drivers/net/ethernet/mellanox/mlx4/icm.c +++ b/drivers/net/ethernet/mellanox/mlx4/icm.c @@ -394,7 +394,7 @@ int mlx4_init_icm_table(struct mlx4_dev *dev, struct mlx4_icm_table *table, u64 size; obj_per_chunk = MLX4_TABLE_CHUNK_SIZE / obj_size; - num_icm = (nobj + obj_per_chunk - 1) / obj_per_chunk; + num_icm = div_u64((nobj + obj_per_chunk - 1), obj_per_chunk); table->icm = kcalloc(num_icm, sizeof *table->icm, GFP_KERNEL); if (!table->icm) diff --git a/drivers/net/ethernet/mellanox/mlx4/mr.c b/drivers/net/ethernet/mellanox/mlx4/mr.c index 0ceb6a22f3a8e..a5c68fb6ccd48 100644 --- a/drivers/net/ethernet/mellanox/mlx4/mr.c +++ b/drivers/net/ethernet/mellanox/mlx4/mr.c @@ -930,8 +930,8 @@ int mlx4_init_mr_table(struct mlx4_dev *dev) return err; err = mlx4_buddy_init(&mr_table->mtt_buddy, - ilog2(dev->caps.num_mtts / - (1 << log_mtts_per_seg))); + ilog2(div_u64(dev->caps.num_mtts, + (1 << log_mtts_per_seg)))); if (err) goto err_buddy;