]> git.ipfire.org Git - thirdparty/grub.git/commit
mbi: Use per segment a separate relocator chunk
authorAlexander Boettcher <alexander.boettcher@genode-labs.com>
Tue, 12 Jun 2018 18:04:09 +0000 (20:04 +0200)
committerDaniel Kiper <daniel.kiper@oracle.com>
Sat, 23 Jun 2018 19:36:02 +0000 (21:36 +0200)
commit14ec665c3f36d0614cacaa757907551c5c2e6adb
tree5cc78fc810ed98c2a27f39b6976a3f345d365814
parentba474d531a63850bf2e8e8c225ccd6f5e2a594e9
mbi: Use per segment a separate relocator chunk

Instead of setting up a all comprising relocator chunk for all segments,
use per segment a separate relocator chunk.

Currently, if the ELF is non-relocatable, a single relocator chunk will
comprise memory (between the segments) which gets overridden by the relst()
invocation of the movers code in grub_relocator16/32/64_boot().

The overridden memory may contain reserved ranges like VGA memory or ACPI
tables, which may lead to crashes or at least to strange boot behaviour.

Signed-off-by: Alexander Boettcher <alexander.boettcher@genode-labs.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
grub-core/loader/multiboot_elfxx.c