forked from rpms/kernel
		
	Linux v4.15-rc6-18-g00a5ae218d57
This commit is contained in:
		
							parent
							
								
									30a7a0723f
								
							
						
					
					
						commit
						e8e4bc8ffe
					
				
							
								
								
									
										2
									
								
								gitrev
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gitrev
									
									
									
									
									
								
							| @ -1 +1 @@ | ||||
| ead68f216110170ec729e2c4dec0aad6d38259d7 | ||||
| 00a5ae218d57741088068799b810416ac249a9ce | ||||
|  | ||||
							
								
								
									
										10
									
								
								kernel.spec
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								kernel.spec
									
									
									
									
									
								
							| @ -42,7 +42,7 @@ Summary: The Linux kernel | ||||
| # For non-released -rc kernels, this will be appended after the rcX and | ||||
| # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" | ||||
| # | ||||
| %global baserelease 3 | ||||
| %global baserelease 1 | ||||
| %global fedora_build %{baserelease} | ||||
| 
 | ||||
| # base_sublevel is the kernel version we're starting with and patching | ||||
| @ -69,7 +69,7 @@ Summary: The Linux kernel | ||||
| # The rc snapshot level | ||||
| %global rcrev 6 | ||||
| # The git snapshot level | ||||
| %define gitrev 0 | ||||
| %define gitrev 1 | ||||
| # Set rpm version accordingly | ||||
| %define rpmversion 4.%{upstream_sublevel}.0 | ||||
| %endif | ||||
| @ -647,9 +647,6 @@ Patch636: 0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch | ||||
| Patch637: 0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch | ||||
| Patch638: 0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch | ||||
| 
 | ||||
| # KPTI Fixups | ||||
| Patch639: kpti-fix.patch | ||||
| 
 | ||||
| # rhbz1514969, submitted upstream | ||||
| Patch640: 0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch | ||||
| 
 | ||||
| @ -2207,6 +2204,9 @@ fi | ||||
| # | ||||
| # | ||||
| %changelog | ||||
| * Thu Jan 04 2018 Laura Abbott <labbott@redhat.com> - 4.15.0-0.rc6.git1.1 | ||||
| - Linux v4.15-rc6-18-g00a5ae218d57 | ||||
| 
 | ||||
| * Thu Jan 04 2018 Laura Abbott <labbott@redhat.com> | ||||
| - Reenable debugging options. | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										129
									
								
								kpti-fix.patch
									
									
									
									
									
								
							
							
						
						
									
										129
									
								
								kpti-fix.patch
									
									
									
									
									
								
							| @ -1,129 +0,0 @@ | ||||
| From 52994c256df36fda9a715697431cba9daecb6b11 Mon Sep 17 00:00:00 2001 | ||||
| From: Thomas Gleixner <tglx@linutronix.de> | ||||
| Date: Wed, 3 Jan 2018 15:57:59 +0100 | ||||
| Subject: x86/pti: Make sure the user/kernel PTEs match | ||||
| 
 | ||||
| Meelis reported that his K8 Athlon64 emits MCE warnings when PTI is | ||||
| enabled: | ||||
| 
 | ||||
| [Hardware Error]: Error Addr: 0x0000ffff81e000e0 | ||||
| [Hardware Error]: MC1 Error: L1 TLB multimatch. | ||||
| [Hardware Error]: cache level: L1, tx: INSN | ||||
| 
 | ||||
| The address is in the entry area, which is mapped into kernel _AND_ user | ||||
| space. That's special because we switch CR3 while we are executing | ||||
| there. | ||||
| 
 | ||||
| User mapping: | ||||
| 0xffffffff81e00000-0xffffffff82000000           2M     ro         PSE     GLB x  pmd | ||||
| 
 | ||||
| Kernel mapping: | ||||
| 0xffffffff81000000-0xffffffff82000000          16M     ro         PSE         x  pmd | ||||
| 
 | ||||
| So the K8 is complaining that the TLB entries differ. They differ in the | ||||
| GLB bit. | ||||
| 
 | ||||
| Drop the GLB bit when installing the user shared mapping. | ||||
| 
 | ||||
| Fixes: 6dc72c3cbca0 ("x86/mm/pti: Share entry text PMD") | ||||
| Reported-by: Meelis Roos <mroos@linux.ee> | ||||
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> | ||||
| Tested-by: Meelis Roos <mroos@linux.ee> | ||||
| Cc: Borislav Petkov <bp@alien8.de> | ||||
| Cc: Tom Lendacky <thomas.lendacky@amd.com> | ||||
| Cc: stable@vger.kernel.org | ||||
| Link: https://lkml.kernel.org/r/alpine.DEB.2.20.1801031407180.1957@nanos | ||||
| ---
 | ||||
