|
@@ -1087,7 +1087,6 @@ int btrfs_defrag_file(struct inode *inode, struct file *file,
|
|
|
|
|
|
defrag_count += ret;
|
|
defrag_count += ret;
|
|
balance_dirty_pages_ratelimited_nr(inode->i_mapping, ret);
|
|
balance_dirty_pages_ratelimited_nr(inode->i_mapping, ret);
|
|
- i += ret;
|
|
|
|
|
|
|
|
if (newer_than) {
|
|
if (newer_than) {
|
|
if (newer_off == (u64)-1)
|
|
if (newer_off == (u64)-1)
|
|
@@ -1107,7 +1106,10 @@ int btrfs_defrag_file(struct inode *inode, struct file *file,
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- i++;
|
|
|
|
|
|
+ if (ret > 0)
|
|
|
|
+ i += ret;
|
|
|
|
+ else
|
|
|
|
+ i++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|