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

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

Merge 4.14.328 into android-4.14-stable



Changes in 4.14.328
	RDMA/cxgb4: Check skb value for failure to allocate
	HID: logitech-hidpp: Fix kernel crash on receiver USB disconnect
	drm: etvnaviv: fix bad backport leading to warning
	ieee802154: ca8210: Fix a potential UAF in ca8210_probe
	drm/vmwgfx: fix typo of sizeof argument
	ixgbe: fix crash with empty VF macvlan list
	nfc: nci: assert requested protocol is valid
	workqueue: Override implicit ordered attribute in workqueue_apply_unbound_cpumask()
	usb: xhci: xhci-ring: Use sysdev for mapping bounce buffer
	net: usb: dm9601: fix uninitialized variable use in dm9601_mdio_read
	usb: musb: Get the musb_qh poniter after musb_giveback
	usb: musb: Modify the "HWVers" register address
	iio: pressure: bmp280: Fix NULL pointer exception
	iio: pressure: ms5611: ms5611_prom_is_valid false negative bug
	mcb: remove is_added flag from mcb_device struct
	ceph: fix incorrect revoked caps assert in ceph_fill_file_size()
	Input: powermate - fix use-after-free in powermate_config_complete
	Input: xpad - add PXN V900 support
	cgroup: Remove duplicates in cgroup v1 tasks file
	pinctrl: avoid unsafe code pattern in find_pinctrl()
	usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
	usb: gadget: ncm: Handle decoding of multiple NTB's in unwrap call
	x86/cpu: Fix AMD erratum #1485 on Zen4-based CPUs
	usb: hub: Guard against accesses to uninitialized BOS descriptors
	Bluetooth: hci_event: Ignore NULL link key
	Bluetooth: Reject connection with the device which has same BD_ADDR
	Bluetooth: Fix a refcnt underflow problem for hci_conn
	Bluetooth: vhci: Fix race when opening vhci device
	Bluetooth: hci_event: Fix coding style
	Bluetooth: avoid memcmp() out of bounds warning
	nfc: nci: fix possible NULL pointer dereference in send_acknowledge()
	regmap: fix NULL deref on lookup
	KVM: x86: Mask LVTPC when handling a PMI
	netfilter: nft_payload: fix wrong mac header matching
	xfrm: fix a data-race in xfrm_gen_index()
	net: ipv4: fix return value check in esp_remove_trailer
	net: ipv6: fix return value check in esp_remove_trailer
	net: rfkill: gpio: prevent value glitch during probe
	net: usb: smsc95xx: Fix an error code in smsc95xx_reset()
	i40e: prevent crash on probe if hw registers have invalid values
	ARM: dts: ti: omap: Fix noisy serial with overrun-throttle-ms for mapphone
	btrfs: initialize start_slot in btrfs_log_prealloc_extents
	i2c: mux: Avoid potential false error message in i2c_mux_add_adapter
	overlayfs: set ctime when setting mtime and atime
	gpio: timberdale: Fix potential deadlock on &tgpio->lock
	ata: libata-eh: Fix compilation warning in ata_eh_link_report()
	tracing: relax trace_event_eval_update() execution with cond_resched()
	HID: holtek: fix slab-out-of-bounds Write in holtek_kbd_input_event
	Bluetooth: Avoid redundant authentication
	Bluetooth: hci_core: Fix build warnings
	wifi: mac80211: allow transmitting EAPOL frames with tainted key
	wifi: cfg80211: avoid leaking stack data into trace
	sky2: Make sure there is at least one frag_addr available
	mmc: core: Capture correct oemid-bits for eMMC cards
	Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()"
	ACPI: irq: Fix incorrect return value in acpi_register_gsi()
	USB: serial: option: add Telit LE910C4-WWX 0x1035 composition
	USB: serial: option: add entry for Sierra EM9191 with new firmware
	USB: serial: option: add Fibocom to DELL custom modem FM101R-GL
	perf: Disallow mis-matched inherited group reads
	s390/pci: fix iommu bitmap allocation
	gpio: vf610: set value before the direction to avoid a glitch
	Bluetooth: hci_sock: fix slab oob read in create_monitor_event
	Bluetooth: hci_sock: Correctly bounds check and pad HCI_MON_NEW_INDEX name
	Bluetooth: hci_event: Fix using memcmp when comparing keys
	Linux 4.14.328

Change-Id: I0ad6691640e3f75a6016e2004f005414a50dc7b9
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parents 27c2ecdf 89d93e9d
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
# SPDX-License-Identifier: GPL-2.0
VERSION = 4
VERSION = 4
PATCHLEVEL = 14
PATCHLEVEL = 14
SUBLEVEL = 327
SUBLEVEL = 328
EXTRAVERSION =
EXTRAVERSION =
NAME = Petit Gorille
NAME = Petit Gorille


+1 −0
Original line number Original line Diff line number Diff line
@@ -533,6 +533,7 @@
&uart3 {
&uart3 {
	interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
	interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
			       &omap4_pmx_core 0x17c>;
			       &omap4_pmx_core 0x17c>;
	overrun-throttle-ms = <500>;
};
};


