diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ext4/extents.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index e5fafa7324c8..74580ea3ab55 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c | |||
@@ -4529,19 +4529,7 @@ got_allocated_blocks: | |||
4529 | */ | 4529 | */ |
4530 | reserved_clusters = get_reserved_cluster_alloc(inode, | 4530 | reserved_clusters = get_reserved_cluster_alloc(inode, |
4531 | map->m_lblk, allocated); | 4531 | map->m_lblk, allocated); |
4532 | if (map_from_cluster) { | 4532 | if (!map_from_cluster) { |
4533 | if (reserved_clusters) { | ||
4534 | /* | ||
4535 | * We have clusters reserved for this range. | ||
4536 | * But since we are not doing actual allocation | ||
4537 | * and are simply using blocks from previously | ||
4538 | * allocated cluster, we should release the | ||
4539 | * reservation and not claim quota. | ||
4540 | */ | ||
4541 | ext4_da_update_reserve_space(inode, | ||
4542 | reserved_clusters, 0); | ||
4543 | } | ||
4544 | } else { | ||
4545 | BUG_ON(allocated_clusters < reserved_clusters); | 4533 | BUG_ON(allocated_clusters < reserved_clusters); |
4546 | if (reserved_clusters < allocated_clusters) { | 4534 | if (reserved_clusters < allocated_clusters) { |
4547 | struct ext4_inode_info *ei = EXT4_I(inode); | 4535 | struct ext4_inode_info *ei = EXT4_I(inode); |