summaryrefslogtreecommitdiff
path: root/config/submodule/coreboot
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2024-08-10 17:47:52 +0100
committerLeah Rowe <leah@libreboot.org>2024-08-10 17:53:10 +0100
commit0f7c0aa1c53ee321c45ffaae2da701eaef5a7350 (patch)
treef357c8c7c7c5c9479dbd99dcbf7374aea9eaae17 /config/submodule/coreboot
parent877f5d6aeb6a1a62f09c95cc214c874d057310d6 (diff)
coreboot/default: re-merge coreboot/i945
Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'config/submodule/coreboot')
-rw-r--r--config/submodule/coreboot/i945/R10_20_22.tar.gz/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/binutils-2.37.tar.xz/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/gcc-11.2.0.tar.xz/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/gmp-6.2.1.tar.xz/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/intel-microcode/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/libgfxinit/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/libhwbase/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/module.list11
-rw-r--r--config/submodule/coreboot/i945/mpc-1.3.1.tar.gz/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/mpfr-4.2.0.tar.xz/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/nasm-2.15.05.tar.bz2/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/vboot/module.cfg3
-rw-r--r--config/submodule/coreboot/i945/vboot/patches/0001-extract_vmlinuz.c-Fix-the-bounds-check-on-vmlinuz_he.patch178
13 files changed, 0 insertions, 222 deletions
diff --git a/config/submodule/coreboot/i945/R10_20_22.tar.gz/module.cfg b/config/submodule/coreboot/i945/R10_20_22.tar.gz/module.cfg
deleted file mode 100644
index 3957836f..00000000
--- a/config/submodule/coreboot/i945/R10_20_22.tar.gz/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.mirrorservice.org/sites/libreboot.org/release/misc/acpica/R10_20_22.tar.gz"
-subfile_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/acpica/R10_20_22.tar.gz"
-subhash="2ea1892383dfeae4b0fa089bb68aa397af644775496ce2a2f8f6ac7ebbb13de499c00ddb2608f427354f8e6f6e6d26cdeb162a7061458f8e6181fb2633e7c43e"
diff --git a/config/submodule/coreboot/i945/binutils-2.37.tar.xz/module.cfg b/config/submodule/coreboot/i945/binutils-2.37.tar.xz/module.cfg
deleted file mode 100644
index c0565a0d..00000000
--- a/config/submodule/coreboot/i945/binutils-2.37.tar.xz/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/binutils/binutils-2.37.tar.xz"
-subfile_bkup="https://ftp.nluug.nl/pub/gnu/binutils/binutils-2.37.tar.xz"
-subhash="5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7"
diff --git a/config/submodule/coreboot/i945/gcc-11.2.0.tar.xz/module.cfg b/config/submodule/coreboot/i945/gcc-11.2.0.tar.xz/module.cfg
deleted file mode 100644
index fb925dc8..00000000
--- a/config/submodule/coreboot/i945/gcc-11.2.0.tar.xz/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz"
-subfile_bkup="https://ftp.nluug.nl/pub/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz"
-subhash="d53a0a966230895c54f01aea38696f818817b505f1e2bfa65e508753fcd01b2aedb4a61434f41f3a2ddbbd9f41384b96153c684ded3f0fa97c82758d9de5c7cf"
diff --git a/config/submodule/coreboot/i945/gmp-6.2.1.tar.xz/module.cfg b/config/submodule/coreboot/i945/gmp-6.2.1.tar.xz/module.cfg
deleted file mode 100644
index 2b15cd44..00000000
--- a/config/submodule/coreboot/i945/gmp-6.2.1.tar.xz/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/gmp/gmp-6.2.1.tar.xz"
-subfile_bkup="https://ftp.nluug.nl/pub/gnu/gmp/gmp-6.2.1.tar.xz"
-subhash="c99be0950a1d05a0297d65641dd35b75b74466f7bf03c9e8a99895a3b2f9a0856cd17887738fa51cf7499781b65c049769271cbcb77d057d2e9f1ec52e07dd84"
diff --git a/config/submodule/coreboot/i945/intel-microcode/module.cfg b/config/submodule/coreboot/i945/intel-microcode/module.cfg
deleted file mode 100644
index 6edc2d9f..00000000
--- a/config/submodule/coreboot/i945/intel-microcode/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subrepo="https://review.coreboot.org/intel-microcode.git"
-subrepo_bkup="https://github.com/coreboot/intel-microcode"
-subhash="262f0c97f2fbc3839a59523cc6c6bcf500e2850b"
diff --git a/config/submodule/coreboot/i945/libgfxinit/module.cfg b/config/submodule/coreboot/i945/libgfxinit/module.cfg
deleted file mode 100644
index 50153822..00000000
--- a/config/submodule/coreboot/i945/libgfxinit/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subrepo="https://review.coreboot.org/libgfxinit.git"
-subrepo_bkup="https://github.com/coreboot/libgfxinit"
-subhash="066e52eeaa329d782ccee96265a6a351fc395bf1"
diff --git a/config/submodule/coreboot/i945/libhwbase/module.cfg b/config/submodule/coreboot/i945/libhwbase/module.cfg
deleted file mode 100644
index cd975dcb..00000000
--- a/config/submodule/coreboot/i945/libhwbase/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subrepo="https://review.coreboot.org/libhwbase.git"
-subrepo_bkup="https://github.com/coreboot/libhwbase"
-subhash="8be5a82b85ceb3ee8a1c4fbf36c75a4bfbda8900"
diff --git a/config/submodule/coreboot/i945/module.list b/config/submodule/coreboot/i945/module.list
deleted file mode 100644
index 9440e333..00000000
--- a/config/submodule/coreboot/i945/module.list
+++ /dev/null
@@ -1,11 +0,0 @@
-3rdparty/intel-microcode
-3rdparty/libgfxinit
-3rdparty/libhwbase
-3rdparty/vboot
-util/crossgcc/tarballs/binutils-2.37.tar.xz
-util/crossgcc/tarballs/gcc-11.2.0.tar.xz
-util/crossgcc/tarballs/gmp-6.2.1.tar.xz
-util/crossgcc/tarballs/mpc-1.3.1.tar.gz
-util/crossgcc/tarballs/mpfr-4.2.0.tar.xz
-util/crossgcc/tarballs/nasm-2.15.05.tar.bz2
-util/crossgcc/tarballs/R10_20_22.tar.gz
diff --git a/config/submodule/coreboot/i945/mpc-1.3.1.tar.gz/module.cfg b/config/submodule/coreboot/i945/mpc-1.3.1.tar.gz/module.cfg
deleted file mode 100644
index f98b6444..00000000
--- a/config/submodule/coreboot/i945/mpc-1.3.1.tar.gz/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz"
-subfile_bkup="https://ftp.nluug.nl/pub/gnu/mpc/mpc-1.3.1.tar.gz"
-subhash="4bab4ef6076f8c5dfdc99d810b51108ced61ea2942ba0c1c932d624360a5473df20d32b300fc76f2ba4aa2a97e1f275c9fd494a1ba9f07c4cb2ad7ceaeb1ae97"
diff --git a/config/submodule/coreboot/i945/mpfr-4.2.0.tar.xz/module.cfg b/config/submodule/coreboot/i945/mpfr-4.2.0.tar.xz/module.cfg
deleted file mode 100644
index 618fb3b2..00000000
--- a/config/submodule/coreboot/i945/mpfr-4.2.0.tar.xz/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/mpfr/mpfr-4.2.0.tar.xz"
-subfile_bkup="https://ftp.nluug.nl/pub/gnu/mpfr/mpfr-4.2.0.tar.xz"
-subhash="58e843125884ca58837ae5159cd4092af09e8f21931a2efd19c15de057c9d1dc0753ae95c592e2ce59a727fbc491af776db8b00a055320413cdcf2033b90505c"
diff --git a/config/submodule/coreboot/i945/nasm-2.15.05.tar.bz2/module.cfg b/config/submodule/coreboot/i945/nasm-2.15.05.tar.bz2/module.cfg
deleted file mode 100644
index f60eb55b..00000000
--- a/config/submodule/coreboot/i945/nasm-2.15.05.tar.bz2/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subfile="https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.bz2"
-subfile_bkup="https://coreboot.org/releases/crossgcc-sources/nasm-2.15.05.tar.bz2"
-subhash="e608222eea4970249f0ee1638207b3368fb43b87117cfdb2788b2c7fd6e221f567ee8dd9b910f9e0c4837dc4866606cd9baf5c3266b81188037059b79635ea79"
diff --git a/config/submodule/coreboot/i945/vboot/module.cfg b/config/submodule/coreboot/i945/vboot/module.cfg
deleted file mode 100644
index 352e4222..00000000
--- a/config/submodule/coreboot/i945/vboot/module.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-subrepo="https://review.coreboot.org/vboot.git"
-subrepo_bkup="https://github.com/coreboot/vboot"
-subhash="5b8596cefd1a61252501943f2534323708338732"
diff --git a/config/submodule/coreboot/i945/vboot/patches/0001-extract_vmlinuz.c-Fix-the-bounds-check-on-vmlinuz_he.patch b/config/submodule/coreboot/i945/vboot/patches/0001-extract_vmlinuz.c-Fix-the-bounds-check-on-vmlinuz_he.patch
deleted file mode 100644
index 1ac41de6..00000000
--- a/config/submodule/coreboot/i945/vboot/patches/0001-extract_vmlinuz.c-Fix-the-bounds-check-on-vmlinuz_he.patch
+++ /dev/null
@@ -1,178 +0,0 @@
-From 195f61375aeec9eec16604ec59f6eda2e6058cc1 Mon Sep 17 00:00:00 2001
-From: "Luke T. Shumaker" <lukeshu@lukeshu.com>
-Date: Thu, 30 May 2024 14:08:33 -0600
-Subject: [PATCH 1/1] extract_vmlinuz.c: Fix the bounds check on
- vmlinuz_header_{offset,size}
-
-The check on vmlinuz_header_offset and vmlinuz_header_size is obviously
-wrong:
-
- if (!vmlinuz_header_size ||
- kpart_data + vmlinuz_header_offset + vmlinuz_header_size >
- kpart_data) {
- return 1;
- }
-
-`kpart_data + some_unsigned_values` can obviously never be `> kpart_data`,
-unless something has overflowed! And `vmlinuz_header_offset` hasn't even
-been set yet (besides being initialized to zero)!
-
-GCC will deduce that if the check didn't cause the function to bail, then
-vmlinuz_header_size (a uint32_t) must be "negative"; that is: in the range
-[2GiB,4GiB).
-
-On platforms where size_t is 32-bits, this is *especially* broken.
-memcpy's size argument must be in the range [0,2GiB). Because GCC has
-proved that vmlinuz_header_size is higher than that, it will fail to
-compile:
-
- host/lib/extract_vmlinuz.c:67:9: error: 'memcpy' specified bound between 2147483648 and 4294967295 exceeds maximum object size 2147483647 [-Werror=stringop-overflow=]
-
-So, fix the check.
-
-I can now say that what I suspect the original author meant to write would
-be the following patch, if `vmlinuz_header_offset` were already set:
-
- -kpart_data + vmlinuz_header_offset + vmlinuz_header_size > kpart_data
- +now + vmlinuz_header_offset + vmlinuz_header_size > kpart_size
-
-This hypothesis is supported by `now` not getting incremented by
-`kblob_size` the way it is for the keyblock and preamble sizes.
-
-However, we can also see that even this "corrected" bounds check is
-insufficient: it does not detect the vmlinuz_header overflowing into
-kblob_data.
-
-OK, so let's describe the fix:
-
-Have a `*vmlinuz_header` pointer instead of a
-`uint64_t vmlinuz_header_offset`, to be more similar to all the other
-regions. With this change, the correct check becomes a simple
-
- vmlinuz_header + vmlinuz_header_size > kblob_data
-
-While we're at it, make some changes that could have helped avoid this in
-the first place:
-
- - Add comments.
- - Calculate the vmlinuz_header offset right away, instead of waiting.
- - Go ahead and increment `now` by `kblob_size`, to increase regularity.
-
-Change-Id: I5c03e49070b6dd2e04459566ef7dd129d27736e4
----
- host/lib/extract_vmlinuz.c | 72 +++++++++++++++++++++++++++-----------
- 1 file changed, 51 insertions(+), 21 deletions(-)
-
-diff --git a/host/lib/extract_vmlinuz.c b/host/lib/extract_vmlinuz.c
-index 4ccfcf33..d2c09443 100644
---- a/host/lib/extract_vmlinuz.c
-+++ b/host/lib/extract_vmlinuz.c
-@@ -15,16 +15,44 @@
-
- int ExtractVmlinuz(void *kpart_data, size_t kpart_size,
- void **vmlinuz_out, size_t *vmlinuz_size) {
-+ // We're going to be extracting `vmlinuz_header` and
-+ // `kblob_data`, and returning the concatenation of them.
-+ //
-+ // kpart_data = +-[kpart_size]------------------------------------+
-+ // | |
-+ // keyblock = | +-[keyblock->keyblock_size]-------------------+ |
-+ // | | struct vb2_keyblock keyblock | |
-+ // | | char [] ...data... | |
-+ // | +---------------------------------------------+ |
-+ // | |
-+ // preamble = | +-[preamble->preamble_size]-------------------+ |
-+ // | | struct vb2_kernel_preamble preamble | |
-+ // | | char [] ...data... | |
-+ // | | char [] vmlinuz_header | |
-+ // | | char [] ...data... | |
-+ // | +---------------------------------------------+ |
-+ // | |
-+ // kblob_data= | +-[preamble->body_signature.data_size]--------+ |
-+ // | | char [] ...data... | |
-+ // | +---------------------------------------------+ |
-+ // | |
-+ // +-------------------------------------------------+
-+
- size_t now = 0;
-+ // The 3 sections of kpart_data.
-+ struct vb2_keyblock *keyblock = NULL;
- struct vb2_kernel_preamble *preamble = NULL;
- uint8_t *kblob_data = NULL;
- uint32_t kblob_size = 0;
-+ // vmlinuz_header
-+ uint8_t *vmlinuz_header = NULL;
- uint32_t vmlinuz_header_size = 0;
-- uint64_t vmlinuz_header_address = 0;
-- uint64_t vmlinuz_header_offset = 0;
-+ // The concatenated result.
- void *vmlinuz = NULL;
-
-- struct vb2_keyblock *keyblock = (struct vb2_keyblock *)kpart_data;
-+ // Isolate the 3 sections of kpart_data.
-+
-+ keyblock = (struct vb2_keyblock *)kpart_data;
- now += keyblock->keyblock_size;
- if (now > kpart_size)
- return 1;
-@@ -36,37 +64,39 @@ int ExtractVmlinuz(void *kpart_data, size_t kpart_size,
-
- kblob_data = kpart_data + now;
- kblob_size = preamble->body_signature.data_size;
--
-- if (!kblob_data || (now + kblob_size) > kpart_size)
-+ now += kblob_size;
-+ if (now > kpart_size)
- return 1;
-
-+ // Find `vmlinuz_header` within `preamble`.
-+
- if (preamble->header_version_minor > 0) {
-- vmlinuz_header_address = preamble->vmlinuz_header_address;
-+ // calculate the vmlinuz_header offset from
-+ // the beginning of the kpart_data. The kblob doesn't
-+ // include the body_load_offset, but does include
-+ // the keyblock and preamble sections.
-+ size_t vmlinuz_header_offset =
-+ preamble->vmlinuz_header_address -
-+ preamble->body_load_address +
-+ keyblock->keyblock_size +
-+ preamble->preamble_size;
-+
-+ vmlinuz_header = kpart_data + vmlinuz_header_offset;
- vmlinuz_header_size = preamble->vmlinuz_header_size;
- }
-
-- if (!vmlinuz_header_size ||
-- kpart_data + vmlinuz_header_offset + vmlinuz_header_size >
-- kpart_data) {
-+ if (!vmlinuz_header ||
-+ !vmlinuz_header_size ||
-+ vmlinuz_header + vmlinuz_header_size > kblob_data) {
- return 1;
- }
-
-- // calculate the vmlinuz_header offset from
-- // the beginning of the kpart_data. The kblob doesn't
-- // include the body_load_offset, but does include
-- // the keyblock and preamble sections.
-- vmlinuz_header_offset = vmlinuz_header_address -
-- preamble->body_load_address +
-- keyblock->keyblock_size +
-- preamble->preamble_size;
-+ // Concatenate and return.
-
- vmlinuz = malloc(vmlinuz_header_size + kblob_size);
- if (vmlinuz == NULL)
- return 1;
--
-- memcpy(vmlinuz, kpart_data + vmlinuz_header_offset,
-- vmlinuz_header_size);
--
-+ memcpy(vmlinuz, vmlinuz_header, vmlinuz_header_size);
- memcpy(vmlinuz + vmlinuz_header_size, kblob_data, kblob_size);
-
- *vmlinuz_out = vmlinuz;
---
-2.45.1
-