From fd1e9fdd653fbd874133cbfd0a7885bd1fb2916f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=82=96=E5=9C=A8?= Date: Sat, 11 May 2024 01:46:46 +0000 Subject: [PATCH] Revert " Handle non-continuous data blocks in" This reverts commit 242fa05f2412202b241bbea01dc2bd69214b2e33. --- ...nuous-data-blocks-in-directory-exten.patch | 41 ------------------- grub.patches | 1 - grub2.spec | 12 +----- 3 files changed, 1 insertion(+), 53 deletions(-) delete mode 100644 Handle-non-continuous-data-blocks-in-directory-exten.patch diff --git a/Handle-non-continuous-data-blocks-in-directory-exten.patch b/Handle-non-continuous-data-blocks-in-directory-exten.patch deleted file mode 100644 index f2c5c5c..0000000 --- a/Handle-non-continuous-data-blocks-in-directory-exten.patch +++ /dev/null @@ -1,41 +0,0 @@ -From edb3f9c9b1fd510775332e6788dc1a4d4af68666 Mon Sep 17 00:00:00 2001 -From: openEuler Buildteam -Date: Sat, 11 May 2024 09:22:03 +0800 -Subject: [PATCH] Handle non-continuous data blocks in directory extents - ---- - grub-core/fs/xfs.c | 11 +++++++++++ - 1 file changed, 11 insertions(+) - -diff --git a/grub-core/fs/xfs.c b/grub-core/fs/xfs.c -index 1ce5fa4..ed52586 100644 ---- a/grub-core/fs/xfs.c -+++ b/grub-core/fs/xfs.c -@@ -904,6 +904,7 @@ grub_xfs_iterate_dir (grub_fshelp_node_t dir, - - int entries = -1; - char *end = dirblock + dirblk_size; -+ grub_uint32_t magic; - - numread = grub_xfs_read_file (dir, 0, 0, - blk << dirblk_log2, -@@ -914,6 +915,16 @@ grub_xfs_iterate_dir (grub_fshelp_node_t dir, - return 0; - } - -+ /* -+ * If this data block isn't actually part of the extent list then -+ * grub_xfs_read_file() returns a block of zeros. So, if the magic -+ * number field is all zeros then this block should be skipped. -+ */ -+ magic = *(grub_uint32_t *)(void *) dirblock; -+ if (!magic) -+ continue; -+ -+ - /* - * Leaf and tail information are only in the data block if the number - * of extents is 1. --- -2.33.0 - diff --git a/grub.patches b/grub.patches index 76867b6..97ff027 100644 --- a/grub.patches +++ b/grub.patches @@ -227,4 +227,3 @@ Patch226: 0038-Add-grub-get-kernel-settings-and-use-it-in-10_linux.patch Patch227: 0084-grub-editenv-Add-incr-command-to-increment-integer-v.patch Patch228: 0002-Revert-templates-Properly-disable-the-os-prober-by-d.patch Patch229: 0003-Revert-templates-Disable-the-os-prober-by-default.patch -Patch230: Handle-non-continuous-data-blocks-in-directory-exten.patch diff --git a/grub2.spec b/grub2.spec index 2fc2879..96d5b6e 100644 --- a/grub2.spec +++ b/grub2.spec @@ -14,7 +14,7 @@ Name: grub2 Epoch: 1 Version: 2.12 -Release: 10 +Release: 9 Summary: Bootloader with support for Linux, Multiboot and more License: GPLv3+ URL: http://www.gnu.org/software/grub/ @@ -447,16 +447,6 @@ fi %{_datadir}/man/man* %changelog -* Sat May 11 2024 xiaozai - 1:2.12-10 -- Type:bugfix -- CVE:NA -- SUG:NA -- DESC:Handle non-continuous data blocks in directory extents - The directory extent list does not have to be a continuous list of data - blocks. When GRUB tries to read a non-existant member of the list, - grub_xfs_read_file() will return a block of zero'ed memory. Checking for - a zero'ed magic number is sufficient to skip this non-existant data block. - * Tue May 7 2024 zhangqiumiao - 1:2.12-9 - Type:bugfix - CVE:NA