Package: grub2 / 2.02~beta2-22+deb8u1

Metadata

Package Version Patches format
grub2 2.02~beta2-22+deb8u1 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
olpc_prefix_hack.patch | (download)

grub-core/kern/ieee1275/init.c | 11 11 + 0 - 0 !
1 file changed, 11 insertions(+)

 hack prefix for olpc

This sucks, but it's better than what OFW was giving us.

Patch-Name: olpc_prefix_hack.patch

core_in_fs.patch | (download)

util/setup.c | 8 8 + 0 - 0 !
1 file changed, 8 insertions(+)

 write marker if core.img was written to filesystem

The Debian bug reporting script includes a warning in this case.

Patch-Name: core_in_fs.patch

dpkg_version_comparison.patch | (download)

util/grub-mkconfig_lib.in | 7 4 + 3 - 0 !
1 file changed, 4 insertions(+), 3 deletions(-)

 improve handling of debian kernel version numbers

grub_legacy_0_based_partitions.patch | (download)

util/getroot.c | 14 14 + 0 - 0 !
1 file changed, 14 insertions(+)

 support running grub-probe in grub-legacy's update-grub

disable_floppies.patch | (download)

grub-core/kern/emu/hostdisk.c | 12 12 + 0 - 0 !
1 file changed, 12 insertions(+)

 disable use of floppy devices

An ugly kludge.  Should this be merged upstream?

grub.cfg_400.patch | (download)

util/grub-mkconfig.in | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 make grub.cfg world-readable if it contains no passwords

Patch-Name: grub.cfg_400.patch

gfxpayload_keep_default.patch | (download)

util/grub.d/10_linux.in | 4 0 + 4 - 0 !
1 file changed, 4 deletions(-)

 disable gfxpayload=keep by default

Setting gfxpayload=keep has been known to cause efifb to be
inappropriately enabled.  In any case, with the current Linux kernel the
result of this option is that early kernelspace will be unable to print
anything to the console, so (for example) if boot fails and you end up
dumped to an initramfs prompt, you won't be able to see anything on the
screen.  As such it shouldn't be enabled by default in Debian, no matter
what kernel options are enabled.

gfxpayload=keep is a good idea but rather ahead of its time ...

Bug-Debian: http://bugs.debian.org/567245
install_stage2_confusion.patch | (download)

util/grub-install.c | 14 14 + 0 - 0 !
1 file changed, 14 insertions(+)

 if grub legacy is still around, tell packaging to ignore it

Bug-Debian: http://bugs.debian.org/586143
mkrescue_efi_modules.patch | (download)

util/grub-mkrescue.c | 6 6 + 0 - 0 !
1 file changed, 6 insertions(+)

 build part_msdos and vfat into efi boot images

mkconfig_loopback.patch | (download)

util/grub-mkconfig_lib.in | 24 24 + 0 - 0 !
util/grub.d/10_linux.in | 5 5 + 0 - 0 !
util/grub.d/20_linux_xen.in | 5 5 + 0 - 0 !
3 files changed, 34 insertions(+)

 handle filesystems loop-mounted on file images

Improve prepare_grub_to_access_device to emit appropriate commands for
such filesystems, and ignore them in Linux grub.d scripts.

This is needed for Ubuntu's Wubi installation method.

This patch isn't inherently Debian/Ubuntu-specific.  losetup and
/proc/mounts are Linux-specific, though, so we might need to refine this
before sending it upstream.  The changes to the Linux grub.d scripts
might be better handled by integrating 10_lupin properly instead.

Patch-Name: mkconfig_loopback.patch

restore_mkdevicemap.patch | (download)

Makefile.util.def | 17 17 + 0 - 0 !
docs/man/grub-mkdevicemap.h2m | 4 4 + 0 - 0 !
include/grub/util/deviceiter.h | 14 14 + 0 - 0 !
util/deviceiter.c | 954 954 + 0 - 0 !
util/devicemap.c | 13 13 + 0 - 0 !
util/grub-mkdevicemap.c | 181 181 + 0 - 0 !
6 files changed, 1183 insertions(+)

 restore grub-mkdevicemap

