errcode_t retval;
blk64_t blk;
dgrp_t i;
+ time_t now, last_update = 0;
int num;
struct ext2fs_numeric_progress_struct progress;
fs->group_desc_count);
for (i = 0; i < fs->group_desc_count; i++) {
- ext2fs_numeric_progress_update(fs, &progress, i);
+ now = time(0);
+ if (now != last_update) {
+ ext2fs_numeric_progress_update(fs, &progress, i);
+ last_update = now;
+ }
blk = ext2fs_inode_table_loc(fs, i);
num = fs->inode_blocks_per_group;
blk64_t count = DISCARD_STEP_MB;
blk64_t cur;
int retval = 0;
+ time_t now, last_update = 0;
/*
* Let's try if discard really works on the device, so
_("Discarding device blocks: "),
blocks);
while (cur < blocks) {
- ext2fs_numeric_progress_update(fs, &progress, cur);
+ now = time(0);
+ if (now != last_update) {
+ ext2fs_numeric_progress_update(fs, &progress, cur);
+ last_update = now;
+ }
if (cur + count > blocks)
count = blocks - cur;