On Mon, Apr 15, 2013 at 3:00 PM, Yinghai Lu <ying...@kernel.org> wrote: > On Mon, Apr 15, 2013 at 2:46 PM, H. Peter Anvin <h...@zytor.com> wrote: >> On 04/15/2013 02:41 PM, Kees Cook wrote: > >> Please read what I wrote. >> >> The 2 GB limit is for the *virtual* mapping. >> >> The *physical* mapping, where it lands in RAM, is completely >> independent, and if you're going to randomize the latter, there is no >> reason it has to match the former. Instead, randomize it freely. >> >> That is different from the i386 kernel which runs at its >> physical-mapping address. >> >> Incidentally, for performance reasons please avoid locating the kernel >> below CONFIG_PHYSICAL_ADDRESS if possible. >> >> Also make sure your code works with more than 128 e820 entries. > > also do not overlap with boot_param, command_line, and initrd. > > and need to double check setup_header.init_size to make sure bss and > etc will not > fall into memory hole or reserved area in e820. > > also may need to setup page table for target position as bootloader may only > has ident mapping only for loaded bzImage 64 areas. > > looks you are trying redo the work for bootloader to pick loaded phys addr.
aslr.S's select_aslr_address uses z_extract_offset as the upper bound. -Kees -- Kees Cook Chrome OS Security -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/