Lines Matching refs:bitmap
19 buddy->bitmap = kcalloc(buddy->max_order + 1, in mlx5dr_buddy_init()
20 sizeof(*buddy->bitmap), in mlx5dr_buddy_init()
26 if (!buddy->bitmap || !buddy->num_free) in mlx5dr_buddy_init()
34 buddy->bitmap[i] = bitmap_zalloc(size, GFP_KERNEL); in mlx5dr_buddy_init()
35 if (!buddy->bitmap[i]) in mlx5dr_buddy_init()
43 bitmap_set(buddy->bitmap[buddy->max_order], 0, 1); in mlx5dr_buddy_init()
51 bitmap_free(buddy->bitmap[i]); in mlx5dr_buddy_init()
55 kfree(buddy->bitmap); in mlx5dr_buddy_init()
66 bitmap_free(buddy->bitmap[i]); in mlx5dr_buddy_cleanup()
69 kfree(buddy->bitmap); in mlx5dr_buddy_cleanup()
85 seg = find_first_bit(buddy->bitmap[order_iter], m); in dr_buddy_find_free_seg()
130 bitmap_clear(buddy->bitmap[order_iter], seg, 1); in mlx5dr_buddy_alloc_mem()
140 bitmap_set(buddy->bitmap[order_iter], seg ^ 1, 1); in mlx5dr_buddy_alloc_mem()
158 while (test_bit(seg ^ 1, buddy->bitmap[order])) { in mlx5dr_buddy_free_mem()
159 bitmap_clear(buddy->bitmap[order], seg ^ 1, 1); in mlx5dr_buddy_free_mem()
164 bitmap_set(buddy->bitmap[order], seg, 1); in mlx5dr_buddy_free_mem()