diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-22 17:10:23 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-24 09:11:51 +0300 |
commit | 0ce15000dee0ecd6f235f925a327803e2ef489c6 (patch) | |
tree | d3182971e719b7a159b578aacde76364c7143e8d | |
parent | 32313c11bdc8a02c577abaf865be3664ab30410a (diff) | |
download | linux-0ce15000dee0ecd6f235f925a327803e2ef489c6.tar.xz |
Revert "ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline"
This reverts commit 1ed1eef0551bebee8e56973ccd0900e3578edfb7 which is
commit 131294c35ed6f777bd4e79d42af13b5c41bf2775 upstream.
Eric writes:
I recommend not backporting this patch or the other three
patches apparently intended to support it to 4.19 stable. All
these patches are related to ext4's bigalloc feature, which was
experimental as of 4.19 (expressly noted by contemporary
versions of e2fsprogs) and also suffered from a number of bugs.
A significant number of additional patches that were applied to
5.X kernels over time would have to be backported to 4.19 for
the patch below to function correctly. It's really not worth
doing that given bigalloc's experimental status as of 4.19 and
the very rare combination of the bigalloc and inline features.
Link: https://lore.kernel.org/r/Y8mAe1SlcLD5fykg@debian-BULLSEYE-live-builder-AMD64
Cc: Eric Whitney <enwlinux@gmail.com>
Cc: Theodore Ts'o <tytso@mit.edu>
Cc: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | fs/ext4/extents.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index 1ad4c8eb82c1..0bb772cd7f88 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c @@ -5984,14 +5984,6 @@ int ext4_clu_mapped(struct inode *inode, ext4_lblk_t lclu) struct ext4_extent *extent; ext4_lblk_t first_lblk, first_lclu, last_lclu; - /* - * if data can be stored inline, the logical cluster isn't - * mapped - no physical clusters have been allocated, and the - * file has no extents - */ - if (ext4_test_inode_state(inode, EXT4_STATE_MAY_INLINE_DATA)) - return 0; - /* search for the extent closest to the first block in the cluster */ path = ext4_find_extent(inode, EXT4_C2B(sbi, lclu), NULL, 0); if (IS_ERR(path)) { |