Lines Matching refs:partial

244  *	@partial: pointer to the last triple within a chain
252 Indirect *partial)
260 goal = ext4_find_near(inode, partial);
316 * we had read the existing part of chain and partial points to the last
538 Indirect *partial;
554 partial = ext4_get_branch(inode, depth, offsets, chain, &err);
557 if (!partial) {
580 * Count number blocks in a subtree under 'partial'. At each
586 for (i = partial - chain + 1; i < depth; i++)
620 ar.goal = ext4_find_goal(inode, map->m_lblk, partial);
623 indirect_blks = (chain + depth) - partial - 1;
629 ar.len = ext4_blks_to_allocate(partial, indirect_blks,
636 offsets + (partial - chain), partial);
646 err = ext4_splice_branch(handle, &ar, partial, indirect_blks);
670 partial = chain + depth - 1; /* the whole chain */
672 while (partial > chain) {
673 BUFFER_TRACE(partial->bh, "call brelse");
674 brelse(partial->bh);
675 partial--;
770 * ext4_find_shared - find the indirect blocks for partial truncation.
774 * @chain: place to store the pointers to partial indirect blocks
808 Indirect *partial, *p;
815 partial = ext4_get_branch(inode, k, offsets, chain, &err);
817 if (!partial)
818 partial = chain + k-1;
823 if (!partial->key && *partial->p)
826 for (p = partial; (p > chain) && all_zeroes((__le32 *) p->bh->b_data, p->p); p--)
832 * it's easier to cheat and just decrement partial->p.
845 while (partial > p) {
846 brelse(partial->bh);
847 partial--;
850 return partial;
1126 Indirect *partial;
1166 partial = ext4_find_shared(inode, n, offsets, chain, &nr);
1169 if (partial == chain) {
1172 &nr, &nr+1, (chain+n-1) - partial);
1173 *partial->p = 0;
1180 BUFFER_TRACE(partial->bh, "get_write_access");
1181 ext4_free_branches(handle, inode, partial->bh,
1182 partial->p,
1183 partial->p+1, (chain+n-1) - partial);
1187 while (partial > chain) {
1188 ext4_free_branches(handle, inode, partial->bh, partial->p + 1,
1189 (__le32*)partial->bh->b_data+addr_per_block,
1190 (chain+n-1) - partial);
1191 BUFFER_TRACE(partial->bh, "call brelse");
1192 brelse(partial->bh);
1193 partial--;
1242 Indirect *partial, *partial2;
1269 * free partial block at start, and partial block at end of
1285 partial = p = ext4_find_shared(inode, n, offsets, chain, &nr);
1287 if (partial == chain) {
1290 &nr, &nr+1, (chain+n-1) - partial);
1291 *partial->p = 0;
1294 BUFFER_TRACE(partial->bh, "get_write_access");
1295 ext4_free_branches(handle, inode, partial->bh,
1296 partial->p,
1297 partial->p+1, (chain+n-1) - partial);
1305 while (partial > chain) {
1306 ext4_free_branches(handle, inode, partial->bh,
1307 partial->p + 1,
1308 (__le32 *)partial->bh->b_data+addr_per_block,
1309 (chain+n-1) - partial);
1310 partial--;
1350 partial = p = ext4_find_shared(inode, n, offsets, chain, &nr);
1355 int level = min(partial - chain, partial2 - chain2);
1367 if (partial == chain) {
1371 (chain+n-1) - partial);
1372 *partial->p = 0;
1375 BUFFER_TRACE(partial->bh, "get_write_access");
1376 ext4_free_branches(handle, inode, partial->bh,
1377 partial->p,
1378 partial->p+1,
1379 (chain+n-1) - partial);
1394 while (partial > chain || partial2 > chain2) {
1395 int depth = (chain+n-1) - partial;
1398 if (partial > chain && partial2 > chain2 &&
1399 partial->bh->b_blocknr == partial2->bh->b_blocknr) {
1404 ext4_free_branches(handle, inode, partial->bh,
1405 partial->p + 1,
1407 (chain+n-1) - partial);
1412 * The start and end partial branches may not be at the same
1418 if (partial > chain && depth <= depth2) {
1419 ext4_free_branches(handle, inode, partial->bh,
1420 partial->p + 1,
1421 (__le32 *)partial->bh->b_data+addr_per_block,
1422 (chain+n-1) - partial);
1423 partial--;