From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pingfan Liu Subject: [RFC PATCH 0/4] x86_64/mm: remove bottom-up allocation style by pushing forward the parsing of mem hotplug info Date: Mon, 7 Jan 2019 16:24:41 +0800 Message-ID: <1546849485-27933-1-git-send-email-kernelfans@gmail.com> Return-path: Sender: linux-kernel-owner@vger.kernel.org To: x86@kernel.org, linux-acpi@vger.kernel.org Cc: Pingfan Liu , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Dave Hansen , Andy Lutomirski , Peter Zijlstra , "Rafael J. Wysocki" , Len Brown , linux-kernel@vger.kernel.org List-Id: linux-acpi@vger.kernel.org Background about the defect of the current bottom-up allocation style, take the following scenario: | unmovable node | movable node | | kaslr-kernel |subtree of pgtable for phy<->virt | Although kaslr-kernel can avoid to stain the movable node. But the pgtable can still stain the movable node. That is a probability problem, with low probability, but still exist. This patch tries to eliminate the probability. With the previous patch, at the point of init_mem_mapping(), memblock allocator can work with the knowledge of acpi memory hotmovable info, and avoid to stain the movable node. As a result, memory_map_bottom_up() is not needed any more. Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Borislav Petkov Cc: "H. Peter Anvin" Cc: Dave Hansen Cc: Andy Lutomirski Cc: Peter Zijlstra Cc: "Rafael J. Wysocki" Cc: Len Brown Cc: linux-kernel@vger.kernel.org Pingfan Liu (4): acpi: change the topo of acpi_table_upgrade() x86/setup: parse acpi to get hotplug info before init_mem_mapping() x86/mm: set allowed range for memblock allocator x86/mm: remove bottom-up allocation style for x86_64 arch/arm64/kernel/setup.c | 2 +- arch/x86/kernel/setup.c | 17 ++++- arch/x86/mm/init.c | 154 +++++++--------------------------------------- arch/x86/mm/init_32.c | 123 ++++++++++++++++++++++++++++++++++++ arch/x86/mm/mm_internal.h | 7 +++ drivers/acpi/tables.c | 4 +- include/linux/acpi.h | 5 +- 7 files changed, 172 insertions(+), 140 deletions(-) -- 2.7.4