From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752793AbcGYKBe (ORCPT ); Mon, 25 Jul 2016 06:01:34 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:33595 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752254AbcGYKB3 (ORCPT ); Mon, 25 Jul 2016 06:01:29 -0400 Date: Mon, 25 Jul 2016 12:01:25 +0200 From: Ingo Molnar To: Linus Torvalds Cc: linux-kernel@vger.kernel.org, Thomas Gleixner , "H. Peter Anvin" , Borislav Petkov , Peter Zijlstra , Kees Cook , Andy Lutomirski , Andrew Morton Subject: [GIT PULL] x86/boot changes for v4.8 Message-ID: <20160725100125.GA29976@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Linus, Please pull the latest x86-boot-for-linus git tree from: git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-boot-for-linus # HEAD: 6a79296cb15d947bcb4558011fe066e5d8252b35 x86/boot: Simplify EBDA-vs-BIOS reservation logic Note: please only pull this tree if you've already pulled x86-mm-for-linus. The main changes: - Add initial commits to randomize kernel memory section virtual addresses, enabled via a new kernel option: CONFIG_RANDOMIZE_MEMORY=y. (Thomas Garnier, Kees Cook, Baoquan He, Yinghai Lu) - Enhance KASLR (CONFIG_RANDOMIZE_BASE) physical memory randomization. (Kees Cook) - EBDA/BIOS region boot quirk cleanups (Andy Lutomirski, Ingo Molnar) - misc cleanups/fixes. Thanks, Ingo ------------------> [ shortlog and diffstat generated manually ] Andy Lutomirski (2): x86/boot: Clarify what x86_legacy_features.reserve_bios_regions does x86/boot: Simplify EBDA-vs-BIOS reservation logic Baoquan He (2): x86/KASLR: Randomize virtual address separately x86/KASLR: Fix boot crash with certain memory configurations Borislav Petkov (1): x86/boot/64: Add forgotten end of function marker Ingo Molnar (2): Merge branch 'x86/mm' into x86/boot, to pick up dependencies x86/boot: Reorganize and clean up the BIOS area reservation code Kees Cook (4): x86/KASLR, x86/power: Remove x86 hibernation restrictions x86/boot: Refuse to build with data relocations x86/KASLR: Clarify identity map interface x86/KASLR: Extend kernel image physical address randomization to addresses larger than 4G Thomas Garnier (9): x86/mm: Refactor KASLR entropy functions x86/mm: Update physical mapping variable names x86/mm: Add PUD VA support for physical mapping x86/mm: Separate variable for trampoline PGD x86/mm: Implement ASLR for kernel memory regions x86/mm: Enable KASLR for physical mapping memory regions x86/mm: Enable KASLR for vmalloc memory regions x86/mm: Add memory hotplug support for KASLR memory randomization x86/mm: Do not reference phys addr beyond kernel Yinghai Lu (1): x86/KASLR: Allow randomization below the load address Documentation/kernel-parameters.txt | 10 +++--- Documentation/x86/x86_64/mm.txt | 4 +++ arch/x86/Kconfig | 59 ++++++++++++++++++++++++++------ arch/x86/boot/compressed/Makefile | 18 ++++++++++ arch/x86/boot/compressed/kaslr.c | 251 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------- arch/x86/boot/compressed/misc.c | 49 +++++++++++++++----------- arch/x86/boot/compressed/misc.h | 25 ++++++++------ arch/x86/boot/compressed/pagetable.c | 29 ++++++++++------ arch/x86/include/asm/bios_ebda.h | 2 +- arch/x86/include/asm/kaslr.h | 15 ++++++++ arch/x86/include/asm/page_64_types.h | 11 +++++- arch/x86/include/asm/pgtable.h | 17 ++++++++++ arch/x86/include/asm/pgtable_64_types.h | 15 +++++--- arch/x86/include/asm/x86_init.h | 7 ++-- arch/x86/kernel/ebda.c | 114 +++++++++++++++++++++++++++++++++++++------------------------ arch/x86/kernel/head32.c | 2 +- arch/x86/kernel/head64.c | 2 +- arch/x86/kernel/head_64.S | 3 +- arch/x86/kernel/platform-quirks.c | 4 +-- arch/x86/kernel/setup.c | 3 ++ arch/x86/lib/Makefile | 1 + arch/x86/lib/kaslr.c | 90 ++++++++++++++++++++++++++++++++++++++++++++++++ arch/x86/mm/Makefile | 1 + arch/x86/mm/dump_pagetables.c | 16 ++++++--- arch/x86/mm/init.c | 4 +++ arch/x86/mm/init_64.c | 167 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------- arch/x86/mm/kaslr.c | 172 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ arch/x86/mm/pageattr.c | 12 +++++-- arch/x86/realmode/init.c | 5 ++- kernel/power/hibernate.c | 6 ---- 30 files changed, 778 insertions(+), 336 deletions(-) create mode 100644 arch/x86/include/asm/kaslr.h create mode 100644 arch/x86/lib/kaslr.c create mode 100644 arch/x86/mm/kaslr.c