Gentoo Archives: gentoo-commits

From: Alice Ferrazzi <alicef@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/linux-patches:4.14 commit in: /
Date: Thu, 04 Jan 2018 07:32:26
Message-Id: 1515050516.f2f997ab5fd674039bdfa83e02eaaaceaf1de1b1.alicef@gentoo
1 commit: f2f997ab5fd674039bdfa83e02eaaaceaf1de1b1
2 Author: Alice Ferrazzi <alicef <AT> gentoo <DOT> org>
3 AuthorDate: Thu Jan 4 07:21:56 2018 +0000
4 Commit: Alice Ferrazzi <alicef <AT> gentoo <DOT> org>
5 CommitDate: Thu Jan 4 07:21:56 2018 +0000
6 URL: https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=f2f997ab
7
8 x86/pti: Make sure the user/kernel PTEs match
9
10 0000_README | 4 ++
11 1701_make_sure_the_user_kernel_PTEs_match.patch | 56 +++++++++++++++++++++++++
12 2 files changed, 60 insertions(+)
13
14 diff --git a/0000_README b/0000_README
15 index 946c936..0cab5bc 100644
16 --- a/0000_README
17 +++ b/0000_README
18 @@ -99,6 +99,10 @@ Patch: 1700_do_not_enable_PTI_on_AMD_processor.patch
19 From: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/patch/?id=694d99d40972f12e59a3696effee8a376b79d7c8
20 Desc: x86/cpu, x86/pti: Do not enable PTI on AMD processors.
21
22 +Patch: 1701_make_sure_the_user_kernel_PTEs_match.patch
23 +From: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/patch/?id=52994c256df36fda9a715697431cba9daecb6b11
24 +Desc: x86/pti: Make sure the user/kernel PTEs match
25 +
26 Patch: 2100_bcache-data-corruption-fix-for-bi-partno.patch
27 From: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=62530ed8b1d07a45dec94d46e521c0c6c2d476e6
28 Desc: bio: ensure __bio_clone_fast copies bi_partno.
29
30 diff --git a/1701_make_sure_the_user_kernel_PTEs_match.patch b/1701_make_sure_the_user_kernel_PTEs_match.patch
31 new file mode 100644
32 index 0000000..601940b
33 --- /dev/null
34 +++ b/1701_make_sure_the_user_kernel_PTEs_match.patch
35 @@ -0,0 +1,56 @@
36 +From 52994c256df36fda9a715697431cba9daecb6b11 Mon Sep 17 00:00:00 2001
37 +From: Thomas Gleixner <tglx@××××××××××.de>
38 +Date: Wed, 3 Jan 2018 15:57:59 +0100
39 +Subject: x86/pti: Make sure the user/kernel PTEs match
40 +
41 +Meelis reported that his K8 Athlon64 emits MCE warnings when PTI is
42 +enabled:
43 +
44 +[Hardware Error]: Error Addr: 0x0000ffff81e000e0
45 +[Hardware Error]: MC1 Error: L1 TLB multimatch.
46 +[Hardware Error]: cache level: L1, tx: INSN
47 +
48 +The address is in the entry area, which is mapped into kernel _AND_ user
49 +space. That's special because we switch CR3 while we are executing
50 +there.
51 +
52 +User mapping:
53 +0xffffffff81e00000-0xffffffff82000000 2M ro PSE GLB x pmd
54 +
55 +Kernel mapping:
56 +0xffffffff81000000-0xffffffff82000000 16M ro PSE x pmd
57 +
58 +So the K8 is complaining that the TLB entries differ. They differ in the
59 +GLB bit.
60 +
61 +Drop the GLB bit when installing the user shared mapping.
62 +
63 +Fixes: 6dc72c3cbca0 ("x86/mm/pti: Share entry text PMD")
64 +Reported-by: Meelis Roos <mroos@×××××.ee>
65 +Signed-off-by: Thomas Gleixner <tglx@××××××××××.de>
66 +Tested-by: Meelis Roos <mroos@×××××.ee>
67 +Cc: Borislav Petkov <bp@××××××.de>
68 +Cc: Tom Lendacky <thomas.lendacky@×××.com>
69 +Cc: stable@×××××××××××.org
70 +Link: https://lkml.kernel.org/r/alpine.DEB.2.20.1801031407180.1957@nanos
71 +---
72 + arch/x86/mm/pti.c | 3 ++-
73 + 1 file changed, 2 insertions(+), 1 deletion(-)
74 +
75 +diff --git a/arch/x86/mm/pti.c b/arch/x86/mm/pti.c
76 +index bce8aea..2da28ba 100644
77 +--- a/arch/x86/mm/pti.c
78 ++++ b/arch/x86/mm/pti.c
79 +@@ -367,7 +367,8 @@ static void __init pti_setup_espfix64(void)
80 + static void __init pti_clone_entry_text(void)
81 + {
82 + pti_clone_pmds((unsigned long) __entry_text_start,
83 +- (unsigned long) __irqentry_text_end, _PAGE_RW);
84 ++ (unsigned long) __irqentry_text_end,
85 ++ _PAGE_RW | _PAGE_GLOBAL);
86 + }
87 +
88 + /*
89 +--
90 +cgit v1.1
91 +