Lines Matching refs:ar
3024 struct ext4_allocation_request *ar) in ext4_mb_normalize_request() argument
3109 if (ar->pleft && start <= ar->lleft) { in ext4_mb_normalize_request()
3110 size -= ar->lleft + 1 - start; in ext4_mb_normalize_request()
3111 start = ar->lleft + 1; in ext4_mb_normalize_request()
3113 if (ar->pright && start + size - 1 >= ar->lright) in ext4_mb_normalize_request()
3114 size -= start + size - ar->lright; in ext4_mb_normalize_request()
3191 if (ar->pright && (ar->lright == (start + size))) { in ext4_mb_normalize_request()
3193 ext4_get_group_no_and_offset(ac->ac_sb, ar->pright - size, in ext4_mb_normalize_request()
3198 if (ar->pleft && (ar->lleft + 1 == start)) { in ext4_mb_normalize_request()
3200 ext4_get_group_no_and_offset(ac->ac_sb, ar->pleft + 1, in ext4_mb_normalize_request()
4171 struct ext4_allocation_request *ar) in ext4_mb_initialize_context() argument
4173 struct super_block *sb = ar->inode->i_sb; in ext4_mb_initialize_context()
4182 len = ar->len; in ext4_mb_initialize_context()
4189 goal = ar->goal; in ext4_mb_initialize_context()
4196 ac->ac_b_ex.fe_logical = EXT4_LBLK_CMASK(sbi, ar->logical); in ext4_mb_initialize_context()
4199 ac->ac_inode = ar->inode; in ext4_mb_initialize_context()
4205 ac->ac_flags = ar->flags; in ext4_mb_initialize_context()
4213 (unsigned) ar->len, (unsigned) ar->logical, in ext4_mb_initialize_context()
4214 (unsigned) ar->goal, ac->ac_flags, ac->ac_2order, in ext4_mb_initialize_context()
4215 (unsigned) ar->lleft, (unsigned) ar->pleft, in ext4_mb_initialize_context()
4216 (unsigned) ar->lright, (unsigned) ar->pright, in ext4_mb_initialize_context()
4217 atomic_read(&ar->inode->i_writecount) ? "" : "non-"); in ext4_mb_initialize_context()
4416 struct ext4_allocation_request *ar, int *errp) in ext4_mb_new_blocks() argument
4427 sb = ar->inode->i_sb; in ext4_mb_new_blocks()
4430 trace_ext4_request_blocks(ar); in ext4_mb_new_blocks()
4433 if (IS_NOQUOTA(ar->inode)) in ext4_mb_new_blocks()
4434 ar->flags |= EXT4_MB_USE_ROOT_BLOCKS; in ext4_mb_new_blocks()
4436 if ((ar->flags & EXT4_MB_DELALLOC_RESERVED) == 0) { in ext4_mb_new_blocks()
4441 while (ar->len && in ext4_mb_new_blocks()
4442 ext4_claim_free_clusters(sbi, ar->len, ar->flags)) { in ext4_mb_new_blocks()
4446 ar->len = ar->len >> 1; in ext4_mb_new_blocks()
4448 if (!ar->len) { in ext4_mb_new_blocks()
4452 reserv_clstrs = ar->len; in ext4_mb_new_blocks()
4453 if (ar->flags & EXT4_MB_USE_ROOT_BLOCKS) { in ext4_mb_new_blocks()
4454 dquot_alloc_block_nofail(ar->inode, in ext4_mb_new_blocks()
4455 EXT4_C2B(sbi, ar->len)); in ext4_mb_new_blocks()
4457 while (ar->len && in ext4_mb_new_blocks()
4458 dquot_alloc_block(ar->inode, in ext4_mb_new_blocks()
4459 EXT4_C2B(sbi, ar->len))) { in ext4_mb_new_blocks()
4461 ar->flags |= EXT4_MB_HINT_NOPREALLOC; in ext4_mb_new_blocks()
4462 ar->len--; in ext4_mb_new_blocks()
4465 inquota = ar->len; in ext4_mb_new_blocks()
4466 if (ar->len == 0) { in ext4_mb_new_blocks()
4474 ar->len = 0; in ext4_mb_new_blocks()
4479 *errp = ext4_mb_initialize_context(ac, ar); in ext4_mb_new_blocks()
4481 ar->len = 0; in ext4_mb_new_blocks()
4488 ext4_mb_normalize_request(ac, ar); in ext4_mb_new_blocks()
4525 ar->len = ac->ac_b_ex.fe_len; in ext4_mb_new_blocks()
4537 ar->len = 0; in ext4_mb_new_blocks()
4544 if (inquota && ar->len < inquota) in ext4_mb_new_blocks()
4545 dquot_free_block(ar->inode, EXT4_C2B(sbi, inquota - ar->len)); in ext4_mb_new_blocks()
4546 if (!ar->len) { in ext4_mb_new_blocks()
4547 if ((ar->flags & EXT4_MB_DELALLOC_RESERVED) == 0) in ext4_mb_new_blocks()
4553 trace_ext4_allocate_blocks(ar, (unsigned long long)block); in ext4_mb_new_blocks()