On Sat, Sep 22, 2018 at 08:45:12AM -0700, Kees Cook wrote: >On Thu, Sep 13, 2018 at 3:46 AM, Chao Fan <fanc.fnst@xxxxxxxxxxxxxx> wrote: >> There is a bug that kaslr may randomly chooses some positions >> which are located in movable memory regions. This will break memory >> hotplug feature and make the movable memory chosen by KASLR can't be >> removed. So dig SRAT table from ACPI tables to get memory information. >> >> Imitate the ACPI code of parsing ACPI tables to dig and read ACPI >> tables. Since some operations are not needed here, functions are >> simplified. Functions will be used to dig only SRAT tables to get >> information of memory, so that KASLR can the memory in immovable node. >> >> And also, these functions won't influence the initialization of >> ACPI after start_kernel(). >> >> Since use physical address directely, so acpi_os_map_memory() >> and acpi_os_unmap_memory() are not needed. >> >> Signed-off-by: Chao Fan <fanc.fnst@xxxxxxxxxxxxxx> >> --- >> arch/x86/boot/compressed/Makefile | 4 + >> arch/x86/boot/compressed/acpitb.c | 401 ++++++++++++++++++++++++++++++ > >Does this logic live anywhere else in the kernel already? (i.e. could >other code be reused?) Live in uncompressec period, but not completely same. The map between physical address and virtual address is not needed here. So I thins it's hard to reuse, that's why I made this new file. Thanks, Chao Fan > >-Kees > >-- >Kees Cook >Pixel Security > >