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

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

Merge 4.14.97 into android-4.14-p



Changes in 4.14.97
	amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs
	net: bridge: Fix ethernet header pointer before check skb forwardable
	net: Fix usage of pskb_trim_rcsum
	net: phy: mdio_bus: add missing device_del() in mdiobus_register() error handling
	net_sched: refetch skb protocol for each filter
	openvswitch: Avoid OOB read when parsing flow nlattrs
	vhost: log dirty page correctly
	net: ipv4: Fix memory leak in network namespace dismantle
	tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state
	ipfrag: really prevent allocation on netns exit
	mmc: Kconfig: Enable CONFIG_MMC_SDHCI_IO_ACCESSORS
	mei: me: add denverton innovation engine device IDs
	USB: serial: simple: add Motorola Tetra TPG2200 device id
	USB: serial: pl2303: add new PID to support PL2303TB
	ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages
	ASoC: rt5514-spi: Fix potential NULL pointer dereference
	ALSA: hda - Add mute LED support for HP ProBook 470 G5
	ARCv2: lib: memeset: fix doing prefetchw outside of buffer
	ARC: adjust memblock_reserve of kernel memory
	ARC: perf: map generic branches to correct hardware condition
	s390/early: improve machine detection
	s390/smp: fix CPU hotplug deadlock with CPU rescan
	char/mwave: fix potential Spectre v1 vulnerability
	staging: rtl8188eu: Add device code for D-Link DWA-121 rev B1
	tty: Handle problem if line discipline does not have receive_buf
	uart: Fix crash in uart_write and uart_put_char
	tty/n_hdlc: fix __might_sleep warning
	hv_balloon: avoid touching uninitialized struct page during tail onlining
	Drivers: hv: vmbus: Check for ring when getting debug info
	CIFS: Fix possible hang during async MTU reads and writes
	CIFS: Fix credits calculations for reads with errors
	CIFS: Fix credit calculation for encrypted reads with errors
	CIFS: Do not reconnect TCP session in add_credits()
	Input: xpad - add support for SteelSeries Stratus Duo
	compiler.h: enable builtin overflow checkers and add fallback code
	Input: uinput - fix undefined behavior in uinput_validate_absinfo()
	acpi/nfit: Block function zero DSMs
	acpi/nfit: Fix command-supported detection
	dm thin: fix passdown_double_checking_shared_status()
	dm crypt: fix parsing of extended IV arguments
	KVM: x86: Fix single-step debugging
	x86/pkeys: Properly copy pkey state at fork()
	x86/selftests/pkeys: Fork() to check for state being preserved
	x86/kaslr: Fix incorrect i8254 outb() parameters
	posix-cpu-timers: Unbreak timer rearming
	irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size
	can: dev: __can_get_echo_skb(): fix bogous check for non-existing skb by removing it
	can: bcm: check timer values before ktime conversion
	vt: invoke notifier on screen size change
	perf unwind: Unwind with libdw doesn't take symfs into account
	perf unwind: Take pgoff into account when reporting elf to libdwfl
	Revert "seccomp: add a selftest for get_metadata"
	net: stmmac: Use correct values in TQS/RQS fields
	KVM: x86: Fix a 4.14 backport regression related to userspace/guest FPU
	s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU
	nvmet-rdma: Add unlikely for response allocated check
	nvmet-rdma: fix null dereference under heavy load
	usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup
	xhci: Fix leaking USB3 shared_hcd at xhci removal
	ptp_kvm: probe for kvm guest availability
	x86/pvclock: add setter for pvclock_pvti_cpu0_va
	x86/xen/time: set pvclock flags on xen_time_init()
	x86/xen/time: setup vcpu 0 time info page
	x86/xen/time: Output xen sched_clock time from 0
	xen: Fix x86 sched_clock() interface for xen
	f2fs: read page index before freeing
	btrfs: fix error handling in btrfs_dev_replace_start
	btrfs: dev-replace: go back to suspended state if target device is missing
	Linux 4.14.97

Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parents 3e57d23a e1e364bf
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
VERSION = 4
PATCHLEVEL = 14
SUBLEVEL = 96
SUBLEVEL = 97
EXTRAVERSION =
NAME = Petit Gorille

+2 −1
Original line number Diff line number Diff line
@@ -103,7 +103,8 @@ static const char * const arc_pmu_ev_hw_map[] = {

	/* counts condition */
	[PERF_COUNT_HW_INSTRUCTIONS] = "iall",
	[PERF_COUNT_HW_BRANCH_INSTRUCTIONS] = "ijmp", /* Excludes ZOL jumps */
	/* All jump instructions that are taken */
	[PERF_COUNT_HW_BRANCH_INSTRUCTIONS] = "ijmptak",
	[PERF_COUNT_ARC_BPOK]         = "bpok",	  /* NP-NT, PT-T, PNT-NT */
#ifdef CONFIG_ISA_ARCV2
	[PERF_COUNT_HW_BRANCH_MISSES] = "bpmp",
+32 −8
Original line number Diff line number Diff line
@@ -7,11 +7,39 @@
 */

#include <linux/linkage.h>
#include <asm/cache.h>

#undef PREALLOC_NOT_AVAIL
/*
 * The memset implementation below is optimized to use prefetchw and prealloc
 * instruction in case of CPU with 64B L1 data cache line (L1_CACHE_SHIFT == 6)
 * If you want to implement optimized memset for other possible L1 data cache
 * line lengths (32B and 128B) you should rewrite code carefully checking
 * we don't call any prefetchw/prealloc instruction for L1 cache lines which
 * don't belongs to memset area.
 */

#if L1_CACHE_SHIFT == 6

.macro PREALLOC_INSTR	reg, off
	prealloc	[\reg, \off]
.endm

.macro PREFETCHW_INSTR	reg, off
	prefetchw	[\reg, \off]
.endm

#else

.macro PREALLOC_INSTR
.endm

.macro PREFETCHW_INSTR
.endm

#endif

ENTRY_CFI(memset)
	prefetchw [r0]		; Prefetch the write location
	PREFETCHW_INSTR	r0, 0	; Prefetch the first write location
	mov.f	0, r2
;;; if size is zero
	jz.d	[blink]
@@ -48,11 +76,8 @@ ENTRY_CFI(memset)

	lpnz	@.Lset64bytes
	;; LOOP START
#ifdef PREALLOC_NOT_AVAIL
	prefetchw [r3, 64]	;Prefetch the next write location
#else
	prealloc  [r3, 64]
#endif
	PREALLOC_INSTR	r3, 64	; alloc next line w/o fetching

#ifdef CONFIG_ARC_HAS_LL64
	std.ab	r4, [r3, 8]
	std.ab	r4, [r3, 8]
@@ -85,7 +110,6 @@ ENTRY_CFI(memset)
	lsr.f	lp_count, r2, 5 ;Last remaining  max 124 bytes
	lpnz	.Lset32bytes
	;; LOOP START
	prefetchw   [r3, 32]	;Prefetch the next write location
#ifdef CONFIG_ARC_HAS_LL64
	std.ab	r4, [r3, 8]
	std.ab	r4, [r3, 8]
+2 −1
Original line number Diff line number Diff line
@@ -138,7 +138,8 @@ void __init setup_arch_memory(void)
	 */

	memblock_add_node(low_mem_start, low_mem_sz, 0);
	memblock_reserve(low_mem_start, __pa(_end) - low_mem_start);
	memblock_reserve(CONFIG_LINUX_LINK_BASE,
			 __pa(_end) - CONFIG_LINUX_LINK_BASE);

#ifdef CONFIG_BLK_DEV_INITRD
	if (initrd_start)
+2 −2
Original line number Diff line number Diff line
@@ -226,10 +226,10 @@ static noinline __init void detect_machine_type(void)
	if (stsi(vmms, 3, 2, 2) || !vmms->count)
		return;

	/* Running under KVM? If not we assume z/VM */
	/* Detect known hypervisors */
	if (!memcmp(vmms->vm[0].cpi, "\xd2\xe5\xd4", 3))
		S390_lowcore.machine_flags |= MACHINE_FLAG_KVM;
	else
	else if (!memcmp(vmms->vm[0].cpi, "\xa9\x61\xe5\xd4", 4))
		S390_lowcore.machine_flags |= MACHINE_FLAG_VM;
}

Loading