|  arch/x86/mm/pti.c | 3 ++- | ||||
|  1 file changed, 2 insertions(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/arch/x86/mm/pti.c b/arch/x86/mm/pti.c
 | ||||
| index bce8aea..2da28ba 100644
 | ||||
| --- a/arch/x86/mm/pti.c
 | ||||
| +++ b/arch/x86/mm/pti.c
 | ||||
| @@ -367,7 +367,8 @@ static void __init pti_setup_espfix64(void)
 | ||||
|  static void __init pti_clone_entry_text(void) | ||||
|  { | ||||
|  	pti_clone_pmds((unsigned long) __entry_text_start, | ||||
| -			(unsigned long) __irqentry_text_end, _PAGE_RW);
 | ||||
| +			(unsigned long) __irqentry_text_end,
 | ||||
| +		       _PAGE_RW | _PAGE_GLOBAL);
 | ||||
|  } | ||||
|   | ||||
|  /* | ||||
| -- 
 | ||||
| cgit v1.1 | ||||
| 
 | ||||
| From fea692ec9308084475c0c93bf74bcb2a35f3d417 Mon Sep 17 00:00:00 2001 | ||||
| From: Thomas Gleixner <tglx@linutronix.de> | ||||
| Date: Wed, 3 Jan 2018 19:52:04 +0100 | ||||
| Subject: [PATCH] CONFIG_PAGE_TABLE_ISOLATION=y on x86_64 causes gcc to | ||||
|  segfault when building x86_32 binaries | ||||
| 
 | ||||
| On Wed, 3 Jan 2018, Thomas Gleixner wrote: | ||||
| 
 | ||||
| > On Wed, 3 Jan 2018, Lars Wendler wrote:
 | ||||
| > > Am Wed, 3 Jan 2018 13:05:38 +0100 (CET)
 | ||||
| > > schrieb Thomas Gleixner <tglx@linutronix.de>:
 | ||||
| > > > Also can you please try Linus v4.15-rc6 with PTI enabled so we can see
 | ||||
| > > > whether that's a backport issue or a general one?
 | ||||
| > >
 | ||||
| > > Same problem with 4.15-rc6. So I suppose that means it's a general
 | ||||
| > > issue.
 | ||||
| > | ||||
| > Just a shot in the dark as I just decoded another issue on a AMD CPU. Can
 | ||||
| > you please try the patch below?
 | ||||
| 
 | ||||
| Ok. Found the real issue. This is a problem on AMD boxen. | ||||
| 
 | ||||
| Fix below. | ||||
| 
 | ||||
| Can Xen folks please have a look at that as well? | ||||
| 
 | ||||
| Thanks, | ||||
| 
 | ||||
| 	tglx | ||||
| 
 | ||||
| 8<------------------- | ||||
| 
 | ||||
| arch/x86/entry/entry_64_compat.S |   13 ++++++------- | ||||
|  1 file changed, 6 insertions(+), 7 deletions(-) | ||||
| ---
 | ||||
|  arch/x86/entry/entry_64_compat.S | 13 ++++++------- | ||||
|  1 file changed, 6 insertions(+), 7 deletions(-) | ||||
| 
 | ||||
| diff --git a/arch/x86/entry/entry_64_compat.S b/arch/x86/entry/entry_64_compat.S
 | ||||
| index 40f17009ec20..4c4b9545b848 100644
 | ||||
| --- a/arch/x86/entry/entry_64_compat.S
 | ||||
| +++ b/arch/x86/entry/entry_64_compat.S
 | ||||
| @@ -190,8 +190,13 @@ ENTRY(entry_SYSCALL_compat)
 | ||||
|  	/* Interrupts are off on entry. */ | ||||
|  	swapgs | ||||
|   | ||||
| -	/* Stash user ESP and switch to the kernel stack. */
 | ||||
| +	/* Stash user ESP */
 | ||||
|  	movl	%esp, %r8d | ||||
| +
 | ||||
| +	/* Use %rsp as scratch reg. User ESP is stashed in r8 */
 | ||||
| +	SWITCH_TO_KERNEL_CR3 scratch_reg=%rsp
 | ||||
| +	
 | ||||
| +	/* Switch to the kernel stack */
 | ||||
|  	movq	PER_CPU_VAR(cpu_current_top_of_stack), %rsp | ||||
|   | ||||
|  	/* Construct struct pt_regs on stack */ | ||||
| @@ -219,12 +224,6 @@ GLOBAL(entry_SYSCALL_compat_after_hwframe)
 | ||||
|  	pushq   $0			/* pt_regs->r14 = 0 */ | ||||
|  	pushq   $0			/* pt_regs->r15 = 0 */ | ||||
|   | ||||
| -	/*
 | ||||
| -	 * We just saved %rdi so it is safe to clobber.  It is not
 | ||||
| -	 * preserved during the C calls inside TRACE_IRQS_OFF anyway.
 | ||||
| -	 */
 | ||||
| -	SWITCH_TO_KERNEL_CR3 scratch_reg=%rdi
 | ||||
| -
 | ||||
|  	/* | ||||
|  	 * User mode is traced as though IRQs are on, and SYSENTER | ||||
|  	 * turned them off. | ||||
| -- 
 | ||||
| 2.14.3 | ||||
| 
 | ||||
							
								
								
									
										1
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								sources
									
									
									
									
									
								
							| @ -1,3 +1,4 @@ | ||||
| SHA512 (linux-4.14.tar.xz) = 77e43a02d766c3d73b7e25c4aafb2e931d6b16e870510c22cef0cdb05c3acb7952b8908ebad12b10ef982c6efbe286364b1544586e715cf38390e483927904d8 | ||||
| SHA512 (perf-man-4.14.tar.gz) = 76a9d8adc284cdffd4b3fbb060e7f9a14109267707ce1d03f4c3239cd70d8d164f697da3a0f90a363fbcac42a61d3c378afbcc2a86f112c501b9cb5ce74ef9f8 | ||||
| SHA512 (patch-4.15-rc6.xz) = 45f97ae4216403ee3b3a7e9575610ff422b39650494e82cb194c996511911f2d5a4fdc42456841a083a0d450821648b611d7fd3538cbc3d5c1b2bcbd9486f884 | ||||
| SHA512 (patch-4.15-rc6-git1.xz) = 519c0382d3b0e977fe899888fea1de18be5fddb86e738a6f4d29fbe0ff50e1fad5ed7f688607245e75bfbb3f25be27d9fc16b0bf661871059d2c6767f897d27b | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user