This is kind of a mess, requiring lots of OS-specific code to iterate
over all possible devices.  However, we use it in a number of scripts to
discover devices and reimplementing those in terms of something else
would be very complicated.

Patch-Name: restore_mkdevicemap.patch

gettext_quiet.patch | (download)

grub-core/gettext/gettext.c | 5 5 + 0 - 0 !
1 file changed, 5 insertions(+)

 silence error messages when translations are unavailable

Bug: https://savannah.gnu.org/bugs/?35880
mkconfig_mid_upgrade.patch | (download)

util/grub-mkconfig.in | 7 7 + 0 - 0 !
1 file changed, 7 insertions(+)

 bail out if trying to run grub-mkconfig during upgrade to 2.00

Since files in /etc/grub.d/ are conffiles, they are not put in place
until grub-common is configured, meaning that they may be out of sync
with the parts of grub-mkconfig that reside in /usr/.  In GRUB 1.99,
/etc/grub.d/00_header contained a reference to ${GRUB_PREFIX}/video.lst.
This and other code from 1.99 breaks with 2.00's grub-mkconfig.
Deferring this to when grub-PLATFORM.postinst eventually runs is safe
and avoids this problem.

install_efi_fallback.patch | (download)

grub-core/osdep/linux/platform.c | 19 17 + 2 - 0 !
1 file changed, 17 insertions(+), 2 deletions(-)

 fall back to i386-pc if booted using efi but -efi is missing

It may be possible, particularly in recovery situations, to be booted
using EFI on x86 when only the i386-pc target is installed.  There's
nothing actually stopping us installing i386-pc from an EFI environment,
and it's better than returning a confusing error.

mkconfig_ubuntu_recovery.patch | (download)

configure.ac | 11 11 + 0 - 0 !
util/grub.d/10_linux.in | 16 14 + 2 - 0 !
util/grub.d/30_os-prober.in | 2 1 + 1 - 0 !
3 files changed, 26 insertions(+), 3 deletions(-)

 "single" -> "recovery" when friendly-recovery is installed
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

If configured with --enable-ubuntu-recovery, also set nomodeset for
recovery mode, and disable 'set gfxpayload=keep' even if the system
normally supports it.  See
https://launchpad.net/ubuntu/+spec/desktop-o-xorg-tools-and-processes.

install_locale_langpack.patch | (download)

util/grub-install-common.c | 40 33 + 7 - 0 !
1 file changed, 33 insertions(+), 7 deletions(-)

 prefer translations from ubuntu language packs if available

Bug-Ubuntu: https://bugs.launchpad.net/bugs/537998
mkconfig_nonexistent_loopback.patch | (download)

util/grub-mkconfig_lib.in | 2 1 + 1 - 0 !
util/grub.d/30_os-prober.in | 9 5 + 4 - 0 !
2 files changed, 6 insertions(+), 5 deletions(-)

 avoid getting confused by inaccessible loop device backing paths

Bug-Ubuntu: https://bugs.launchpad.net/bugs/938724
no_insmod_on_sb.patch | (download)

grub-core/kern/dl.c | 13 13 + 0 - 0 !
grub-core/kern/efi/efi.c | 28 28 + 0 - 0 !
include/grub/efi/efi.h | 1 1 + 0 - 0 !
3 files changed, 42 insertions(+)

 don't permit loading modules on uefi secure boot

default_grub_d.patch | (download)

