summaryrefslogtreecommitdiff
path: root/user/grub/0004-videoinfo-no-reinit.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/grub/0004-videoinfo-no-reinit.patch')
-rw-r--r--user/grub/0004-videoinfo-no-reinit.patch49
1 files changed, 0 insertions, 49 deletions
diff --git a/user/grub/0004-videoinfo-no-reinit.patch b/user/grub/0004-videoinfo-no-reinit.patch
deleted file mode 100644
index c3877bf07..000000000
--- a/user/grub/0004-videoinfo-no-reinit.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 1de58326994b0045ccfb28017d05fc1ddecdb92d Mon Sep 17 00:00:00 2001
-From: Glenn Washburn <development@efficientek.com>
-Date: Fri, 11 Aug 2023 16:30:04 -0500
-Subject: commands/videoinfo: Prevent crash when run while video driver already
- active
-
-The videoinfo command will initialize all non-active video adapters. Video
-drivers tend to zero out the global framebuffer object on initialization.
-This is not a problem when there is no active video adapter. However, when
-there is, then outputting to the video adapter will cause a crash because
-methods in the framebuffer object are reinitialized. For example, this
-command sequence will cause a crash.
-
- terminal_output --append gfxterm; videoinfo
-
-When running in a QEMU headless with GRUB built for the x86_64-efi target,
-the first command initializes the Bochs video adapter, which, among
-other things, sets the set_page() member function. Then when videoinfo is
-run, all non-Bochs video adapters will be initialized, each one wiping
-the framebuffer and thus setting set_page to NULL. Soon after the videoinfo
-command finishes there will be a call to grub_refresh(), which will
-ultimately call the framebuffer's set_page which will be NULL and cause
-a crash when called.
-
-Signed-off-by: Glenn Washburn <development@efficientek.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
----
- grub-core/commands/videoinfo.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/grub-core/commands/videoinfo.c b/grub-core/commands/videoinfo.c
-index 5eb9697..205ba78 100644
---- a/grub-core/commands/videoinfo.c
-+++ b/grub-core/commands/videoinfo.c
-@@ -191,6 +191,11 @@ grub_cmd_videoinfo (grub_command_t cmd __attribute__ ((unused)),
- /* Don't worry about errors. */
- grub_errno = GRUB_ERR_NONE;
- }
-+ else if (id != GRUB_VIDEO_DRIVER_NONE)
-+ {
-+ grub_puts_ (N_(" A video driver is active, cannot initialize this driver until it is deactivated\n"));
-+ continue;
-+ }
- else
- {
- if (adapter->init ())
---
-cgit v1.1
-