• Home
  • Raw
  • Download

Lines Matching refs:bitmap

385 	struct ida_bitmap *bitmap, *alloc = NULL;  in ida_alloc_range()  local
396 bitmap = xas_find_marked(&xas, max / IDA_BITMAP_BITS, XA_FREE_MARK); in ida_alloc_range()
402 if (xa_is_value(bitmap)) { in ida_alloc_range()
403 unsigned long tmp = xa_to_value(bitmap); in ida_alloc_range()
415 bitmap = alloc; in ida_alloc_range()
416 if (!bitmap) in ida_alloc_range()
417 bitmap = kzalloc(sizeof(*bitmap), GFP_NOWAIT); in ida_alloc_range()
418 if (!bitmap) in ida_alloc_range()
420 bitmap->bitmap[0] = tmp; in ida_alloc_range()
421 xas_store(&xas, bitmap); in ida_alloc_range()
423 bitmap->bitmap[0] = 0; in ida_alloc_range()
428 if (bitmap) { in ida_alloc_range()
429 bit = find_next_zero_bit(bitmap->bitmap, IDA_BITMAP_BITS, bit); in ida_alloc_range()
435 __set_bit(bit, bitmap->bitmap); in ida_alloc_range()
436 if (bitmap_full(bitmap->bitmap, IDA_BITMAP_BITS)) in ida_alloc_range()
440 bitmap = xa_mk_value(1UL << bit); in ida_alloc_range()
442 bitmap = alloc; in ida_alloc_range()
443 if (!bitmap) in ida_alloc_range()
444 bitmap = kzalloc(sizeof(*bitmap), GFP_NOWAIT); in ida_alloc_range()
445 if (!bitmap) in ida_alloc_range()
447 __set_bit(bit, bitmap->bitmap); in ida_alloc_range()
449 xas_store(&xas, bitmap); in ida_alloc_range()
458 if (bitmap != alloc) in ida_alloc_range()
465 alloc = kzalloc(sizeof(*bitmap), gfp); in ida_alloc_range()
488 struct ida_bitmap *bitmap; in ida_free() local
494 bitmap = xas_load(&xas); in ida_free()
496 if (xa_is_value(bitmap)) { in ida_free()
497 unsigned long v = xa_to_value(bitmap); in ida_free()
507 if (!test_bit(bit, bitmap->bitmap)) in ida_free()
509 __clear_bit(bit, bitmap->bitmap); in ida_free()
511 if (bitmap_empty(bitmap->bitmap, IDA_BITMAP_BITS)) { in ida_free()
512 kfree(bitmap); in ida_free()
539 struct ida_bitmap *bitmap; in ida_destroy() local
543 xas_for_each(&xas, bitmap, ULONG_MAX) { in ida_destroy()
544 if (!xa_is_value(bitmap)) in ida_destroy()
545 kfree(bitmap); in ida_destroy()
577 struct ida_bitmap *bitmap = entry; in ida_dump_entry() local
580 pr_cont("bitmap: %p data", bitmap); in ida_dump_entry()
582 pr_cont(" %lx", bitmap->bitmap[i]); in ida_dump_entry()