Github messages for voidlinux
 help / color / mirror / Atom feed
From: kwshi <kwshi@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] gummiboot: WaitForKeyEx hanging patch
Date: Thu, 10 Dec 2020 05:27:00 +0100	[thread overview]
Message-ID: <20201210042700.UOkwvrNfUmoq87M25vupjmRNGLz3TnlrAIU0Qk_0juM@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-27058@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 847 bytes --]

There is an updated pull request by kwshi against master on the void-packages repository

https://github.com/kwshi/void-packages gummiboot-fix-waitforkey
https://github.com/void-linux/void-packages/pull/27058

gummiboot: WaitForKeyEx hanging patch
I recently ran into a Gummiboot bug where pressing any key on boot causes the
boot menu to respond to that key (e.g. moves the highlighted entry if I press
down-arrow) but subsequently freeze (booting proceeds without issue if no key
is pressed andthe auto-timeout passes).  

I found a virtually identical issue on gummiboot's "parent/fork" project
systemd-boot (systemd/systemd#3632), with an alleged fix that has been merged
(systemd/systemd#3735), so I made this PR to backport that patch to gummiboot.


A patch file from https://github.com/void-linux/void-packages/pull/27058.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gummiboot-fix-waitforkey-27058.patch --]
[-- Type: text/x-diff, Size: 2170 bytes --]

From ebd630e18be51857031215efb0ac038e4e106d9a Mon Sep 17 00:00:00 2001
From: Kye Shi <shi.kye@gmail.com>
Date: Wed, 9 Dec 2020 16:03:36 -0800
Subject: [PATCH] gummiboot: WaitForKeyEx hanging workaround (see
 systemd/systemd#3735)

---
 .../gummiboot/patches/fix-waitforkey.patch    | 22 +++++++++++++++++++
 srcpkgs/gummiboot/template                    |  2 +-
 2 files changed, 23 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gummiboot/patches/fix-waitforkey.patch

diff --git a/srcpkgs/gummiboot/patches/fix-waitforkey.patch b/srcpkgs/gummiboot/patches/fix-waitforkey.patch
new file mode 100644
index 00000000000..3f7af8bfd12
--- /dev/null
+++ b/srcpkgs/gummiboot/patches/fix-waitforkey.patch
@@ -0,0 +1,22 @@
+This patch fixes an issue where pressing any key within the gummiboot
+menucauses it to hang (though no issue occurs if no key is pressed).  The
+culprit appears to be the WaitForKeyEx function, which lacks support in certain
+UEFI implementations.  This fix is backported from the same issue found in
+systemd-boot (gummiboot's mainstream counterpart): see
+<https://github.com/systemd/systemd/issues/3632> and
+<https://github.com/systemd/systemd/pull/3735>.
+
+--- src/efi/console.c	2015-03-11 16:50:35.000000000 -0700
++++ src/efi/console.c	2020-12-09 15:41:19.837704801 -0800
+@@ -96,10 +96,7 @@
+ 
+         /* wait until key is pressed */
+         if (wait) {
+-                if (TextInputEx)
+-                        uefi_call_wrapper(BS->WaitForEvent, 3, 1, &TextInputEx->WaitForKeyEx, &index);
+-                else
+-                        uefi_call_wrapper(BS->WaitForEvent, 3, 1, &ST->ConIn->WaitForKey, &index);
++                uefi_call_wrapper(BS->WaitForEvent, 3, 1, &ST->ConIn->WaitForKey, &index);
+         }
+ 
+         if (TextInputEx) {
diff --git a/srcpkgs/gummiboot/template b/srcpkgs/gummiboot/template
index 052776fe7ff..68e6f5be926 100644
--- a/srcpkgs/gummiboot/template
+++ b/srcpkgs/gummiboot/template
@@ -1,7 +1,7 @@
 # Template file for 'gummiboot'
 pkgname=gummiboot
 version=48.1
-revision=6
+revision=7
 archs="i686* x86_64* aarch64*"
 build_style=gnu-configure
 conf_files="/etc/default/gummiboot"

  parent reply	other threads:[~2020-12-10  4:27 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-10  0:14 [PR PATCH] gummiboot: WaitForKeyEx hanging workaround (see systemd/systemd#3735) kwshi
2020-12-10  0:19 ` gummiboot: WaitForKeyEx hanging patch ericonr
2020-12-10  0:20 ` [PR PATCH] [Updated] " kwshi
2020-12-10  0:43 ` kwshi
2020-12-10  2:25 ` [PR PATCH] [Updated] " kwshi
2020-12-10  4:27 ` kwshi [this message]
2020-12-10  4:27 ` kwshi
2020-12-10  4:38 ` [PR PATCH] [Merged]: " ericonr

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201210042700.UOkwvrNfUmoq87M25vupjmRNGLz3TnlrAIU0Qk_0juM@z \
    --to=kwshi@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).