diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-bsp/grub/files/0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch | 66 | ||||
-rw-r--r-- | meta/recipes-bsp/grub/grub2.inc | 1 |
2 files changed, 67 insertions, 0 deletions
diff --git a/meta/recipes-bsp/grub/files/0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch b/meta/recipes-bsp/grub/files/0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch new file mode 100644 index 0000000000..a44d139375 --- /dev/null +++ b/meta/recipes-bsp/grub/files/0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch | |||
@@ -0,0 +1,66 @@ | |||
1 | It enable the metadata_csum_seed feature by default in e2fsprogs 1.47.0 and | ||
2 | causes grub doesn't work. Backport patch to make grub support this feature. | ||
3 | |||
4 | Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/grub.git/commit/?id=7fd5fef] | ||
5 | |||
6 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
7 | |||
8 | From 7fd5feff97c4b1f446f8fcf6d37aca0c64e7c763 Mon Sep 17 00:00:00 2001 | ||
9 | From: Javier Martinez Canillas <javierm@redhat.com> | ||
10 | Date: Fri, 11 Jun 2021 21:36:16 +0200 | ||
11 | Subject: [PATCH] fs/ext2: Ignore checksum seed incompat feature | ||
12 | |||
13 | This incompat feature is used to denote that the filesystem stored its | ||
14 | metadata checksum seed in the superblock. This is used to allow tune2fs | ||
15 | changing the UUID on a mounted metdata_csum filesystem without having | ||
16 | to rewrite all the disk metadata. However, the GRUB doesn't use the | ||
17 | metadata checksum at all. So, it can just ignore this feature if it | ||
18 | is enabled. This is consistent with the GRUB filesystem code in general | ||
19 | which just does a best effort to access the filesystem's data. | ||
20 | |||
21 | The checksum seed incompat feature has to be removed from the ignore | ||
22 | list if the support for metadata checksum verification is added to the | ||
23 | GRUB ext2 driver later. | ||
24 | |||
25 | Suggested-by: Eric Sandeen <esandeen@redhat.com> | ||
26 | Suggested-by: Lukas Czerner <lczerner@redhat.com> | ||
27 | Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> | ||
28 | Reviewed-by: Lukas Czerner <lczerner@redhat.com> | ||
29 | Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com> | ||
30 | --- | ||
31 | grub-core/fs/ext2.c | 10 ++++++++-- | ||
32 | 1 file changed, 8 insertions(+), 2 deletions(-) | ||
33 | |||
34 | diff --git a/grub-core/fs/ext2.c b/grub-core/fs/ext2.c | ||
35 | index e7dd78e66..4953a1591 100644 | ||
36 | --- a/grub-core/fs/ext2.c | ||
37 | +++ b/grub-core/fs/ext2.c | ||
38 | @@ -103,6 +103,7 @@ GRUB_MOD_LICENSE ("GPLv3+"); | ||
39 | #define EXT4_FEATURE_INCOMPAT_64BIT 0x0080 | ||
40 | #define EXT4_FEATURE_INCOMPAT_MMP 0x0100 | ||
41 | #define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200 | ||
42 | +#define EXT4_FEATURE_INCOMPAT_CSUM_SEED 0x2000 | ||
43 | #define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000 | ||
44 | |||
45 | /* The set of back-incompatible features this driver DOES support. Add (OR) | ||
46 | @@ -123,10 +124,15 @@ GRUB_MOD_LICENSE ("GPLv3+"); | ||
47 | * mmp: Not really back-incompatible - was added as such to | ||
48 | * avoid multiple read-write mounts. Safe to ignore for this | ||
49 | * RO driver. | ||
50 | + * checksum seed: Not really back-incompatible - was added to allow tools | ||
51 | + * such as tune2fs to change the UUID on a mounted metadata | ||
52 | + * checksummed filesystem. Safe to ignore for now since the | ||
53 | + * driver doesn't support checksum verification. However, it | ||
54 | + * has to be removed from this list if the support is added later. | ||
55 | */ | ||
56 | #define EXT2_DRIVER_IGNORED_INCOMPAT ( EXT3_FEATURE_INCOMPAT_RECOVER \ | ||
57 | - | EXT4_FEATURE_INCOMPAT_MMP) | ||
58 | - | ||
59 | + | EXT4_FEATURE_INCOMPAT_MMP \ | ||
60 | + | EXT4_FEATURE_INCOMPAT_CSUM_SEED) | ||
61 | |||
62 | #define EXT3_JOURNAL_MAGIC_NUMBER 0xc03b3998U | ||
63 | |||
64 | -- | ||
65 | 2.34.1 | ||
66 | |||
diff --git a/meta/recipes-bsp/grub/grub2.inc b/meta/recipes-bsp/grub/grub2.inc index b92cbc2654..58b215d79c 100644 --- a/meta/recipes-bsp/grub/grub2.inc +++ b/meta/recipes-bsp/grub/grub2.inc | |||
@@ -41,6 +41,7 @@ SRC_URI = "${GNU_MIRROR}/grub/grub-${PV}.tar.gz \ | |||
41 | file://CVE-2022-2601.patch \ | 41 | file://CVE-2022-2601.patch \ |
42 | file://CVE-2022-3775.patch \ | 42 | file://CVE-2022-3775.patch \ |
43 | file://0001-risc-v-Handle-R_RISCV_CALL_PLT-reloc.patch \ | 43 | file://0001-risc-v-Handle-R_RISCV_CALL_PLT-reloc.patch \ |
44 | file://0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch \ | ||
44 | " | 45 | " |
45 | 46 | ||
46 | SRC_URI[sha256sum] = "23b64b4c741569f9426ed2e3d0e6780796fca081bee4c99f62aa3f53ae803f5f" | 47 | SRC_URI[sha256sum] = "23b64b4c741569f9426ed2e3d0e6780796fca081bee4c99f62aa3f53ae803f5f" |