fiemap calls perform costly delayed extent search affecting
BRW performance, however, in Lustre we don't use delayed
allocation at all. Let's skip this search completely as we did
in RHEL7.
Lustre-change: https://review.whamcloud.com/49007
Lustre-commit:
3dd73b5c5d61a219c702873711055cb1cc80394a
LU-16286 ldiskfs: add ext4_find_delayed_extent patch to more series
Add rhel8.4/ext4-optimize-find_delayed_extent.patch to RHEL 8.7
and RHEL 8.8 ldiskfs patch series.
Test-Parameters: trivial clientdistro=el8.6 serverdistro=el8.6 testlist=sanity
Test-Parameters: trivial clientdistro=el8.7 serverdistro=el8.7 testlist=sanity
Test-Parameters: trivial clientdistro=el8.8 serverdistro=el8.8 testlist=sanity
Change-Id: I2c3562cf5cbdf3c5532e4b79b28a040a995322b7
Signed-off-by: Andrew Perepechko <andrew.perepechko@hpe.com>
HPE-bug-id: LUS-11161
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/50821
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
--- /dev/null
+--- linux-stage.orig/fs/ext4/extents.c 2022-09-05 09:04:31.628122705 -0600
++++ linux-stage/fs/ext4/extents.c 2022-09-06 05:32:57.083369853 -0600
+@@ -5064,6 +5064,13 @@ static int ext4_find_delayed_extent(s
+ struct extent_status es;
+ ext4_lblk_t block, next_del;
+
++ if (!test_opt(inode->i_sb, DELALLOC)) {
++ if (newes->es_pblk == 0)
++ return 0;
++
++ return EXT_MAX_BLOCKS;
++ }
++
+ if (newes->es_pblk == 0) {
+ ext4_es_find_extent_range(inode, &ext4_es_is_delayed,
+ newes->es_lblk,
base/ext4-delayed-iput.patch
rhel8.5/ext4-filename-encode.patch
rhel8/ext4-old_ea_inodes_handling_fix.patch
+rhel8.4/ext4-optimize-find_delayed_extent.patch
base/ext4-delayed-iput.patch
rhel8.5/ext4-filename-encode.patch
rhel8/ext4-old_ea_inodes_handling_fix.patch
+rhel8.4/ext4-optimize-find_delayed_extent.patch
base/ext4-delayed-iput.patch
rhel8.5/ext4-filename-encode.patch
rhel8/ext4-old_ea_inodes_handling_fix.patch
+rhel8.4/ext4-optimize-find_delayed_extent.patch
base/ext4-delayed-iput.patch
rhel8.7/ext4-filename-encode.patch
rhel8/ext4-old_ea_inodes_handling_fix.patch
+rhel8.4/ext4-optimize-find_delayed_extent.patch
base/ext4-delayed-iput.patch
rhel8.7/ext4-filename-encode.patch
rhel8/ext4-old_ea_inodes_handling_fix.patch
+rhel8.4/ext4-optimize-find_delayed_extent.patch