Lines Matching refs:ba_lun
55 * @ba_lun: Block allocator to initialize.
59 static int ba_init(struct ba_lun *ba_lun)
67 "ba_lun->lsize=%lx ba_lun->au_size=%lX\n",
68 __func__, ba_lun->lun_id, ba_lun->lsize, ba_lun->au_size);
71 lun_size_au = ba_lun->lsize / ba_lun->au_size;
81 __func__, ba_lun->lun_id);
96 "lun_id=%016llx\n", __func__, ba_lun->lun_id);
126 __func__, ba_lun->lun_id);
133 ba_lun->ba_lun_handle = bali;
137 __func__, ba_lun->lun_id, bali->lun_bmap_size,
180 * @ba_lun: Block allocator from which to allocate a block.
184 static u64 ba_alloc(struct ba_lun *ba_lun)
190 bali = ba_lun->ba_lun_handle;
194 __func__, ba_lun->lun_id, bali->free_aun_cnt);
198 __func__, ba_lun->lun_id);
211 " lun_id=%016llx\n", __func__, ba_lun->lun_id);
224 ((bit_word * BITS_PER_LONG) + bit_pos), ba_lun->lun_id,
252 * @ba_lun: Block allocator from which to allocate a block.
257 static int ba_free(struct ba_lun *ba_lun, u64 to_free)
262 bali = ba_lun->ba_lun_handle;
266 __func__, to_free, ba_lun->lun_id);
271 "free_aun_cnt=%llx\n", __func__, to_free, ba_lun->lun_id,
276 __func__, to_free, ba_lun->lun_id,
295 ba_lun->lun_id, bali->free_aun_cnt);
302 * @ba_lun: Block allocator from which to allocate a block.
307 static int ba_clone(struct ba_lun *ba_lun, u64 to_clone)
309 struct ba_lun_info *bali = ba_lun->ba_lun_handle;
313 __func__, to_clone, ba_lun->lun_id);
318 __func__, to_clone, ba_lun->lun_id);
322 __func__, to_clone, ba_lun->lun_id);
333 * @ba_lun: Block allocator.
337 static u64 ba_space(struct ba_lun *ba_lun)
339 struct ba_lun_info *bali = ba_lun->ba_lun_handle;
346 * @ba_lun: Block allocator.
350 void cxlflash_ba_terminate(struct ba_lun *ba_lun)
352 struct ba_lun_info *bali = ba_lun->ba_lun_handle;
358 ba_lun->ba_lun_handle = NULL;
378 blka->ba_lun.lun_id = lli->lun_index;
379 blka->ba_lun.lsize = gli->max_lba + 1;
380 blka->ba_lun.lba_size = gli->blk_len;
382 blka->ba_lun.au_size = MC_CHUNK_SIZE;
383 blka->nchunk = blka->ba_lun.lsize / MC_CHUNK_SIZE;
385 rc = ba_init(&blka->ba_lun);
526 av_size = ba_space(&blka->ba_lun);
568 aun = ba_alloc(&blka->ba_lun);
696 ba_free(&blka->ba_lun, aun);
1075 cxlflash_ba_terminate(&gli->blka.ba_lun);
1132 if (ba_clone(&blka->ba_lun, aun) == -1ULL) {
1172 ba_free(&blka->ba_lun, aun);