Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 91891413 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge 4.14.13 into android-4.14



Changes in 4.14.13
	x86/mm: Set MODULES_END to 0xffffffffff000000
	x86/mm: Map cpu_entry_area at the same place on 4/5 level
	x86/kaslr: Fix the vaddr_end mess
	x86/events/intel/ds: Use the proper cache flush method for mapping ds buffers
	x86/tlb: Drop the _GPL from the cpu_tlbstate export
	x86/alternatives: Add missing '\n' at end of ALTERNATIVE inline asm
	x86/pti: Rename BUG_CPU_INSECURE to BUG_CPU_MELTDOWN
	kernel/acct.c: fix the acct->needcheck check in check_free_space()
	mm/mprotect: add a cond_resched() inside change_pmd_range()
	mm/sparse.c: wrong allocation for mem_section
	userfaultfd: clear the vma->vm_userfaultfd_ctx if UFFD_EVENT_FORK fails
	btrfs: fix refcount_t usage when deleting btrfs_delayed_nodes
	efi/capsule-loader: Reinstate virtual capsule mapping
	crypto: n2 - cure use after free
	crypto: chacha20poly1305 - validate the digest size
	crypto: pcrypt - fix freeing pcrypt instances
	crypto: chelsio - select CRYPTO_GF128MUL
	drm/i915: Disable DC states around GMBUS on GLK
	drm/i915: Apply Display WA #1183 on skl, kbl, and cfl
	sunxi-rsb: Include OF based modalias in device uevent
	fscache: Fix the default for fscache_maybe_release_page()
	x86 / CPU: Avoid unnecessary IPIs in arch_freq_get_on_cpu()
	x86 / CPU: Always show current CPU frequency in /proc/cpuinfo
	kernel/signal.c: protect the traced SIGNAL_UNKILLABLE tasks from SIGKILL
	kernel/signal.c: protect the SIGNAL_UNKILLABLE tasks from !sig_kernel_only() signals
	kernel/signal.c: remove the no longer needed SIGNAL_UNKILLABLE check in complete_signal()
	iommu/arm-smmu-v3: Don't free page table ops twice
	iommu/arm-smmu-v3: Cope with duplicated Stream IDs
	ARC: uaccess: dont use "l" gcc inline asm constraint modifier
	powerpc/mm: Fix SEGV on mapped region to return SEGV_ACCERR
	Input: elantech - add new icbody type 15
	x86/microcode/AMD: Add support for fam17h microcode loading
	apparmor: fix regression in mount mediation when feature set is pinned
	parisc: Fix alignment of pa_tlb_lock in assembly on 32-bit SMP kernel
	parisc: qemu idle sleep support
	mtd: nand: pxa3xx: Fix READOOB implementation
	KVM: s390: fix cmma migration for multiple memory slots
	KVM: s390: prevent buffer overrun on memory hotplug during migration
	Linux 4.14.13

Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parents df9bcb79 b8447222
Loading
Loading
Loading
Loading
+11 −7
Original line number Diff line number Diff line
@@ -12,8 +12,9 @@ ffffea0000000000 - ffffeaffffffffff (=40 bits) virtual memory map (1TB)
... unused hole ...
ffffec0000000000 - fffffbffffffffff (=44 bits) kasan shadow memory (16TB)
... unused hole ...
fffffe0000000000 - fffffe7fffffffff (=39 bits) LDT remap for PTI
fffffe8000000000 - fffffeffffffffff (=39 bits) cpu_entry_area mapping
				    vaddr_end for KASLR
fffffe0000000000 - fffffe7fffffffff (=39 bits) cpu_entry_area mapping
fffffe8000000000 - fffffeffffffffff (=39 bits) LDT remap for PTI
ffffff0000000000 - ffffff7fffffffff (=39 bits) %esp fixup stacks
... unused hole ...
ffffffef00000000 - fffffffeffffffff (=64 GB) EFI region mapping space
@@ -37,13 +38,15 @@ ffd4000000000000 - ffd5ffffffffffff (=49 bits) virtual memory map (512TB)
... unused hole ...
ffdf000000000000 - fffffc0000000000 (=53 bits) kasan shadow memory (8PB)
... unused hole ...
fffffe8000000000 - fffffeffffffffff (=39 bits) cpu_entry_area mapping
				    vaddr_end for KASLR
