linux-brain/Documentation/x86
Kirill A. Shutemov d412ab7cfc x86/mm: Move LDT remap out of KASLR region on 5-level paging
commit d52888aa27 upstream

On 5-level paging the LDT remap area is placed in the middle of the KASLR
randomization region and it can overlap with the direct mapping, the
vmalloc or the vmap area.

The LDT mapping is per mm, so it cannot be moved into the P4D page table
next to the CPU_ENTRY_AREA without complicating PGD table allocation for
5-level paging.

The 4 PGD slot gap just before the direct mapping is reserved for
hypervisors, so it cannot be used.

Move the direct mapping one slot deeper and use the resulting gap for the
LDT remap area. The resulting layout is the same for 4 and 5 level paging.

[ tglx: Massaged changelog ]

Fixes: f55f0501cb ("x86/pti: Put the LDT in its own PGD if PTI is on")
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Andy Lutomirski <luto@kernel.org>
Cc: bp@alien8.de
Cc: hpa@zytor.com
Cc: dave.hansen@linux.intel.com
Cc: peterz@infradead.org
Cc: boris.ostrovsky@oracle.com
Cc: jgross@suse.com
Cc: bhe@redhat.com
Cc: willy@infradead.org
Cc: linux-mm@kvack.org
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20181026122856.66224-2-kirill.shutemov@linux.intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2018-11-27 16:10:50 +01:00
..
i386 doc: spelling error changes 2014-05-05 15:32:05 +02:00
x86_64 x86/mm: Move LDT remap out of KASLR region on 5-level paging 2018-11-27 16:10:50 +01:00
00-INDEX Documentation/: update 00-INDEX files 2014-02-10 16:01:40 -08:00
amd-memory-encryption.txt x86/cpu/AMD: Document AMD Secure Memory Encryption (SME) 2017-07-18 11:37:58 +02:00
boot.txt docs: fix locations of several documents that got moved 2016-10-24 08:12:35 -02:00
earlyprintk.txt doc: spelling error changes 2014-05-05 15:32:05 +02:00
entry_64.txt x86/asm/entry/64: Update path names 2015-07-02 11:08:50 +02:00
exception-tables.txt x86/mm: Expand the exception table logic to allow new handling options 2016-02-18 09:21:46 +01:00
intel_mpx.txt x86/Documentation: Fix various typos in Documentation/x86/ files 2016-07-01 10:00:10 +02:00
intel_rdt_ui.txt x86/intel_rdt: Show bitmask of shareable resource with other executing units 2017-08-01 22:41:30 +02:00
kernel-stacks Documentation/x86: Rename IRQSTACKSIZE to IRQ_STACK_SIZE 2015-08-24 11:42:41 -06:00
microcode.txt x86/microcode: Document the three loading methods 2017-07-25 11:26:24 +02:00
mtrr.txt x86/mm/mtrr: Remove kernel internal MTRR interfaces: unexport mtrr_add() and mtrr_del() 2015-08-28 10:09:28 +02:00
orc-unwinder.txt x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*' 2017-12-25 14:26:13 +01:00
pat.txt x86/pat: Document the PAT initialization sequence 2016-03-29 12:23:27 +02:00
protection-keys.txt x86/mm/pkeys: Fix typo in Documentation/x86/protection-keys.txt 2017-07-25 11:28:13 +02:00
pti.txt x86/pti: Document fix wrong index 2018-01-23 19:58:20 +01:00
tlb.txt x86/Documentation: Fix various typos in Documentation/x86/ files 2016-07-01 10:00:10 +02:00
topology.txt x86/topology: Document cpu_llc_id 2016-12-20 09:36:29 +01:00
usb-legacy-support.txt x86: doc: move x86-generic documentation from Doc/x86/i386 2008-07-22 15:34:38 -04:00
zero-page.txt Merge branch 'linus' into WIP.x86/boot, to fix up conflicts and to pick up updates 2017-03-01 09:02:26 +01:00