Lines Matching refs:lb
409 static void finish_range(struct list_blocks_struct *lb)
411 if (lb->first_block == 0)
413 if (lb->first)
414 lb->first = 0;
416 fprintf(lb->f, ", ");
417 if (lb->first_block == lb->last_block)
418 fprintf(lb->f, "(%lld):%u",
419 (long long)lb->first_bcnt, lb->first_block);
421 fprintf(lb->f, "(%lld-%lld):%u-%u",
422 (long long)lb->first_bcnt, (long long)lb->last_bcnt,
423 lb->first_block, lb->last_block);
424 lb->first_block = 0;
433 struct list_blocks_struct *lb = (struct list_blocks_struct *) private;
435 lb->total++;
440 if (lb->first_block &&
441 (lb->last_block+1 == *blocknr) &&
442 (lb->last_bcnt+1 == blockcnt)) {
443 lb->last_block = *blocknr;
444 lb->last_bcnt = blockcnt;
450 finish_range(lb);
451 lb->first_block = lb->last_block = *blocknr;
452 lb->first_bcnt = lb->last_bcnt = blockcnt;
458 finish_range(lb);
459 if (lb->first)
460 lb->first = 0;
462 fprintf(lb->f, ", ");
464 fprintf(lb->f, "(IND):%u", *blocknr);
466 fprintf(lb->f, "(DIND):%u", *blocknr);
468 fprintf(lb->f, "(TIND):%u", *blocknr);
542 struct list_blocks_struct lb;
545 lb.total = 0;
546 lb.first_block = 0;
547 lb.f = f;
548 lb.first = 1;
550 list_blocks_proc, (void *)&lb);
551 finish_range(&lb);
552 if (lb.total)
553 fprintf(f, "\n%sTOTAL: %lld\n", prefix, (long long)lb.total);