Yishai Hadas 89dd86db78 mlx4_core: Allow large mlx4_buddy bitmaps
mlx4_buddy_init uses kmalloc() to allocate bitmaps, which fails when
the required size is beyond the max supported value (or when memory is
too fragmented to handle a huge allocation).  Extend this to use use
vmalloc() if kmalloc() fails, and take that into account when freeing
the bitmaps as well.

This fixes a driver load failure when log num mtt is 26 or higher, and
is a step in the direction of allowing to register huge amounts of
memory on large memory systems.

Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
2012-08-15 21:05:20 -07:00
..
2012-06-06 09:31:33 -07:00
2012-07-29 23:18:31 -07:00
2012-06-06 09:31:33 -07:00
2012-06-06 09:31:33 -07:00
2012-07-16 22:38:27 -07:00
2012-07-16 22:16:40 -07:00
2012-07-26 14:30:23 -07:00
2012-05-02 20:52:48 -04:00
2012-07-09 14:42:30 -07:00
2012-06-06 09:31:33 -07:00
2012-07-16 22:38:27 -07:00
2012-06-06 09:31:33 -07:00
2012-07-16 22:38:27 -07:00
2012-07-16 22:38:27 -07:00
2012-07-18 09:40:54 -07:00
2012-07-16 22:38:27 -07:00