Lines Matching refs:res
55 static u64 ocfs2_group_from_res(struct ocfs2_suballoc_result *res)
57 if (res->sr_blkno == 0)
60 if (res->sr_bg_blkno)
61 return res->sr_bg_blkno;
63 return ocfs2_which_suballoc_group(res->sr_blkno, res->sr_bit_offset);
85 struct ocfs2_suballoc_result *res);
90 struct ocfs2_suballoc_result *res);
95 struct ocfs2_suballoc_result *res);
1279 struct ocfs2_suballoc_result *res)
1324 res->sr_bit_offset = best_offset;
1325 res->sr_bits = best_size;
1478 struct ocfs2_suballoc_result *res)
1511 max_bits, res);
1518 res->sr_bit_offset +
1519 res->sr_bits);
1531 if (min_bits <= res->sr_bits)
1533 else if (res->sr_bits) {
1538 ocfs2_local_alloc_seen_free_bits(osb, res->sr_bits);
1549 struct ocfs2_suballoc_result *res)
1562 res);
1565 res->sr_bit_offset + res->sr_bits;
1619 static int ocfs2_bg_discontig_fix_by_rec(struct ocfs2_suballoc_result *res,
1627 if (res->sr_bit_offset < bitoff)
1629 if (res->sr_bit_offset >= (bitoff + bitcount))
1631 res->sr_blkno = le64_to_cpu(rec->e_blkno) +
1632 (res->sr_bit_offset - bitoff);
1633 if ((res->sr_bit_offset + res->sr_bits) > (bitoff + bitcount))
1634 res->sr_bits = (bitoff + bitcount) - res->sr_bit_offset;
1640 struct ocfs2_suballoc_result *res)
1643 u64 bg_blkno = res->sr_bg_blkno; /* Save off */
1649 res->sr_blkno = 0;
1653 res->sr_blkno = res->sr_bg_blkno + res->sr_bit_offset;
1654 res->sr_bg_blkno = 0; /* Clear it for contig block groups */
1661 if (ocfs2_bg_discontig_fix_by_rec(res, rec, cl)) {
1662 res->sr_bg_blkno = bg_blkno; /* Restore */
1672 struct ocfs2_suballoc_result *res,
1682 res->sr_bg_blkno, &group_bh);
1690 ac->ac_max_block, res);
1698 ocfs2_bg_discontig_fix_result(ac, gd, res);
1704 res->sr_bg_stable_blkno = group_bh->b_blocknr;
1710 res->sr_bits,
1718 res->sr_bit_offset, res->sr_bits);
1721 res->sr_bits,
1739 struct ocfs2_suballoc_result *res,
1772 res)) == -ENOSPC) {
1797 (unsigned long long)le64_to_cpu(bg->bg_blkno), res->sr_bits);
1799 res->sr_bg_blkno = le64_to_cpu(bg->bg_blkno);
1801 BUG_ON(res->sr_bits == 0);
1803 ocfs2_bg_discontig_fix_result(ac, bg, res);
1809 res->sr_bg_stable_blkno = group_bh->b_blocknr;
1826 (ocfs2_block_group_reasonably_empty(bg, res->sr_bits))) {
1840 ac->ac_bh, res->sr_bits,
1851 res->sr_bit_offset,
1852 res->sr_bits);
1855 ac->ac_bh, res->sr_bits, chain);
1862 res->sr_bits);
1880 struct ocfs2_suballoc_result *res)
1909 res->sr_bg_blkno = hint;
1910 if (res->sr_bg_blkno) {
1916 min_bits, res, &bits_left);
1931 res, &bits_left);
1934 hint = res->sr_bg_blkno;
1936 hint = ocfs2_group_from_res(res);
1959 res, &bits_left);
1961 hint = ocfs2_group_from_res(res);
1996 struct ocfs2_suballoc_result res = { .sr_blkno = 0, };
2006 &res);
2013 *suballoc_loc = res.sr_bg_blkno;
2014 *suballoc_bit_start = res.sr_bit_offset;
2015 *blkno_start = res.sr_blkno;
2016 ac->ac_bits_given += res.sr_bits;
2017 *num_bits = res.sr_bits;
2067 struct ocfs2_suballoc_result *res;
2074 res = kzalloc(sizeof(*res), GFP_NOFS);
2075 if (res == NULL) {
2102 ret = ocfs2_claim_suballoc_bits(ac, handle, 1, 1, res);
2108 ac->ac_find_loc_priv = res;
2109 *fe_blkno = res->sr_blkno;
2116 kfree(res);
2130 struct ocfs2_suballoc_result *res = ac->ac_find_loc_priv;
2141 BUG_ON(res->sr_blkno != di_blkno);
2144 res->sr_bg_stable_blkno, &bg_bh);
2154 ac->ac_bh, res->sr_bits,
2165 res->sr_bit_offset,
2166 res->sr_bits);
2169 ac->ac_bh, res->sr_bits, chain);
2175 res->sr_bits);
2179 BUG_ON(res->sr_bits != 1);
2181 *suballoc_loc = res->sr_bg_blkno;
2182 *suballoc_bit = res->sr_bit_offset;
2201 struct ocfs2_suballoc_result res;
2214 &res);
2221 BUG_ON(res.sr_bits != 1);
2223 *suballoc_loc = res.sr_bg_blkno;
2224 *suballoc_bit = res.sr_bit_offset;
2225 *fe_blkno = res.sr_blkno;
2305 struct ocfs2_suballoc_result res = { .sr_blkno = 0, };
2342 &res);
2344 BUG_ON(res.sr_blkno); /* cluster alloc can't set */
2347 res.sr_bg_blkno,
2348 res.sr_bit_offset);
2350 *num_clusters = res.sr_bits;
2747 * is returned and *res is 1 for SET; 0 otherwise. when fails, errno
2748 * is returned and *res is meaningless. Call this after you have
2756 u16 bit, int *res)
2787 *res = ocfs2_test_bit(bit, (unsigned long *)group->bg_bitmap);
2801 * On success, 0 is returned and *res is 1 for SET; 0 otherwise.
2803 * In the event of failure, a negative value is returned and *res is
2810 int ocfs2_test_inode_bit(struct ocfs2_super *osb, u64 blkno, int *res)
2853 group_blkno, blkno, suballoc_bit, res);