]>
Commit | Line | Data |
---|---|---|
c98e55d8 HS |
1 | --- grub-0.96/stage2/boot.c |
2 | +++ grub-0.96/stage2/boot.c | |
3 | @@ -824,8 +824,11 @@ | |
4 | moveto = (mbi.mem_upper + 0x400) << 10; | |
5 | ||
6 | moveto = (moveto - len) & 0xfffff000; | |
7 | - max_addr = (lh->header == LINUX_MAGIC_SIGNATURE && lh->version >= 0x0203 | |
8 | - ? lh->initrd_addr_max : LINUX_INITRD_MAX_ADDRESS); | |
9 | + max_addr = LINUX_INITRD_MAX_ADDRESS; | |
10 | + if (lh->header == LINUX_MAGIC_SIGNATURE && | |
11 | + lh->version >= 0x0203 && | |
12 | + lh->initrd_addr_max < max_addr) | |
13 | + max_addr = lh->initrd_addr_max; | |
14 | if (moveto + len >= max_addr) | |
15 | moveto = (max_addr - len) & 0xfffff000; | |
16 |