diff --git a/ChangeLog b/ChangeLog index 2852c52af..e074ba0bf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-03-02 Vladimir Serbinenko + + * grub-core/boot/i386/pc/startup_raw.S: Move decompressor_end to .bss + to ensure that it's after the last byte of .text. + 2012-03-02 Vladimir Serbinenko * util/ieee1275/ofpath.c (my_isdigit): New function. diff --git a/grub-core/boot/i386/pc/startup_raw.S b/grub-core/boot/i386/pc/startup_raw.S index 2199f3e96..952cd814a 100644 --- a/grub-core/boot/i386/pc/startup_raw.S +++ b/grub-core/boot/i386/pc/startup_raw.S @@ -105,8 +105,7 @@ LOCAL (codestart): call grub_gate_a20 movl LOCAL(compressed_size), %edx - LOCAL(reed_solomon_size) = LOCAL(decompressor_end) - LOCAL(reed_solomon_part) - addl $LOCAL(reed_solomon_size), %edx + addl $(LOCAL(decompressor_end) - LOCAL(reed_solomon_part)), %edx movl reed_solomon_redundancy, %ecx leal LOCAL(reed_solomon_part), %eax cld @@ -353,4 +352,5 @@ post_reed_solomon: .p2align 4 + .bss LOCAL(decompressor_end):