* grub-core/boot/i386/pc/lnxboot.S (real_code_2): Ensure that the
initial chunk read from the kernel always includes GRUB's multiboot header, which is now outside the first sector.
This commit is contained in:
parent
be1a7ce0cf
commit
9b43bf396a
2 changed files with 15 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2011-03-11 Colin Watson <cjwatson@ubuntu.com>
|
||||
|
||||
* grub-core/boot/i386/pc/lnxboot.S (real_code_2): Ensure that the
|
||||
initial chunk read from the kernel always includes GRUB's multiboot
|
||||
header, which is now outside the first sector.
|
||||
|
||||
2011-03-09 Colin Watson <cjwatson@ubuntu.com>
|
||||
|
||||
* grub-core/loader/i386/linux.c (find_efi_mmap_size): Page-align
|
||||
|
|
|
@ -178,8 +178,13 @@ real_code_2:
|
|||
pushw %es
|
||||
popw %ds
|
||||
|
||||
#if GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART + 4 < 0x200
|
||||
movl $0x200, %ecx
|
||||
addl %ecx, %esi
|
||||
#else
|
||||
movl $(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART + 4), %ecx
|
||||
addl $0x200, %esi
|
||||
#endif
|
||||
movl $DATA_ADDR, %edi
|
||||
|
||||
call LOCAL(move_memory)
|
||||
|
@ -196,7 +201,11 @@ real_code_2:
|
|||
1:
|
||||
|
||||
movl %ss:(DATA_ADDR + GRUB_KERNEL_MACHINE_COMPRESSED_SIZE), %ecx
|
||||
#if GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART + 4 < 0x200
|
||||
addl $(GRUB_KERNEL_MACHINE_RAW_SIZE - 0x200), %ecx
|
||||
#else
|
||||
addl $(GRUB_KERNEL_MACHINE_RAW_SIZE - (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART + 4)), %ecx
|
||||
#endif
|
||||
|
||||
2:
|
||||
call LOCAL(move_memory)
|
||||
|
|
Loading…
Reference in a new issue