Lines Matching refs:res
57 static u64 ocfs2_group_from_res(struct ocfs2_suballoc_result *res)
59 if (res->sr_blkno == 0)
62 if (res->sr_bg_blkno)
63 return res->sr_bg_blkno;
65 return ocfs2_which_suballoc_group(res->sr_blkno, res->sr_bit_offset);
87 struct ocfs2_suballoc_result *res);
92 struct ocfs2_suballoc_result *res);
97 struct ocfs2_suballoc_result *res);
1281 struct ocfs2_suballoc_result *res)
1326 res->sr_bit_offset = best_offset;
1327 res->sr_bits = best_size;
1480 struct ocfs2_suballoc_result *res)
1513 max_bits, res);
1520 res->sr_bit_offset +
1521 res->sr_bits);
1533 if (min_bits <= res->sr_bits)
1535 else if (res->sr_bits) {
1540 ocfs2_local_alloc_seen_free_bits(osb, res->sr_bits);
1551 struct ocfs2_suballoc_result *res)
1564 res);
1567 res->sr_bit_offset + res->sr_bits;
1621 static int ocfs2_bg_discontig_fix_by_rec(struct ocfs2_suballoc_result *res,
1629 if (res->sr_bit_offset < bitoff)
1631 if (res->sr_bit_offset >= (bitoff + bitcount))
1633 res->sr_blkno = le64_to_cpu(rec->e_blkno) +
1634 (res->sr_bit_offset - bitoff);
1635 if ((res->sr_bit_offset + res->sr_bits) > (bitoff + bitcount))
1636 res->sr_bits = (bitoff + bitcount) - res->sr_bit_offset;
1642 struct ocfs2_suballoc_result *res)
1645 u64 bg_blkno = res->sr_bg_blkno; /* Save off */
1651 res->sr_blkno = 0;
1655 res->sr_blkno = res->sr_bg_blkno + res->sr_bit_offset;
1656 res->sr_bg_blkno = 0; /* Clear it for contig block groups */
1663 if (ocfs2_bg_discontig_fix_by_rec(res, rec, cl)) {
1664 res->sr_bg_blkno = bg_blkno; /* Restore */
1674 struct ocfs2_suballoc_result *res,
1684 res->sr_bg_blkno, &group_bh);
1692 ac->ac_max_block, res);
1700 ocfs2_bg_discontig_fix_result(ac, gd, res);
1706 res->sr_bg_stable_blkno = group_bh->b_blocknr;
1712 res->sr_bits,
1720 res->sr_bit_offset, res->sr_bits);
1723 res->sr_bits,
1741 struct ocfs2_suballoc_result *res,
1774 res)) == -ENOSPC) {
1799 (unsigned long long)le64_to_cpu(bg->bg_blkno), res->sr_bits);
1801 res->sr_bg_blkno = le64_to_cpu(bg->bg_blkno);
1803 BUG_ON(res->sr_bits == 0);
1805 ocfs2_bg_discontig_fix_result(ac, bg, res);
1811 res->sr_bg_stable_blkno = group_bh->b_blocknr;
1828 (ocfs2_block_group_reasonably_empty(bg, res->sr_bits))) {
1842 ac->ac_bh, res->sr_bits,
1853 res->sr_bit_offset,
1854 res->sr_bits);
1857 ac->ac_bh, res->sr_bits, chain);
1864 res->sr_bits);
1882 struct ocfs2_suballoc_result *res)
1911 res->sr_bg_blkno = hint;
1912 if (res->sr_bg_blkno) {
1918 min_bits, res, &bits_left);
1933 res, &bits_left);
1936 hint = res->sr_bg_blkno;
1938 hint = ocfs2_group_from_res(res);
1961 res, &bits_left);
1963 hint = ocfs2_group_from_res(res);
1998 struct ocfs2_suballoc_result res = { .sr_blkno = 0, };
2008 &res);
2015 *suballoc_loc = res.sr_bg_blkno;
2016 *suballoc_bit_start = res.sr_bit_offset;
2017 *blkno_start = res.sr_blkno;
2018 ac->ac_bits_given += res.sr_bits;
2019 *num_bits = res.sr_bits;
2069 struct ocfs2_suballoc_result *res;
2076 res = kzalloc(sizeof(*res), GFP_NOFS);
2077 if (res == NULL) {
2104 ret = ocfs2_claim_suballoc_bits(ac, handle, 1, 1, res);
2110 ac->ac_find_loc_priv = res;
2111 *fe_blkno = res->sr_blkno;
2118 kfree(res);
2132 struct ocfs2_suballoc_result *res = ac->ac_find_loc_priv;
2143 BUG_ON(res->sr_blkno != di_blkno);
2146 res->sr_bg_stable_blkno, &bg_bh);
2156 ac->ac_bh, res->sr_bits,
2167 res->sr_bit_offset,
2168 res->sr_bits);
2171 ac->ac_bh, res->sr_bits, chain);
2177 res->sr_bits);
2181 BUG_ON(res->sr_bits != 1);
2183 *suballoc_loc = res->sr_bg_blkno;
2184 *suballoc_bit = res->sr_bit_offset;
2203 struct ocfs2_suballoc_result res;
2216 &res);
2223 BUG_ON(res.sr_bits != 1);
2225 *suballoc_loc = res.sr_bg_blkno;
2226 *suballoc_bit = res.sr_bit_offset;
2227 *fe_blkno = res.sr_blkno;
2307 struct ocfs2_suballoc_result res = { .sr_blkno = 0, };
2344 &res);
2346 BUG_ON(res.sr_blkno); /* cluster alloc can't set */
2349 res.sr_bg_blkno,
2350 res.sr_bit_offset);
2352 *num_clusters = res.sr_bits;
2749 * is returned and *res is 1 for SET; 0 otherwise. when fails, errno
2750 * is returned and *res is meaningless. Call this after you have
2758 u16 bit, int *res)
2789 *res = ocfs2_test_bit(bit, (unsigned long *)group->bg_bitmap);
2803 * On success, 0 is returned and *res is 1 for SET; 0 otherwise.
2805 * In the event of failure, a negative value is returned and *res is
2812 int ocfs2_test_inode_bit(struct ocfs2_super *osb, u64 blkno, int *res)
2855 group_blkno, blkno, suballoc_bit, res);