Skip to content
This repository has been archived by the owner on May 20, 2023. It is now read-only.

Commit

Permalink
upgpkg: grub 2:2.06.r322.gd9b4638c5-4: work around boot delay (FS#75673)
Browse files Browse the repository at this point in the history
https://bugs.archlinux.org/task/75673
https://lists.gnu.org/archive/html/grub-devel/2022-09/msg00005.html

git-svn-id: file:///srv/repos/svn-packages/svn@454907 eb2447ed-0c53-47e4-bac8-5bc4a241df78
  • Loading branch information
eworm authored and svntogit committed Sep 2, 2022
1 parent fc4b152 commit d876a15
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 3 deletions.
29 changes: 29 additions & 0 deletions trunk/0003-kern-efi-mm-increase-default-heap-size.patch
@@ -0,0 +1,29 @@
From faedc1669cb4862020b572fdd013fbe7f5fb925c Mon Sep 17 00:00:00 2001
From: Christian Hesse <mail@eworm.de>
Date: Fri, 2 Sep 2022 13:37:51 +0200
Subject: [PATCH 1/1] kern/efi/mm: increase default heap size

The new dynamic memory allocation slows down grub startup. Try to
fix / work around by increasing the default heap size.

Signed-off-by: Christian Hesse <mail@eworm.de>
---
grub-core/kern/efi/mm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/grub-core/kern/efi/mm.c b/grub-core/kern/efi/mm.c
index d290c9a76..598e6b6a2 100644
--- a/grub-core/kern/efi/mm.c
+++ b/grub-core/kern/efi/mm.c
@@ -39,7 +39,7 @@
#define MEMORY_MAP_SIZE 0x3000

/* The default heap size for GRUB itself in bytes. */
-#define DEFAULT_HEAP_SIZE 0x100000
+#define DEFAULT_HEAP_SIZE 0x1000000

static void *finish_mmap_buf = 0;
static grub_efi_uintn_t finish_mmap_size = 0;
--
2.37.3

11 changes: 8 additions & 3 deletions trunk/PKGBUILD
Expand Up @@ -22,7 +22,7 @@ _commit='d9b4638c50b16d4722e66d334e2c1a674b4a45cc'
_pkgver=2.06.r322.gd9b4638c5
_unifont_ver='14.0.04'
pkgver=${_pkgver/-/}
pkgrel=3
pkgrel=4
url='https://www.gnu.org/software/grub/'
arch=('x86_64')
license=('GPL3')
Expand Down Expand Up @@ -62,6 +62,7 @@ source=("git+https://git.savannah.gnu.org/git/grub.git#commit=${_commit}"
"https://ftp.gnu.org/gnu/unifont/unifont-${_unifont_ver}/unifont-${_unifont_ver}.bdf.gz"{,.sig}
'0001-00_header-add-GRUB_COLOR_-variables.patch'
'0002-10_linux-detect-archlinux-initramfs.patch'
'0003-kern-efi-mm-increase-default-heap-size.patch'
'grub.default'
'sbat.csv')

Expand All @@ -71,6 +72,7 @@ sha256sums=('SKIP'
'SKIP'
'5dee6628c48eef79812bb9e86ee772068d85e7fcebbd2b2b8d1e19d24eda9dab'
'8488aec30a93e8fe66c23ef8c23aefda39c38389530e9e73ba3fbcc8315d244d'
'5529b5ef0cc735106b39b27329a6d1360323195cc2e75148d323ec0e681ed398'
'c17bf255a41103f6b71a1710afc7e9addaebc578bcf51a48845e227b2f651682'
'98b23d41e223bdc0a6e20bdcb3aa77e642f29b64081b1fd2f575314172fc89df')

Expand Down Expand Up @@ -123,10 +125,13 @@ prepare() {

echo "Patch to enable GRUB_COLOR_* variables in grub-mkconfig..."
## Based on http://lists.gnu.org/archive/html/grub-devel/2012-02/msg00021.html
patch -Np1 -i "${srcdir}/0001-00_header-add-GRUB_COLOR_-variables.patch"
patch -Np1 -i "${srcdir}/0001-00_header-add-GRUB_COLOR_-variables.patch"

echo "Patch to detect of Arch Linux initramfs images by grub-mkconfig..."
patch -Np1 -i "${srcdir}/0002-10_linux-detect-archlinux-initramfs.patch"
patch -Np1 -i "${srcdir}/0002-10_linux-detect-archlinux-initramfs.patch"

echo "Patch to increase default heap size..."
patch -Np1 -i "${srcdir}/0003-kern-efi-mm-increase-default-heap-size.patch"

echo "Fix DejaVuSans.ttf location so that grub-mkfont can create *.pf2 files for starfield theme..."
sed 's|/usr/share/fonts/dejavu|/usr/share/fonts/dejavu /usr/share/fonts/TTF|g' -i "configure.ac"
Expand Down

0 comments on commit d876a15

Please sign in to comment.