From: Andreas Dilger Date: Wed, 6 Sep 2023 17:15:20 +0000 (+0000) Subject: DDN-4216 revert: LU-16843 ldiskfs: merge extent blocks X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=064f8f594216a3c595e0d8bb9cbf9f264db2239a;p=fs%2Flustre-release.git DDN-4216 revert: LU-16843 ldiskfs: merge extent blocks This reverts commit ce3a417f2403b421282c825d96cb5297852a80de. This is potentially causing ldiskfs issues and isn't widely hit. Test-Parameters: trivial Signed-off-by: Andreas Dilger Change-Id: I23040745a355a60ec205a0996374859695a7db55 Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/52298 Tested-by: jenkins Tested-by: Maloo --- diff --git a/ldiskfs/kernel_patches/patches/rhel7.9/ext4-ext-merge.patch b/ldiskfs/kernel_patches/patches/rhel7.9/ext4-ext-merge.patch deleted file mode 100644 index b59d2c8..0000000 --- a/ldiskfs/kernel_patches/patches/rhel7.9/ext4-ext-merge.patch +++ /dev/null @@ -1,219 +0,0 @@ -Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/extents.c -=================================================================== ---- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/extents.c -+++ linux-4.18.0-80.1.2.el8_0/fs/ext4/extents.c -@@ -1888,7 +1944,7 @@ static void ext4_ext_try_to_merge_up( - * This function tries to merge the @ex extent to neighbours in the tree, then - * tries to collapse the extent tree into the inode. - */ --static void ext4_ext_try_to_merge(handle_t *handle, -+static int ext4_ext_try_to_merge(handle_t *handle, - struct inode *inode, - struct ext4_ext_path *path, - struct ext4_extent *ex) -@@ -1905,9 +1961,177 @@ static void ext4_ext_try_to_merge(han - merge_done = ext4_ext_try_to_merge_right(inode, path, ex - 1); - - if (!merge_done) -- (void) ext4_ext_try_to_merge_right(inode, path, ex); -+ merge_done = ext4_ext_try_to_merge_right(inode, path, ex); - - ext4_ext_try_to_merge_up(handle, inode, path); -+ -+ return merge_done; -+} -+ -+/* -+ * This function tries to merge blocks from @path into @npath -+ */ -+static int ext4_ext_merge_blocks(handle_t *handle, -+ struct inode *inode, -+ struct ext4_ext_path *path, -+ struct ext4_ext_path *npath) -+{ -+ unsigned int depth = ext_depth(inode); -+ int used, nused, free, i, k, err; -+ ext4_lblk_t next; -+ -+ if (path[depth].p_hdr == npath[depth].p_hdr) -+ return 0; -+ -+ used = le16_to_cpu(path[depth].p_hdr->eh_entries); -+ free = le16_to_cpu(npath[depth].p_hdr->eh_max) - -+ le16_to_cpu(npath[depth].p_hdr->eh_entries); -+ if (free < used) -+ return 0; -+ -+ err = ext4_ext_get_access(handle, inode, path + depth); -+ if (err) -+ return err; -+ err = ext4_ext_get_access(handle, inode, npath + depth); -+ if (err) -+ return err; -+ -+ /* move entries from the current leave to the next one */ -+ nused = le16_to_cpu(npath[depth].p_hdr->eh_entries); -+ memmove(EXT_FIRST_EXTENT(npath[depth].p_hdr) + used, -+ EXT_FIRST_EXTENT(npath[depth].p_hdr), -+ nused * sizeof(struct ext4_extent)); -+ memcpy(EXT_FIRST_EXTENT(npath[depth].p_hdr), -+ EXT_FIRST_EXTENT(path[depth].p_hdr), -+ used * sizeof(struct ext4_extent)); -+ le16_add_cpu(&npath[depth].p_hdr->eh_entries, used); -+ le16_add_cpu(&path[depth].p_hdr->eh_entries, -used); -+ ext4_ext_try_to_merge_right(inode, npath, -+ EXT_FIRST_EXTENT(npath[depth].p_hdr)); -+ -+ err = ext4_ext_dirty(handle, inode, path + depth); -+ if (err) -+ return err; -+ err = ext4_ext_dirty(handle, inode, npath + depth); -+ if (err) -+ return err; -+ -+ /* otherwise the index won't get corrected */ -+ npath[depth].p_ext = EXT_FIRST_EXTENT(npath[depth].p_hdr); -+ err = ext4_ext_correct_indexes(handle, inode, npath); -+ if (err) -+ return err; -+ -+ for (i = depth - 1; i >= 0; i--) { -+ -+ next = ext4_idx_pblock(path[i].p_idx); -+ ext4_free_blocks(handle, inode, NULL, next, 1, -+ EXT4_FREE_BLOCKS_METADATA | -+ EXT4_FREE_BLOCKS_FORGET); -+ err = ext4_ext_get_access(handle, inode, path + i); -+ if (err) -+ return err; -+ le16_add_cpu(&path[i].p_hdr->eh_entries, -1); -+ if (le16_to_cpu(path[i].p_hdr->eh_entries) == 0) { -+ /* whole index block collapsed, go up */ -+ continue; -+ } -+ /* remove index pointer */ -+ used = EXT_LAST_INDEX(path[i].p_hdr) - path[i].p_idx + 1; -+ memmove(path[i].p_idx, path[i].p_idx + 1, -+ used * sizeof(struct ext4_extent_idx)); -+ -+ err = ext4_ext_dirty(handle, inode, path + i); -+ if (err) -+ return err; -+ -+ if (path[i].p_hdr == npath[i].p_hdr) -+ break; -+ -+ /* try to move index pointers */ -+ used = le16_to_cpu(path[i].p_hdr->eh_entries); -+ free = le16_to_cpu(npath[i].p_hdr->eh_max) - -+ le16_to_cpu(npath[i].p_hdr->eh_entries); -+ if (used > free) -+ break; -+ err = ext4_ext_get_access(handle, inode, npath + i); -+ if (err) -+ return err; -+ memmove(EXT_FIRST_INDEX(npath[i].p_hdr) + used, -+ EXT_FIRST_INDEX(npath[i].p_hdr), -+ npath[i].p_hdr->eh_entries * sizeof(struct ext4_extent_idx)); -+ memcpy(EXT_FIRST_INDEX(npath[i].p_hdr), EXT_FIRST_INDEX(path[i].p_hdr), -+ used * sizeof(struct ext4_extent_idx)); -+ le16_add_cpu(&path[i].p_hdr->eh_entries, -used); -+ le16_add_cpu(&npath[i].p_hdr->eh_entries, used); -+ err = ext4_ext_dirty(handle, inode, path + i); -+ if (err) -+ return err; -+ err = ext4_ext_dirty(handle, inode, npath + i); -+ if (err) -+ return err; -+ -+ /* correct index above */ -+ for (k = i; k > 0; k--) { -+ err = ext4_ext_get_access(handle, inode, npath + k - 1); -+ if (err) -+ return err; -+ npath[k-1].p_idx->ei_block = -+ EXT_FIRST_INDEX(npath[k].p_hdr)->ei_block; -+ err = ext4_ext_dirty(handle, inode, npath + k - 1); -+ if (err) -+ return err; -+ } -+ } -+ -+ /* -+ * TODO: given we've got two paths, it should be possible to -+ * collapse those two blocks into the root one in some cases -+ */ -+ return 1; -+} -+ -+static int ext4_ext_try_to_merge_blocks(handle_t *handle, -+ struct inode *inode, -+ struct ext4_ext_path *path) -+{ -+ struct ext4_ext_path *npath = NULL; -+ unsigned int depth = ext_depth(inode); -+ ext4_lblk_t next; -+ int used, rc = 0; -+ -+ if (depth == 0) -+ return 0; -+ -+ used = le16_to_cpu(path[depth].p_hdr->eh_entries); -+ /* XXX: think of a good value here */ -+ if (used > 100) -+ return 0; -+ -+ /* try to merge to the next block */ -+ next = ext4_ext_next_leaf_block(path); -+ if (next == EXT_MAX_BLOCKS) -+ return 0; -+ npath = ext4_ext_find_extent(inode, next, NULL, 0); -+ if (IS_ERR(npath)) -+ return 0; -+ rc = ext4_ext_merge_blocks(handle, inode, path, npath); -+ ext4_ext_drop_refs(npath); -+ kfree(npath); -+ if (rc) -+ return rc > 0 ? 0 : rc; -+ -+ /* try to merge with the previous block */ -+ if (EXT_FIRST_EXTENT(path[depth].p_hdr)->ee_block == 0) -+ return 0; -+ next = EXT_FIRST_EXTENT(path[depth].p_hdr)->ee_block - 1; -+ npath = ext4_ext_find_extent(inode, next, NULL, 0); -+ if (IS_ERR(npath)) -+ return 0; -+ rc = ext4_ext_merge_blocks(handle, inode, npath, path); -+ ext4_ext_drop_refs(npath); -+ kfree(npath); -+ return rc > 0 ? 0 : rc; - } - - /* -@@ -1979,6 +2205,7 @@ int ext4_ext_insert_extent(handle_t * - int depth, len, err; - ext4_lblk_t next; - int mb_flags = 0, unwritten; -+ int merged = 0; - - if (gb_flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE) - mb_flags |= EXT4_MB_DELALLOC_RESERVED; -@@ -2172,8 +2399,7 @@ has_space: - merge: - /* try to merge extents */ - if (!(gb_flags & EXT4_GET_BLOCKS_PRE_IO)) -- ext4_ext_try_to_merge(handle, inode, path, nearex); -- -+ merged = ext4_ext_try_to_merge(handle, inode, path, nearex); - - /* time to correct all indexes above */ - err = ext4_ext_correct_indexes(handle, inode, path); -@@ -2181,6 +2407,8 @@ merge: - goto cleanup; - - err = ext4_ext_dirty(handle, inode, path + path->p_depth); -+ if (!err && merged) -+ err = ext4_ext_try_to_merge_blocks(handle, inode, path); - - cleanup: - ext4_ext_drop_refs(npath); diff --git a/ldiskfs/kernel_patches/patches/rhel8/ext4-ext-merge.patch b/ldiskfs/kernel_patches/patches/rhel8/ext4-ext-merge.patch deleted file mode 100644 index 3d70d6b..0000000 --- a/ldiskfs/kernel_patches/patches/rhel8/ext4-ext-merge.patch +++ /dev/null @@ -1,219 +0,0 @@ -Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/extents.c -=================================================================== ---- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/extents.c -+++ linux-4.18.0-80.1.2.el8_0/fs/ext4/extents.c -@@ -1888,7 +1944,7 @@ static void ext4_ext_try_to_merge_up( - * This function tries to merge the @ex extent to neighbours in the tree, then - * tries to collapse the extent tree into the inode. - */ --static void ext4_ext_try_to_merge(handle_t *handle, -+static int ext4_ext_try_to_merge(handle_t *handle, - struct inode *inode, - struct ext4_ext_path *path, - struct ext4_extent *ex) -@@ -1905,9 +1961,177 @@ static void ext4_ext_try_to_merge(han - merge_done = ext4_ext_try_to_merge_right(inode, path, ex - 1); - - if (!merge_done) -- (void) ext4_ext_try_to_merge_right(inode, path, ex); -+ merge_done = ext4_ext_try_to_merge_right(inode, path, ex); - - ext4_ext_try_to_merge_up(handle, inode, path); -+ -+ return merge_done; -+} -+ -+/* -+ * This function tries to merge blocks from @path into @npath -+ */ -+static int ext4_ext_merge_blocks(handle_t *handle, -+ struct inode *inode, -+ struct ext4_ext_path *path, -+ struct ext4_ext_path *npath) -+{ -+ unsigned int depth = ext_depth(inode); -+ int used, nused, free, i, k, err; -+ ext4_lblk_t next; -+ -+ if (path[depth].p_hdr == npath[depth].p_hdr) -+ return 0; -+ -+ used = le16_to_cpu(path[depth].p_hdr->eh_entries); -+ free = le16_to_cpu(npath[depth].p_hdr->eh_max) - -+ le16_to_cpu(npath[depth].p_hdr->eh_entries); -+ if (free < used) -+ return 0; -+ -+ err = ext4_ext_get_access(handle, inode, path + depth); -+ if (err) -+ return err; -+ err = ext4_ext_get_access(handle, inode, npath + depth); -+ if (err) -+ return err; -+ -+ /* move entries from the current leave to the next one */ -+ nused = le16_to_cpu(npath[depth].p_hdr->eh_entries); -+ memmove(EXT_FIRST_EXTENT(npath[depth].p_hdr) + used, -+ EXT_FIRST_EXTENT(npath[depth].p_hdr), -+ nused * sizeof(struct ext4_extent)); -+ memcpy(EXT_FIRST_EXTENT(npath[depth].p_hdr), -+ EXT_FIRST_EXTENT(path[depth].p_hdr), -+ used * sizeof(struct ext4_extent)); -+ le16_add_cpu(&npath[depth].p_hdr->eh_entries, used); -+ le16_add_cpu(&path[depth].p_hdr->eh_entries, -used); -+ ext4_ext_try_to_merge_right(inode, npath, -+ EXT_FIRST_EXTENT(npath[depth].p_hdr)); -+ -+ err = ext4_ext_dirty(handle, inode, path + depth); -+ if (err) -+ return err; -+ err = ext4_ext_dirty(handle, inode, npath + depth); -+ if (err) -+ return err; -+ -+ /* otherwise the index won't get corrected */ -+ npath[depth].p_ext = EXT_FIRST_EXTENT(npath[depth].p_hdr); -+ err = ext4_ext_correct_indexes(handle, inode, npath); -+ if (err) -+ return err; -+ -+ for (i = depth - 1; i >= 0; i--) { -+ -+ next = ext4_idx_pblock(path[i].p_idx); -+ ext4_free_blocks(handle, inode, NULL, next, 1, -+ EXT4_FREE_BLOCKS_METADATA | -+ EXT4_FREE_BLOCKS_FORGET); -+ err = ext4_ext_get_access(handle, inode, path + i); -+ if (err) -+ return err; -+ le16_add_cpu(&path[i].p_hdr->eh_entries, -1); -+ if (le16_to_cpu(path[i].p_hdr->eh_entries) == 0) { -+ /* whole index block collapsed, go up */ -+ continue; -+ } -+ /* remove index pointer */ -+ used = EXT_LAST_INDEX(path[i].p_hdr) - path[i].p_idx + 1; -+ memmove(path[i].p_idx, path[i].p_idx + 1, -+ used * sizeof(struct ext4_extent_idx)); -+ -+ err = ext4_ext_dirty(handle, inode, path + i); -+ if (err) -+ return err; -+ -+ if (path[i].p_hdr == npath[i].p_hdr) -+ break; -+ -+ /* try to move index pointers */ -+ used = le16_to_cpu(path[i].p_hdr->eh_entries); -+ free = le16_to_cpu(npath[i].p_hdr->eh_max) - -+ le16_to_cpu(npath[i].p_hdr->eh_entries); -+ if (used > free) -+ break; -+ err = ext4_ext_get_access(handle, inode, npath + i); -+ if (err) -+ return err; -+ memmove(EXT_FIRST_INDEX(npath[i].p_hdr) + used, -+ EXT_FIRST_INDEX(npath[i].p_hdr), -+ npath[i].p_hdr->eh_entries * sizeof(struct ext4_extent_idx)); -+ memcpy(EXT_FIRST_INDEX(npath[i].p_hdr), EXT_FIRST_INDEX(path[i].p_hdr), -+ used * sizeof(struct ext4_extent_idx)); -+ le16_add_cpu(&path[i].p_hdr->eh_entries, -used); -+ le16_add_cpu(&npath[i].p_hdr->eh_entries, used); -+ err = ext4_ext_dirty(handle, inode, path + i); -+ if (err) -+ return err; -+ err = ext4_ext_dirty(handle, inode, npath + i); -+ if (err) -+ return err; -+ -+ /* correct index above */ -+ for (k = i; k > 0; k--) { -+ err = ext4_ext_get_access(handle, inode, npath + k - 1); -+ if (err) -+ return err; -+ npath[k-1].p_idx->ei_block = -+ EXT_FIRST_INDEX(npath[k].p_hdr)->ei_block; -+ err = ext4_ext_dirty(handle, inode, npath + k - 1); -+ if (err) -+ return err; -+ } -+ } -+ -+ /* -+ * TODO: given we've got two paths, it should be possible to -+ * collapse those two blocks into the root one in some cases -+ */ -+ return 1; -+} -+ -+static int ext4_ext_try_to_merge_blocks(handle_t *handle, -+ struct inode *inode, -+ struct ext4_ext_path *path) -+{ -+ struct ext4_ext_path *npath = NULL; -+ unsigned int depth = ext_depth(inode); -+ ext4_lblk_t next; -+ int used, rc = 0; -+ -+ if (depth == 0) -+ return 0; -+ -+ used = le16_to_cpu(path[depth].p_hdr->eh_entries); -+ /* XXX: think of a good value here */ -+ if (used > 100) -+ return 0; -+ -+ /* try to merge to the next block */ -+ next = ext4_ext_next_leaf_block(path); -+ if (next == EXT_MAX_BLOCKS) -+ return 0; -+ npath = ext4_find_extent(inode, next, NULL, 0); -+ if (IS_ERR(npath)) -+ return 0; -+ rc = ext4_ext_merge_blocks(handle, inode, path, npath); -+ ext4_ext_drop_refs(npath); -+ kfree(npath); -+ if (rc) -+ return rc > 0 ? 0 : rc; -+ -+ /* try to merge with the previous block */ -+ if (EXT_FIRST_EXTENT(path[depth].p_hdr)->ee_block == 0) -+ return 0; -+ next = EXT_FIRST_EXTENT(path[depth].p_hdr)->ee_block - 1; -+ npath = ext4_find_extent(inode, next, NULL, 0); -+ if (IS_ERR(npath)) -+ return 0; -+ rc = ext4_ext_merge_blocks(handle, inode, npath, path); -+ ext4_ext_drop_refs(npath); -+ kfree(npath); -+ return rc > 0 ? 0 : rc; - } - - /* -@@ -1979,6 +2205,7 @@ int ext4_ext_insert_extent(handle_t * - int depth, len, err; - ext4_lblk_t next; - int mb_flags = 0, unwritten; -+ int merged = 0; - - if (gb_flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE) - mb_flags |= EXT4_MB_DELALLOC_RESERVED; -@@ -2172,8 +2399,7 @@ has_space: - merge: - /* try to merge extents */ - if (!(gb_flags & EXT4_GET_BLOCKS_PRE_IO)) -- ext4_ext_try_to_merge(handle, inode, path, nearex); -- -+ merged = ext4_ext_try_to_merge(handle, inode, path, nearex); - - /* time to correct all indexes above */ - err = ext4_ext_correct_indexes(handle, inode, path); -@@ -2181,6 +2407,8 @@ merge: - goto cleanup; - - err = ext4_ext_dirty(handle, inode, path + path->p_depth); -+ if (!err && merged) -+ err = ext4_ext_try_to_merge_blocks(handle, inode, path); - - cleanup: - ext4_ext_drop_refs(npath); diff --git a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.6.series b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.6.series index eb17732..5347bf1 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.6.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.6.series @@ -54,4 +54,3 @@ rhel7.9/ext4-enc-flag.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch rhel7.6/ext4-projid-xattrs.patch rhel7.9/ext4-filename-encode.patch -rhel7.9/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.7.series b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.7.series index 6cdfa29..e2f62b7 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.7.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.7.series @@ -54,4 +54,3 @@ rhel7.9/ext4-enc-flag.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch rhel7.6/ext4-projid-xattrs.patch rhel7.9/ext4-filename-encode.patch -rhel7.9/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.8.series b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.8.series index 6fa0dc3..696fd84 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.8.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.8.series @@ -46,4 +46,3 @@ rhel7.9/ext4-enc-flag.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch rhel7.6/ext4-projid-xattrs.patch rhel7.9/ext4-filename-encode.patch -rhel7.9/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.9.series b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.9.series index ee89365..fcef984 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.9.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-3.10-rhel7.9.series @@ -46,4 +46,3 @@ rhel7.9/ext4-enc-flag.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch rhel7.6/ext4-projid-xattrs.patch rhel7.9/ext4-filename-encode.patch -rhel7.9/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15-22.series b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15-22.series index 42d8bcf..e8a8420 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15-22.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15-22.series @@ -28,4 +28,3 @@ suse15/ext4-export-mb-stream-allocator-variables.patch base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15.series b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15.series index 088df6e..c731d36 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15.series @@ -28,4 +28,3 @@ suse15/ext4-export-mb-stream-allocator-variables.patch base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1-7.series b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1-7.series index 42d8bcf..e8a8420 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1-7.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1-7.series @@ -28,4 +28,3 @@ suse15/ext4-export-mb-stream-allocator-variables.patch base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1.series b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1.series index 4ccd79d..a51161a 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.12-sles15sp1.series @@ -28,4 +28,3 @@ suse15/ext4-export-mb-stream-allocator-variables.patch base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-20-ubuntu18.series b/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-20-ubuntu18.series index e0ca387..f345f82 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-20-ubuntu18.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-20-ubuntu18.series @@ -25,4 +25,3 @@ ubuntu18/ext4-include-terminating-u32-in-size-of-xattr-entries-when-expanding-in base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel7.7/ext4-ialloc-uid-gid-and-pass-owner-down.patch ubuntu18/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-24-ubuntu18.series b/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-24-ubuntu18.series index 0794695..2350afa 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-24-ubuntu18.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.15.0-24-ubuntu18.series @@ -26,4 +26,3 @@ suse15/ext4-export-mb-stream-allocator-variables.patch base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel8/ext4-ialloc-uid-gid-and-pass-owner-down.patch ubuntu18/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.1.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.1.series index aa524f0..0dd1def 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.1.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.1.series @@ -32,4 +32,3 @@ base/ext4-projid-xattrs.patch rhel8/ext4-filename-encode.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.2.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.2.series index f040c6a..bd7a262 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.2.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.2.series @@ -32,4 +32,3 @@ base/ext4-projid-xattrs.patch rhel8/ext4-filename-encode.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.3.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.3.series index 3a31aa0..013f78a 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.3.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.3.series @@ -32,4 +32,3 @@ base/ext4-projid-xattrs.patch rhel8/ext4-filename-encode.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.4.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.4.series index 9af2370..4deacc3 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.4.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.4.series @@ -34,4 +34,3 @@ rhel8/ext4-old_ea_inodes_handling_fix.patch rhel8.4/ext4-optimize-find_delayed_extent.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.5.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.5.series index 7f0e3ec..099f28a 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.5.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.5.series @@ -35,4 +35,3 @@ rhel8/ext4-old_ea_inodes_handling_fix.patch rhel8.4/ext4-optimize-find_delayed_extent.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.6.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.6.series index 7f0e3ec..099f28a 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.6.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.6.series @@ -35,4 +35,3 @@ rhel8/ext4-old_ea_inodes_handling_fix.patch rhel8.4/ext4-optimize-find_delayed_extent.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.7.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.7.series index defd515..ddcfad4 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.7.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.7.series @@ -35,4 +35,3 @@ rhel8/ext4-add-periodic-superblock-update.patch rhel8.7/ext4-filename-encode.patch rhel8/ext4-old_ea_inodes_handling_fix.patch rhel8.4/ext4-optimize-find_delayed_extent.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.series b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.series index 4e3b990..9b45976 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-4.18-rhel8.series @@ -34,4 +34,3 @@ ubuntu18/ext4-projid-xattrs.patch rhel8/ext4-filename-encode.patch base/ext4-delayed-iput.patch rhel8/ext4-add-periodic-superblock-update.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-5.0.0-13-ubuntu19.series b/ldiskfs/kernel_patches/series/ldiskfs-5.0.0-13-ubuntu19.series index b13c9e0..b3e7c73 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-5.0.0-13-ubuntu19.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-5.0.0-13-ubuntu19.series @@ -26,4 +26,3 @@ rhel8/ext4-simple-blockalloc.patch base/ext4-no-max-dir-size-limit-for-iam-objects.patch rhel8/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-42-ubuntu20.series b/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-42-ubuntu20.series index 594d266..f5cb25c 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-42-ubuntu20.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-42-ubuntu20.series @@ -30,4 +30,3 @@ linux-5.4/ext4-enc-flag.patch rhel8/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch base/ext4-delayed-iput.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-66-ubuntu20.series b/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-66-ubuntu20.series index 0460cf4..0d47ecf 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-66-ubuntu20.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-66-ubuntu20.series @@ -30,4 +30,3 @@ linux-5.4/ext4-enc-flag.patch rhel8/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch base/ext4-delayed-iput.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-ml.series b/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-ml.series index 1d96454..a370d0d 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-ml.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-5.4.0-ml.series @@ -30,4 +30,3 @@ linux-5.4/ext4-enc-flag.patch rhel8/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch base/ext4-delayed-iput.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-5.4.21-ml.series b/ldiskfs/kernel_patches/series/ldiskfs-5.4.21-ml.series index 594d266..f5cb25c 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-5.4.21-ml.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-5.4.21-ml.series @@ -30,4 +30,3 @@ linux-5.4/ext4-enc-flag.patch rhel8/ext4-ialloc-uid-gid-and-pass-owner-down.patch base/ext4-projid-xattrs.patch base/ext4-delayed-iput.patch -rhel8/ext4-ext-merge.patch diff --git a/ldiskfs/kernel_patches/series/ldiskfs-5.8.0-ml.series b/ldiskfs/kernel_patches/series/ldiskfs-5.8.0-ml.series index 8f7ef27..579d789 100644 --- a/ldiskfs/kernel_patches/series/ldiskfs-5.8.0-ml.series +++ b/ldiskfs/kernel_patches/series/ldiskfs-5.8.0-ml.series @@ -28,4 +28,3 @@ linux-5.8/ext4-simple-blockalloc.patch linux-5.8/ext4-enc-flag.patch linux-5.8/ext4-no-max-dir-size-limit-for-iam-objects.patch base/ext4-projid-xattrs.patch -rhel8/ext4-ext-merge.patch