This is a new attempt to fix the issue with video corruption that can
occur in some cases on EFI when all_video is loaded. Previously, the
proposed change was to disable building video_bochs and video_cirrus
for EFI completely, however there was concern around this approach.

Previous thread:
https://lists.gnu.org/archive/html/grub-devel/2025-09/msg00265.html

This new approach modifies the 00_header script to default to only
load efi_gop and efi_uga for EFI platforms. A new env variable is added
to force the old behavior of loading all_video for EFI if desired.

There is likely an additional change required on distros that
bundle all_video into the signed EFI GRUB image, such as Debian:
https://sources.debian.org/src/grub2/2.14~git20250718.0e36779-2/debian/build-efi-images

There is some additional analysis from the Qemu team in this thread:
https://gitlab.com/qemu-project/qemu/-/issues/2562

This is an issue on some major distros such as Debian on EFI
when running under Qemu and potentially other scenarios.

There is some discussion on the Debian side in this thread:
https://salsa.debian.org/kernel-team/linux/-/merge_requests/1453

This relates to this discussion from grub-devel also:
https://lists.gnu.org/archive/html/grub-devel/2025-09/msg00244.html

Fixes: https://savannah.gnu.org/bugs/index.php?66200

Changes since v1:
- Fix some comments
- Change name of env variable
- Combine patches into one

Andrew Hamilton (1):
  util/grub.d/00_header.in: Disable loading all_video for  EFI

 docs/grub.texi           |  7 +++++++
 util/grub-mkconfig.in    |  3 ++-
 util/grub.d/00_header.in | 16 +++++++++++++++-
 3 files changed, 24 insertions(+), 2 deletions(-)

-- 
2.43.0


_______________________________________________
Grub-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to