Received: by 10.223.185.116 with SMTP id b49csp550799wrg; Wed, 14 Feb 2018 03:20:33 -0800 (PST) X-Google-Smtp-Source: AH8x2278scw4wOANS3B3dXMqMtBM44juBgK81sUEis76KMUossBHQC9swvcmiRtOJcYU6P4P7q+u X-Received: by 10.98.174.26 with SMTP id q26mr4393794pff.92.1518607233743; Wed, 14 Feb 2018 03:20:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518607233; cv=none; d=google.com; s=arc-20160816; b=dMmgwir0Womq+bewX2bwJniXnBw1Q3G5OdFC9NHQa7S1Wfq8fODSg7yQqIvbAqz3FL ssqOjov8DK61j6WR0hT950/snW2uFBeBpfn3LKtzBArBz+2mmWyVTNpgRgJ+2KU/rgJw HfkGf2PpL5xV78Zoz9bjip4OkE1EWFBnlW/NmAggMvXp/aIbSNluYvMf1fVEkWOspWlD 1zHpCadgS6s000aPnrLfsT4CuKVqsqtJUvHIGsuHsRxslK7mObOWYQrT0J9ENI/mxlhT se6wSuyBUCQNkVXIfRSwrY25WHuhJ0BsWoF6ukFVaABgZTGMEzBmOg5GEv57dxsX+uHq 3AKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=QimnABpdwMEpNJ8Z/+kc0iGgldDayentzlIlNT2F11w=; b=sOxpm5N9pbKvAL9Ia8bEsGaWXLETPRII3QmqPiA0TShi57/afMJ64+I00fLVwIR4k6 17Aikl4JWbG36XQ5mR+/oBYUXy+wJeviN33L7dhm/+aR5Z6Y88NzV4jJT4H0aDf6NfmV 1wUfLpCrFyvvvp0VUEPQm5a0cBqlhIp4caFkFT4Q5m4OQGZJZniLyy4QHxtufengYsyK Ej4mrcNvxCIAECcyMtwdglutfGIUT2i5VO1Y500yuAz7FKEIJ3vBCnHhg4CndiSjKyvF LkdPO0Ai5AQQ/6Isx6qq5zgqnYWuRRxmbrTpQVvnp/AmxHzBM2/GyfgcwDgg9W2rtbLg 0uPg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b10si1316578pgf.613.2018.02.14.03.20.19; Wed, 14 Feb 2018 03:20:33 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S967387AbeBNLRN (ORCPT + 99 others); Wed, 14 Feb 2018 06:17:13 -0500 Received: from mga11.intel.com ([192.55.52.93]:37976 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S967252AbeBNLRM (ORCPT ); Wed, 14 Feb 2018 06:17:12 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Feb 2018 03:17:12 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,512,1511856000"; d="scan'208";a="201054937" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga005.jf.intel.com with ESMTP; 14 Feb 2018 03:17:09 -0800 Received: by black.fi.intel.com (Postfix, from userid 1000) id 42392FC; Wed, 14 Feb 2018 13:17:08 +0200 (EET) From: "Kirill A. Shutemov" To: Ingo Molnar , x86@kernel.org, Thomas Gleixner , "H. Peter Anvin" Cc: Linus Torvalds , Andy Lutomirski , Borislav Petkov , Andi Kleen , linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Kirill A. Shutemov" Subject: [PATCH 0/9] x86/mm: Dynamic memory layout Date: Wed, 14 Feb 2018 14:16:47 +0300 Message-Id: <20180214111656.88514-1-kirill.shutemov@linux.intel.com> X-Mailer: git-send-email 2.15.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is the next batch of patches required to bring boot-time switching between 4- and 5-level paging. Please review and consider applying. Patches in this patchset makes memory layout dynamic enough to be able to switch between paging modes at boot-time. Ingo, it worth noticing that we discussed some parts of the patchset before (back in October) and had disagrement on how to handle situation. You can read my position on the matter by the link[1]. Some changes made in this patchset can be replaced by patching constants in code once we have infrastructure for this. [1] http://lkml.kernel.org/r/20171031120429.ehaqy2iciewcij35@node.shutemov.name Kirill A. Shutemov (9): x86/mm/64: Make __PHYSICAL_MASK_SHIFT always 52 mm/zsmalloc: Prepare to variable MAX_PHYSMEM_BITS x86/mm: Make virtual memory layout movable for CONFIG_X86_5LEVEL x86: Introduce pgtable_l5_enabled x86/mm: Make LDT_BASE_ADDR dynamic x86/mm: Make PGDIR_SHIFT and PTRS_PER_P4D variable x86/mm: Make MAX_PHYSADDR_BITS and MAX_PHYSMEM_BITS dynamic x86/mm: Make __VIRTUAL_MASK_SHIFT dynamic x86/mm: Adjust virtual address space layout in early boot arch/x86/Kconfig | 9 ++++ arch/x86/boot/compressed/kaslr.c | 14 ++++++ arch/x86/entry/entry_64.S | 12 ++++++ arch/x86/include/asm/kaslr.h | 4 -- arch/x86/include/asm/page_64.h | 4 ++ arch/x86/include/asm/page_64_types.h | 20 ++++----- arch/x86/include/asm/pgtable-3level_types.h | 1 + arch/x86/include/asm/pgtable_32.h | 2 + arch/x86/include/asm/pgtable_32_types.h | 2 + arch/x86/include/asm/pgtable_64_types.h | 67 ++++++++++++++++++----------- arch/x86/include/asm/sparsemem.h | 9 +--- arch/x86/kernel/cpu/mcheck/mce.c | 18 +++----- arch/x86/kernel/head64.c | 57 ++++++++++++++++++++++-- arch/x86/kernel/head_64.S | 2 +- arch/x86/kernel/setup.c | 5 +-- arch/x86/mm/dump_pagetables.c | 32 +++++++++----- arch/x86/mm/init_64.c | 2 +- arch/x86/mm/kasan_init_64.c | 2 +- arch/x86/mm/kaslr.c | 23 ++++------ arch/x86/platform/efi/efi_64.c | 4 +- include/asm-generic/5level-fixup.h | 1 + include/asm-generic/pgtable-nop4d.h | 9 ++-- include/linux/kasan.h | 2 +- mm/kasan/kasan_init.c | 2 +- mm/zsmalloc.c | 13 +++--- 25 files changed, 208 insertions(+), 108 deletions(-) -- 2.15.1