diff options
author | Srivathsa Dara <srivathsa.d.dara@oracle.com> | 2024-02-27 14:13:29 +0100 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2024-03-07 19:32:54 +0100 |
commit | 07be778c70149321f785611a9c50125b904b0508 (patch) | |
tree | 6332837992315949870d5c21455ceeef0f9e5490 /fs/ext4 | |
parent | ext4: remove unused parameter biop in ext4_issue_discard() (diff) | |
download | linux-07be778c70149321f785611a9c50125b904b0508.tar.xz linux-07be778c70149321f785611a9c50125b904b0508.zip |
ext4: enable meta_bg only when new desc blocks are needed
This patch addresses an issue observed when resize_inode is disabled
and an online extension of a filesysyem is performed. When a filesystem
is expanded to a size that does not require a addition of a new
descriptor block, the meta_bg feature is being enabled even though no
part of the filesystem uses this layout.
This patch ensures that the meta_bg feature is only enabled if
any of the added block groups utilize meta_bg layout.
Signed-off-by: Srivathsa Dara <srivathsa.d.dara@oracle.com>
Link: https://lore.kernel.org/r/20240227131329.2608466-1-srivathsa.d.dara@oracle.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/resize.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c index 3c0d12382e06..0ba9837d65ca 100644 --- a/fs/ext4/resize.c +++ b/fs/ext4/resize.c @@ -2085,7 +2085,7 @@ retry: } } - if ((!resize_inode && !meta_bg) || n_blocks_count == o_blocks_count) { + if ((!resize_inode && !meta_bg && n_desc_blocks > o_desc_blocks) || n_blocks_count == o_blocks_count) { err = ext4_convert_meta_bg(sb, resize_inode); if (err) goto out; |