fffffe0000000000 - fffffe7fffffffff (=39 bits) cpu_entry_area mapping
... unused hole ...
ffffff0000000000 - ffffff7fffffffff (=39 bits) %esp fixup stacks
... unused hole ...
ffffffef00000000 - fffffffeffffffff (=64 GB) EFI region mapping space
... unused hole ...
ffffffff80000000 - ffffffff9fffffff (=512 MB)  kernel text mapping, from phys 0
ffffffffa0000000 - [fixmap start]   (~1526 MB) module mapping space
ffffffffa0000000 - fffffffffeffffff (1520 MB) module mapping space
[fixmap start]   - ffffffffff5fffff kernel-internal fixmap range
ffffffffff600000 - ffffffffff600fff (=4 kB) legacy vsyscall ABI
ffffffffffe00000 - ffffffffffffffff (=2 MB) unused hole
@@ -67,9 +70,10 @@ memory window (this size is arbitrary, it can be raised later if needed).
The mappings are not part of any other kernel PGD and are only available
during EFI runtime calls.

The module mapping space size changes based on the CONFIG requirements for the
following fixmap section.

Note that if CONFIG_RANDOMIZE_MEMORY is enabled, the direct mapping of all
physical memory, vmalloc/ioremap space and virtual memory map are randomized.
Their order is preserved but their base will be offset early at boot time.

Be very careful vs. KASLR when changing anything here. The KASLR address
range must not overlap with anything except the KASAN shadow area, which is
correct as KASAN disables KASLR.
+1 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
VERSION = 4
PATCHLEVEL = 14
SUBLEVEL = 12
SUBLEVEL = 13
EXTRAVERSION =
NAME = Petit Gorille

+3 −2
Original line number Diff line number Diff line
@@ -668,6 +668,7 @@ __arc_strncpy_from_user(char *dst, const char __user *src, long count)
		return 0;

	__asm__ __volatile__(
	"	mov	lp_count, %5		\n"
	"	lp	3f			\n"
	"1:	ldb.ab  %3, [%2, 1]		\n"
	"	breq.d	%3, 0, 3f               \n"
@@ -684,8 +685,8 @@ __arc_strncpy_from_user(char *dst, const char __user *src, long count)
	"	.word   1b, 4b			\n"
	"	.previous			\n"
	: "+r"(res), "+r"(dst), "+r"(src), "=r"(val)
	: "g"(-EFAULT), "l"(count)
	: "memory");
	: "g"(-EFAULT), "r"(count)
	: "lp_count", "lp_start", "lp_end", "memory");

	return res;
}
+2 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
   for the semaphore.  */

#define __PA_LDCW_ALIGNMENT	16
#define __PA_LDCW_ALIGN_ORDER	4
#define __ldcw_align(a) ({					\
	unsigned long __ret = (unsigned long) &(a)->lock[0];	\
	__ret = (__ret + __PA_LDCW_ALIGNMENT - 1)		\
@@ -29,6 +30,7 @@
   ldcd). */

#define __PA_LDCW_ALIGNMENT	4
#define __PA_LDCW_ALIGN_ORDER	2
#define __ldcw_align(a) (&(a)->slock)
#define __LDCW	"ldcw,co"

+11 −2
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@
#include <asm/pgtable.h>
#include <asm/signal.h>
#include <asm/unistd.h>
#include <asm/ldcw.h>
#include <asm/thread_info.h>

#include <linux/linkage.h>
@@ -46,6 +47,14 @@
#endif

	.import		pa_tlb_lock,data
	.macro  load_pa_tlb_lock reg
#if __PA_LDCW_ALIGNMENT > 4
	load32	PA(pa_tlb_lock) + __PA_LDCW_ALIGNMENT-1, \reg
	depi	0,31,__PA_LDCW_ALIGN_ORDER, \reg
#else
	load32	PA(pa_tlb_lock), \reg
#endif
	.endm

	/* space_to_prot macro creates a prot id from a space id */

@@ -457,7 +466,7 @@
	.macro		tlb_lock	spc,ptp,pte,tmp,tmp1,fault
#ifdef CONFIG_SMP
	cmpib,COND(=),n	0,\spc,2f
	load32		PA(pa_tlb_lock),\tmp
	load_pa_tlb_lock \tmp
1:	LDCW		0(\tmp),\tmp1
	cmpib,COND(=)	0,\tmp1,1b
	nop
@@ -480,7 +489,7 @@
	/* Release pa_tlb_lock lock. */
	.macro		tlb_unlock1	spc,tmp
#ifdef CONFIG_SMP
	load32		PA(pa_tlb_lock),\tmp
	load_pa_tlb_lock \tmp
	tlb_unlock0	\spc,\tmp
#endif
	.endm
Loading