From 8fbb150a56966edde4dc07b8d01be5eb149b65ab Mon Sep 17 00:00:00 2001 From: Colin Watson Date: Sun, 20 Jan 2013 23:03:35 +0000 Subject: [PATCH 1/1] * grub-core/loader/i386/linux.c (grub_cmd_initrd): Don't add the initrd size to addr_min, since the initrd will be allocated after this address. commit 6a0debbd9167e8f79cdef5497a73d23e580c0cd4 upstream Upstream-Status: Backport Signed-off-by: Shan Hai --- ChangeLog | 6 ++++++ grub-core/loader/i386/linux.c | 3 +-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index c2f42d5..40cb508 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2013-01-20 Colin Watson + + * grub-core/loader/i386/linux.c (grub_cmd_initrd): Don't add the + initrd size to addr_min, since the initrd will be allocated after + this address. + 2012-07-02 Vladimir Serbinenko * grub-core/net/tftp.c (ack): Fix endianness problem. diff --git a/grub-core/loader/i386/linux.c b/grub-core/loader/i386/linux.c index 62087cf..e2425c8 100644 --- a/grub-core/loader/i386/linux.c +++ b/grub-core/loader/i386/linux.c @@ -1098,8 +1098,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), worse than that of Linux 2.3.xx, so avoid the last 64kb. */ addr_max -= 0x10000; - addr_min = (grub_addr_t) prot_mode_target + prot_init_space - + page_align (size); + addr_min = (grub_addr_t) prot_mode_target + prot_init_space; /* Put the initrd as high as possible, 4KiB aligned. */ addr = (addr_max - size) & ~0xFFF; -- 1.8.5.2.233.g932f7e4