grub-core/osdep/unix/config.c | 114 93 + 21 - 0 !
util/grub-mkconfig.in | 5 5 + 0 - 0 !
2 files changed, 98 insertions(+), 21 deletions(-)

 read /etc/default/grub.d/*.cfg after /etc/default/grub

Bug-Ubuntu: https://bugs.launchpad.net/bugs/901600
blacklist_1440x900x32.patch | (download)

grub-core/video/i386/pc/vbe.c | 9 9 + 0 - 0 !
1 file changed, 9 insertions(+)

 blacklist 1440x900x32 from vbe preferred mode handling

Bug-Ubuntu: https://bugs.launchpad.net/bugs/701111
uefi_firmware_setup.patch | (download)

Makefile.util.def | 6 6 + 0 - 0 !
util/grub.d/30_uefi-firmware.in | 46 46 + 0 - 0 !
2 files changed, 52 insertions(+)

 output a menu entry for firmware setup on uefi fastboot systems

mkconfig_ubuntu_distributor.patch | (download)

util/grub.d/10_linux.in | 9 8 + 1 - 0 !
1 file changed, 8 insertions(+), 1 deletion(-)

 remove gnu/linux from default distributor string for ubuntu

Ubuntu is called "Ubuntu", not "Ubuntu GNU/Linux".

linuxefi.patch | (download)

grub-core/Makefile.core.def | 8 8 + 0 - 0 !
grub-core/kern/efi/mm.c | 32 32 + 0 - 0 !
grub-core/loader/i386/efi/linux.c | 371 371 + 0 - 0 !
include/grub/efi/efi.h | 3 3 + 0 - 0 !
include/grub/i386/linux.h | 1 1 + 0 - 0 !
5 files changed, 415 insertions(+)

 add "linuxefi" loader which avoids exitbootservices

linuxefi_debug.patch | (download)

grub-core/loader/i386/efi/linux.c | 28 25 + 3 - 0 !
1 file changed, 25 insertions(+), 3 deletions(-)

 add more debugging to linuxefi

linuxefi_require_shim.patch | (download)

grub-core/loader/i386/efi/linux.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 make linuxefi refuse to boot without shim

This is only intended as a temporary measure.

linuxefi_non_sb_fallback.patch | (download)

grub-core/loader/i386/efi/linux.c | 2 1 + 1 - 0 !
grub-core/loader/i386/linux.c | 43 43 + 0 - 0 !
2 files changed, 44 insertions(+), 1 deletion(-)

 if running under uefi secure boot, attempt to use linuxefi loader

mkconfig_signed_kernel.patch | (download)

util/grub.d/10_linux.in | 15 15 + 0 - 0 !
1 file changed, 15 insertions(+)

 generate configuration for signed uefi kernels if available

install_signed.patch | (download)

util/grub-install.c | 169 122 + 47 - 0 !
1 file changed, 122 insertions(+), 47 deletions(-)

 install signed images if uefi secure boot is enabled
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

sleep_shift.patch | (download)

grub-core/commands/sleep.c | 27 26 + 1 - 0 !
grub-core/normal/menu.c | 19 19 + 0 - 0 !
2 files changed, 45 insertions(+), 1 deletion(-)

 allow shift to interrupt 'sleep --interruptible'

Upstream would like to consider this at more length. See
http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00718.html, and
the rest of the thread for context.

wubi_no_windows.patch | (download)

util/grub.d/30_os-prober.in | 19 19 + 0 - 0 !
1 file changed, 19 insertions(+)

 skip windows os-prober entries on wubi systems

Since we're already being booted from the Windows boot loader, including
entries that take us back to it mostly just causes confusion, and stops
us from being able to hide the menu if there are no other OSes
installed.

https://blueprints.launchpad.net/ubuntu/+spec/foundations-o-wubi

maybe_quiet.patch | (download)

config.h.in | 2 2 + 0 - 0 !
configure.ac | 16 16 + 0 - 0 !
grub-core/boot/i386/pc/boot.S | 11 11 + 0 - 0 !
grub-core/boot/i386/pc/diskboot.S | 26 26 + 0 - 0 !
grub-core/kern/main.c | 17 17 + 0 - 0 !
grub-core/kern/rescue_reader.c | 2 2 + 0 - 0 !
grub-core/normal/main.c | 11 11 + 0 - 0 !
grub-core/normal/menu.c | 17 15 + 2 - 0 !
util/grub.d/10_linux.in | 15 11 + 4 - 0 !
9 files changed, 111 insertions(+), 6 deletions(-)

 add configure option to reduce visual clutter at boot time

If this option is enabled, then do all of the following:

Don't display introductory message about line editing unless we're
actually offering a shell prompt.  (This is believed to be a workaround
install_efi_ubuntu_flavours.patch | (download)

util/grub-install.c | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 cope with kubuntu setting grub_distributor

This is not a very good approach, and certainly not sanely upstreamable;
quick_boot.patch | (download)

configure.ac | 11 11 + 0 - 0 !
docs/grub.texi | 9 9 + 0 - 0 !
grub-core/normal/menu.c | 24 24 + 0 - 0 !
util/grub-mkconfig.in | 3 2 + 1 - 0 !
util/grub.d/00_header.in | 58 46 + 12 - 0 !
util/grub.d/10_linux.in | 4 4 + 0 - 0 !
util/grub.d/30_os-prober.in | 21 21 + 0 - 0 !
7 files changed, 117 insertions(+), 13 deletions(-)

 add configure option to bypass boot menu if possible

If other operating systems are installed, then automatically unhide the
menu.  Otherwise, if GRUB_HIDDEN_TIMEOUT is 0, then use keystatus if
available to check whether Shift is pressed.  If it is, show the menu,
otherwise boot immediately.  If keystatus is not available, then fall
back to a short delay interruptible with Escape.

This may or may not remain Ubuntu-specific, although it's not obviously
wanted upstream.  It implements a requirement of
https://wiki.ubuntu.com/DesktopExperienceTeam/KarmicBootExperienceDesignSpec#Bootloader.

If the previous boot failed (defined as failing to get to the end of one
of the normal runlevels), then show the boot menu regardless.

gfxpayload_dynamic.patch | (download)

configure.ac | 11 11 + 0 - 0 !
grub-core/Makefile.core.def | 9 9 + 0 - 0 !
grub-core/commands/i386/pc/hwmatch.c | 146 146 + 0 - 0 !
util/grub.d/10_linux.in | 37 34 + 3 - 0 !
4 files changed, 200 insertions(+), 3 deletions(-)

 add configure option to enable gfxpayload=keep dynamically

Set GRUB_GFXPAYLOAD_LINUX=keep unless it's known to be unsupported on
the current hardware.  See
https://blueprints.launchpad.net/ubuntu/+spec/packageselection-foundations-n-grub2-boot-framebuffer.

vt_handoff.patch | (download)

configure.ac | 11 11 + 0 - 0 !
util/grub.d/10_linux.in | 28 27 + 1 - 0 !
2 files changed, 38 insertions(+), 1 deletion(-)

 add configure option to use vt.handoff=7

This is used for non-recovery Linux entries only; it enables
flicker-free booting if gfxpayload=keep is in use and a suitable kernel
is present.

probe_fusionio.patch | (download)

grub-core/osdep/linux/getroot.c | 13 13 + 0 - 0 !
util/deviceiter.c | 19 19 + 0 - 0 !
2 files changed, 32 insertions(+)

 probe fusionio devices

Bug-Ubuntu: https://bugs.launchpad.net/bugs/1237519
ignore_grub_func_test_failures.patch | (download)

tests/grub_func_test.in | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 ignore functional test failures for now as they are broken

See: https://lists.gnu.org/archive/html/grub-devel/2013-11/msg00242.html

mkconfig_recovery_title.patch | (download)

docs/grub.texi | 5 5 + 0 - 0 !
util/grub-mkconfig.in | 7 6 + 1 - 0 !
util/grub.d/10_hurd.in | 4 2 + 2 - 0 !
util/grub.d/10_kfreebsd.in | 2 1 + 1 - 0 !
util/grub.d/10_linux.in | 2 1 + 1 - 0 !
util/grub.d/10_netbsd.in | 2 1 + 1 - 0 !
util/grub.d/20_linux_xen.in | 2 1 + 1 - 0 !
7 files changed, 17 insertions(+), 7 deletions(-)

 add grub_recovery_title option

This allows the controversial "recovery mode" text to be customised.

Bug-Ubuntu: https://bugs.launchpad.net/bugs/1240360
skip_gettext_strings_test.patch | (download)

tests/gettext_strings_test.in | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 don't run gettext_strings_test

This test is mainly useful as an upstream maintenance check.

elf_bi_endian.patch | (download)

grub-core/kern/elf.c | 55 53 + 2 - 0 !
grub-core/kern/elfXX.c | 43 43 + 0 - 0 !
include/grub/elf.h | 7 7 + 0 - 0 !
3 files changed, 103 insertions(+), 2 deletions(-)

 add bi-endian support to elf parser

This patch adds bi-endian support for both 32-bit and 64-bit elf files.

It compares the native endianness to the endianness of the elf file, and
swaps the header bytes if necessary.  This will allow, for example,
32-bit Big Endian grub to load a 64-bit Little Endian kernel.

macbless_mansection.patch | (download)

Makefile.util.def | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 * makefile.util.def (grub-macbless): change mansection to 8.

Patch-Name: macbless_mansection.patch

grub shell no pad.patch | (download)

tests/util/grub-shell.in | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 grub-shell: pass -no-pad to xorriso when building floppy images

The floppy images built by grub-shell are currently just over the
floppy limit, and the Debian patch set plus the 915resolution extra
bring this up to the point where GRUB tries to actually read past
the floppy limit, breaking fddboot_test.  Passing -no-pad buys us
300KiB, which should keep us going for a while.

* tests/util/grub-shell.in: Pass -no-pad to xorriso when building
floppy images, saving 300KiB.

freebsd_debugflags_eperm.patch | (download)

grub-core/osdep/freebsd/hostdisk.c | 12 10 + 2 - 0 !
1 file changed, 10 insertions(+), 2 deletions(-)

 ignore eperm when modifying kern.geom.debugflags

Many tests fail when run as a non-root user on FreeBSD.  The failures
all amount to an inability to open files using grub_util_fd_open,
because we cannot set the kern.geom.debugflags sysctl.  This sysctl is
indeed important to allow us to do such things as installing GRUB to the
MBR, but if we need to do that and can't then we will get an error
later.  Enforcing it here is unnecessary and prevents otherwise
perfectly reasonable operations.

install_powerpc_machtypes.patch | (download)

grub-core/osdep/basic/platform.c | 5 5 + 0 - 0 !
grub-core/osdep/linux/platform.c | 72 72 + 0 - 0 !
grub-core/osdep/unix/platform.c | 28 22 + 6 - 0 !
grub-core/osdep/windows/platform.c | 6 6 + 0 - 0 !
include/grub/util/install.h | 3 3 + 0 - 0 !
util/grub-install.c | 11 11 + 0 - 0 !
6 files changed, 119 insertions(+), 6 deletions(-)

 port yaboot logic for various powerpc machine types

Some powerpc machines require not updating the NVRAM.  This can be handled
by existing grub-install command-line options, but it's friendlier to detect
this automatically.

On chrp_ibm machines, use the nvram utility rather than nvsetenv.  (This
is possibly suitable for other machines too, but that needs to be
verified.)

install_arm64_naming.patch | (download)

util/grub-install.c | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 use {grub,boot}aa64.efi for boot images on aarch64

According to UEFI 2.4 specification, default boot file name on AArch64
is BOOTAA64.EFI (3.4.1.1 Removable Media Boot Behavior). Also set default
GRUB image name to grubaa64.efi to match it.

mkrescue_arm64_naming.patch | (download)

util/grub-mkrescue.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 change grub-mkrescue to use bootaa64.efi too

ieee1275 pseries emulation.patch | (download)

grub-core/kern/ieee1275/cmain.c | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 ieee1275: check for ibm pseries emulated machine

is_qemu is not being set lead to disabling of feature like
GRUB_IEEE1275_FLAG_HAS_CURSORONOFF. This resulted in cursor not being
displayed during the grub-menu edit.

probe delimiter.patch | (download)

grub-core/disk/cryptodisk.c | 19 10 + 9 - 0 !
grub-core/disk/diskfilter.c | 5 3 + 2 - 0 !
include/grub/cryptodisk.h | 3 2 + 1 - 0 !
include/grub/diskfilter.h | 3 2 + 1 - 0 !
util/grub-install.c | 14 10 + 4 - 0 !
util/grub-probe.c | 46 22 + 24 - 0 !
6 files changed, 49 insertions(+), 41 deletions(-)

 fix partmap, cryptodisk, and abstraction handling in grub-mkconfig.

Commit 588744d0dc655177d5883bdcb8f72ff5160109ed caused grub-mkconfig
no longer to be forgiving of trailing spaces on grub-probe output
lines, which among other things means that util/grub.d/10_linux.in
no longer detects LVM.  To fix this, make grub-probe's output
delimiting more consistent.  As a bonus, this improves the coverage
of the -0 option.

Fixes Debian bug #735935.

* grub-core/disk/cryptodisk.c
(grub_util_cryptodisk_get_abstraction): Add a user-data argument.
* grub-core/disk/diskfilter.c (grub_diskfilter_get_partmap):
Likewise.
* include/grub/cryptodisk.h (grub_util_cryptodisk_get_abstraction):
Update prototype.
* include/grub/diskfilter.h (grub_diskfilter_get_partmap): Likewise.
* util/grub-install.c (push_partmap_module, push_cryptodisk_module,
probe_mods): Adjust for extra user-data arguments.
* util/grub-probe.c (do_print, probe_partmap, probe_cryptodisk_uuid,
probe_abstraction): Use configured delimiter.  Update callers.

btrfs endian.patch | (download)

grub-core/fs/btrfs.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 btrfs: fix get_root key comparison failures due to endianness

* grub-core/fs/btrfs.c (get_root): Convert
GRUB_BTRFS_ROOT_VOL_OBJECTID to little-endian.

tolerate lvm snapshots.patch | (download)

util/grub.d/30_os-prober.in | 23 13 + 10 - 0 !
1 file changed, 13 insertions(+), 10 deletions(-)

 tolerate devices with no filesystem uuid returned by os-prober

* util/grub.d/30_os-prober.in: Tolerate devices with no filesystem
UUID.  Other parts of grub-mkconfig tolerate these, they were
previously allowed here up to commit
55e706c918922def17f5012c23cfe88c4c645208, and they can arise in
practice when the system has active LVM snapshots.
Fixes Ubuntu bug #1287436.

net receive packets yield.patch | (download)

grub-core/net/net.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 change stop condition to avoid infinite loops

In net/net.c there is a while (1) that only exits if there is a stop
condition and more then 10 packages or if there is no package received.

If GRUB is idle and enter in this loop, the only condition to leave is
if it doesn't have incoming packages. In a network with heavy traffic
this never happens.

net ramp up interval.patch | (download)

grub-core/net/arp.c | 3 2 + 1 - 0 !
grub-core/net/icmp6.c | 3 2 + 1 - 0 !
grub-core/net/net.c | 5 3 + 2 - 0 !
grub-core/net/tftp.c | 3 2 + 1 - 0 !
include/grub/net.h | 1 1 + 0 - 0 !
5 files changed, 10 insertions(+), 5 deletions(-)

 increase network try interval gradually

* grub-core/net/arp.c (grub_net_arp_send_request): Increase network try
interval gradually.
* grub-core/net/icmp6.c (grub_net_icmp6_send_request): Likewise.
* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
* grub-core/net/tftp.c (tftp_open): Likewise.
* include/grub/net.h (GRUB_NET_INTERVAL_ADDITION): New define.

probe_nvme.patch | (download)

grub-core/osdep/linux/getroot.c | 14 14 + 0 - 0 !
util/deviceiter.c | 29 29 + 0 - 0 !
2 files changed, 43 insertions(+)

 add support for nvme device in grub-mkdevicemap

mkconfig kernels infloop.patch | (download)

util/grub.d/10_hurd.in | 2 1 + 1 - 0 !
util/grub.d/10_kfreebsd.in | 2 1 + 1 - 0 !
util/grub.d/10_linux.in | 2 1 + 1 - 0 !
util/grub.d/20_linux_xen.in | 4 2 + 2 - 0 !
4 files changed, 5 insertions(+), 5 deletions(-)

 fix an infinite loop in grub-mkconfig

* util/grub.d/10_hurd.in: Make kernel list progression not fail on
kernels whose paths contain regex metacharacters.
* util/grub.d/10_kfreebsd.in: Likewise.
* util/grub.d/10_linux.in: Likewise.
* util/grub.d/20_linux_xen.in: Likewise.

Reported by: Heimo Stranner.

x32.patch | (download)

configure.ac | 4 2 + 2 - 0 !
grub-core/kern/x86_64/dl.c | 4 2 + 2 - 0 !
include/grub/x86_64/types.h | 6 5 + 1 - 0 !
3 files changed, 9 insertions(+), 5 deletions(-)

 support grub-emu on x32 (ilp32 but with x86-64 instruction set)

* configure.ac: Remove -m64 from checks for -mcmodel=large and
-mno-red-zone.  These are always either unnecessary (x86_64-emu) or
already in TARGET_CFLAGS at this point, and they produce incorrect
results when building for x32.
* grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Cast
pointers to Elf64_Xword via grub_addr_t, in order to work on x32.
* include/grub/x86_64/types.h (GRUB_TARGET_SIZEOF_VOID_P,
GRUB_TARGET_SIZEOF_LONG): Define to 4 on x32.

ppc64el flags.patch | (download)

configure.ac | 9 9 + 0 - 0 !
1 file changed, 9 insertions(+)

 add powerpc little-endian (ppc64le) flags

* configure.ac: Add target for ppc64le (ppc64el).

ppc64el skip libgcc.patch | (download)

configure.ac | 10 6 + 4 - 0 !
grub-core/Makefile.am | 1 1 + 0 - 0 !
grub-core/Makefile.core.def | 2 2 + 0 - 0 !
grub-core/kern/compiler-rt.c | 166 166 + 0 - 0 !
grub-core/kern/powerpc/compiler-rt.S | 130 130 + 0 - 0 !
include/grub/compiler-rt.h | 82 82 + 0 - 0 !
6 files changed, 387 insertions(+), 4 deletions(-)

 skip libgcc dependency for powerpc

* configure.ac: Add conditions to avoid libgcc dependency.
* Makefile.am: Likewise.
* Makefile.core.def: Include compiler-rt.S and compiler-rt.c.
* compiler-rt.c: New file.
* compiler-rt.S: Likewise.
* compiler-rt.h: Likewise.

Also-By: Brent Baude <bbaude@redhat.com>
Also-By: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>

platform none.patch | (download)

Makefile.am | 14 11 + 3 - 0 !
configure.ac | 46 29 + 17 - 0 !
include/grub/time.h | 2 1 + 1 - 0 !
3 files changed, 41 insertions(+), 21 deletions(-)

 add a new "none" platform that only builds utilities

This makes it possible to build generally-useful utilities such as
grub-mount even if the rest of GRUB has not been ported to the target
CPU.

* configure.ac: Add "none" platform.  Default to it for unsupported
CPUs rather than stopping with a fatal error.  Don't downgrade
x86_64-none to i386.  Define COND_real_platform Automake conditional
if the platform is anything other than "none".  Don't do any include
directory linking for "none".
* Makefile.am: Skip building grub-core and all bootcheck targets if
!COND_real_platform.
* include/grub/time.h: Don't include <grub/cpu/time.h> if GRUB_UTIL
is defined.

mips abiflags.patch | (download)

gentpl.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 remove .mips.abiflags section from images

Recent versions of binutils generate this section, but we don't need it
when producing raw images.

Bug-Debian: https://bugs.debian.org/762307
ieee1275 clear reset.patch | (download)

grub-core/term/terminfo.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 include a text attribute reset in the clear command for ppc

Always clear text attribute for clear command in order to avoid problems
after it boots.

* grub-core/term/terminfo.c: Add escape for text attribute reset

Bug-Ubuntu: https://bugs.launchpad.net/bugs/1295255