&uart4 {
&uart4 {
+14 −2
Original line number Original line Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/dma-mapping.h>
#include <linux/dma-mapping.h>
#include <linux/vmalloc.h>
#include <linux/vmalloc.h>
#include <linux/pci.h>
#include <linux/pci.h>
#include <linux/overflow.h>
#include <asm/pci_dma.h>
#include <asm/pci_dma.h>


#define S390_MAPPING_ERROR		(~(dma_addr_t) 0x0)
#define S390_MAPPING_ERROR		(~(dma_addr_t) 0x0)
@@ -528,6 +529,17 @@ static void s390_dma_unmap_sg(struct device *dev, struct scatterlist *sg,
	}
	}
}
}


static unsigned long *bitmap_vzalloc(size_t bits, gfp_t flags)
{
	size_t n = BITS_TO_LONGS(bits);
	size_t bytes;

	if (unlikely(check_mul_overflow(n, sizeof(unsigned long), &bytes)))
		return NULL;

	return vzalloc(bytes);
}
	
static int s390_mapping_error(struct device *dev, dma_addr_t dma_addr)
static int s390_mapping_error(struct device *dev, dma_addr_t dma_addr)
{
{
	return dma_addr == S390_MAPPING_ERROR;
	return dma_addr == S390_MAPPING_ERROR;
@@ -568,13 +580,13 @@ int zpci_dma_init_device(struct zpci_dev *zdev)
				zdev->end_dma - zdev->start_dma + 1);
				zdev->end_dma - zdev->start_dma + 1);
	zdev->end_dma = zdev->start_dma + zdev->iommu_size - 1;
	zdev->end_dma = zdev->start_dma + zdev->iommu_size - 1;
	zdev->iommu_pages = zdev->iommu_size >> PAGE_SHIFT;
	zdev->iommu_pages = zdev->iommu_size >> PAGE_SHIFT;
	zdev->iommu_bitmap = vzalloc(zdev->iommu_pages / 8);
	zdev->iommu_bitmap = bitmap_vzalloc(zdev->iommu_pages, GFP_KERNEL);
	if (!zdev->iommu_bitmap) {
	if (!zdev->iommu_bitmap) {
		rc = -ENOMEM;
		rc = -ENOMEM;
		goto free_dma_table;
		goto free_dma_table;
	}
	}
	if (!s390_iommu_strict) {
	if (!s390_iommu_strict) {
		zdev->lazy_bitmap = vzalloc(zdev->iommu_pages / 8);
		zdev->lazy_bitmap = bitmap_vzalloc(zdev->iommu_pages, GFP_KERNEL);
		if (!zdev->lazy_bitmap) {
		if (!zdev->lazy_bitmap) {
			rc = -ENOMEM;
			rc = -ENOMEM;
			goto free_bitmap;
			goto free_bitmap;
+4 −0
Original line number Original line Diff line number Diff line
@@ -442,6 +442,10 @@


#define MSR_AMD64_VIRT_SPEC_CTRL	0xc001011f
#define MSR_AMD64_VIRT_SPEC_CTRL	0xc001011f


/* Zen4 */
#define MSR_ZEN4_BP_CFG			0xc001102e
#define MSR_ZEN4_BP_CFG_SHARED_BTB_FIX_BIT 5

/* Fam 17h MSRs */
/* Fam 17h MSRs */
#define MSR_F17H_IRPERF			0xc00000e9
#define MSR_F17H_IRPERF			0xc00000e9


+9 −0
Original line number Original line Diff line number Diff line
@@ -24,6 +24,7 @@


static const int amd_erratum_383[];
static const int amd_erratum_383[];
static const int amd_erratum_400[];
static const int amd_erratum_400[];
static const int amd_erratum_1485[];
static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum);
static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum);


/*
/*
@@ -974,6 +975,10 @@ static void init_amd(struct cpuinfo_x86 *c)
	/* AMD CPUs don't reset SS attributes on SYSRET, Xen does. */
	/* AMD CPUs don't reset SS attributes on SYSRET, Xen does. */
	if (!cpu_has(c, X86_FEATURE_XENPV))
	if (!cpu_has(c, X86_FEATURE_XENPV))
		set_cpu_bug(c, X86_BUG_SYSRET_SS_ATTRS);
		set_cpu_bug(c, X86_BUG_SYSRET_SS_ATTRS);

	if (!cpu_has(c, X86_FEATURE_HYPERVISOR) &&
	    cpu_has_amd_erratum(c, amd_erratum_1485))
		msr_set_bit(MSR_ZEN4_BP_CFG, MSR_ZEN4_BP_CFG_SHARED_BTB_FIX_BIT);
}
}


#ifdef CONFIG_X86_32
#ifdef CONFIG_X86_32
@@ -1102,6 +1107,10 @@ static const int amd_erratum_383[] =
	AMD_OSVW_ERRATUM(3, AMD_MODEL_RANGE(0x10, 0, 0, 0xff, 0xf));
	AMD_OSVW_ERRATUM(3, AMD_MODEL_RANGE(0x10, 0, 0, 0xff, 0xf));




static const int amd_erratum_1485[] =
	AMD_LEGACY_ERRATUM(AMD_MODEL_RANGE(0x19, 0x10, 0x0, 0x1f, 0xf),
			   AMD_MODEL_RANGE(0x19, 0x60, 0x0, 0xaf, 0xf));

static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum)
static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum)
{
{
	int osvw_id = *erratum++;
	int osvw_id = *erratum++;
Loading