Stupid and very dangerous mistake. Plain luck it did not result in corruptions, was exposed as failure to convert csd journal from old to new format.
Affects: #VSTOR-100610 Signed-off-by: Alexey Kuznetsov <kuz...@virtuozzo.com> --- fs/ext4/move_extent.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/ext4/move_extent.c b/fs/ext4/move_extent.c index aa9b632..9210fbd 100644 --- a/fs/ext4/move_extent.c +++ b/fs/ext4/move_extent.c @@ -941,7 +941,7 @@ static unsigned int count_credits(struct inode *inode, ext4_lblk_t start, ext4_l goto out; } if (cur_blk < d_start) { - cur_len -= cur_blk - d_start; + cur_len -= d_start - cur_blk; cur_blk = d_start; } if (cur_blk + cur_len > d_end) -- 1.8.3.1 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel