Skip to content

Commit

Permalink
mlx4_core: Fix buddy->num_free allocation size
Browse files Browse the repository at this point in the history
The num_free field of mlx4_buddy has a type of array of unsigned int
while it was allocated as an array of pointers.  On 64-bit platforms
this allocates twice more than required.  Fix this by allocating the
correct size for the type.

Signed-off-by: Eli Cohen <eli@mellanox.co.il>

[ Convert to kcalloc().  - Roland ]

Signed-off-by: Roland Dreier <roland@purestorage.com>
  • Loading branch information
Eli Cohen authored and Roland Dreier committed Oct 6, 2011
1 parent a8dc0df commit a831275
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/mlx4/mr.c
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ static int mlx4_buddy_init(struct mlx4_buddy *buddy, int max_order)

buddy->bits = kzalloc((buddy->max_order + 1) * sizeof (long *),
GFP_KERNEL);
buddy->num_free = kzalloc((buddy->max_order + 1) * sizeof (int *),
buddy->num_free = kcalloc((buddy->max_order + 1), sizeof *buddy->num_free,
GFP_KERNEL);
if (!buddy->bits || !buddy->num_free)
goto err_out;
Expand Down

0 comments on commit a831275

Please sign in to comment.