[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GRUB and Linux's initrd_addr_max
From: |
mike b |
Subject: |
GRUB and Linux's initrd_addr_max |
Date: |
Mon, 5 Nov 2018 11:12:29 +0100 |
Hi!
The question addresses value that can be retrieved from kernel's header and
which points and the max address in memory that initrd can be extracted to.
if I check my kernel image, I can see that it's set to 0x7fffffff. However,
if you look into grub's code, the grub-core/loader/i386/linux.c to be
exact, this value is considered as "bogus" and it's cut down to
GRUB_LINUX_INITRD_MAX_ADDRESS which is 0x37ffffff. Now, the commit
(92907110) that introduced this change in grub's code doesn't say much
except: "Without them [the constraint], initrd was allocated too high for
Linux to find it.". Now, this is a bit problematic, since it limits the
actual size of initrd that you can load to something around ~400MB. More or
less. Maybe more.
So to finally go with the question - is this justified? Is that really the
case for recent kernels (the grub's commit is from 2008)? I have been
planning to test that by removing this constraint and allowing addr_max to
be of the value that comes with the kernel, but I also wanted to confirm
first if something like that would actually make any sense. :D
Any hints would be appreciated!
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- GRUB and Linux's initrd_addr_max,
mike b <=