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

Commit 248716a2 authored by Runmin Wang's avatar Runmin Wang
Browse files

Merge remote-tracking branch 'remotes/origin/tmp-f2e8962c' into msm-4.14



* remotes/origin/tmp-f2e8962c:
  Linux 4.14.15
  MIPS: AR7: ensure the port type's FCR value is used
  net: mvpp2: do not disable GMAC padding
  mm, page_vma_mapped: Drop faulty pointer arithmetics in check_pte()
  x86/mm: Rework wbinvd, hlt operation in stop_this_cpu()
  x86/retpoline: Optimize inline assembler for vmexit_fill_RSB
  x86/pti: Document fix wrong index
  kprobes/x86: Disable optimizing on the function jumps to indirect thunk
  kprobes/x86: Blacklist indirect thunk functions for kprobes
  retpoline: Introduce start/end markers of indirect thunk
  x86/mce: Make machine check speculation protected
  arm64: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls
  KVM: arm/arm64: Check pagesize when allocating a hugepage at Stage 2
  MIPS: CM: Drop WARN_ON(vp != 0)
  alpha/PCI: Fix noname IRQ level detection
  x86: Use __nostackprotect for sme_encrypt_kernel
  dm crypt: fix error return code in crypt_ctr()
  dm crypt: wipe kernel key copy after IV initialization
  dm crypt: fix crash by adding missing check for auth key size
  dm integrity: don't store cipher request on the stack
  dm thin metadata: THIN_MAX_CONCURRENT_LOCKS should be 6
  dm btree: fix serious bug in btree_split_beneath()
  drm/vmwgfx: fix memory corruption with legacy/sou connectors
  workqueue: avoid hard lockups in show_workqueue_state()
  scsi: libsas: Disable asynchronous aborts for SATA devices
  libata: apply MAX_SEC_1024 to all LITEON EP1 series devices
  proc: fix coredump vs read /proc/*/stat race
  scripts/gdb/linux/tasks.py: fix get_thread_info
  i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA
  can: af_can: canfd_rcv(): replace WARN_ONCE by pr_warn_once
  can: af_can: can_rcv(): replace WARN_ONCE by pr_warn_once
  can: peak: fix potential bug in packet fragmentation
  ARM: dts: kirkwood: fix pin-muxing of MPP7 on OpenBlocks A7
  ARM: sunxi_defconfig: Enable CMA
  ARM64: dts: marvell: armada-cp110: Fix clock resources for various node
  phy: work around 'phys' references to usb-nop-xceiv devices
  tracing: Fix converting enum's from the map in trace_event_eval_update()
  Input: twl4030-vibra - fix sibling-node lookup
  Input: twl6040-vibra - fix child-node lookup
  Input: 88pm860x-ts - fix child-node lookup
  Input: synaptics-rmi4 - prevent UAF reported by KASAN
  Input: ALPS - fix multi-touch decoding on SS4 plus touchpads
  x86/mm: Encrypt the initrd earlier for BSP microcode update
  ARM: OMAP3: hwmod_data: add missing module_offs for MMC3
  x86/mm: Prepare sme_encrypt_kernel() for PAGE aligned encryption
  x86/mm: Centralize PMD flags in sme_encrypt_kernel()
  x86/mm: Use a struct to reduce parameters for SME PGD mapping
  x86/mm: Clean up register saving in the __enc_copy() assembly code
  x86/apic/vector: Fix off by one in error path
  pipe: avoid round_pipe_size() nr_pages overflow on 32-bit
  x86/tsc: Fix erroneous TSC rate on Skylake Xeon
  x86/tsc: Future-proof native_calibrate_tsc()
  x86/idt: Mark IDT tables __initconst
  x86/mm/pkeys: Fix fill_sig_info_pkey
  x86/intel_rdt/cqm: Prevent use after free
  module: Add retpoline tag to VERMAGIC
  x86/cpufeature: Move processor tracing out of scattered features
  objtool: Improve error message for bad file argument
  x86/retpoline: Add LFENCE to the retpoline/RSB filling RSB macros
  x86/retpoline: Fill RSB on context switch for affected CPUs
  x86/kasan: Panic if there is not enough memory to boot
  mmc: sdhci-esdhc-imx: Fix i.MX53 eSDHCv3 clock
  objtool: Fix seg fault with gold linker
  delayacct: Account blkio completion on the correct task
  iser-target: Fix possible use-after-free in connection establishment error
  af_key: fix buffer overread in parse_exthdrs()
  af_key: fix buffer overread in verify_address_len()
  timers: Unconditionally check deferrable base
  RDMA/mlx5: Fix out-of-bound access while querying AH
  IB/hfi1: Prevent a NULL dereference
  ALSA: hda - Apply the existing quirk to iMac 14,1
  ALSA: hda - Apply headphone noise quirk for another Dell XPS 13 variant
  ALSA: pcm: Remove yet superfluous WARN_ON()
  ALSA: seq: Make ioctls race-free
  futex: Prevent overflow by strengthen input validation
  futex: Avoid violating the 10th rule of futex
  powerpc/powernv: Check device-tree for RFI flush settings
  powerpc/pseries: Query hypervisor for RFI flush settings
  powerpc/64s: Support disabling RFI flush with no_rfi_flush and nopti
  powerpc/64s: Add support for RFI flush of L1-D cache
  powerpc/64s: Convert slb_miss_common to use RFI_TO_USER/KERNEL
  powerpc/64: Convert fast_exception_return to use RFI_TO_USER/KERNEL
  powerpc/64: Convert the syscall exit path to use RFI_TO_USER/KERNEL
  powerpc/64s: Simple RFI macro conversions
  powerpc/64: Add macros for annotating the destination of rfid/hrfid
  powerpc/pseries: Add H_GET_CPU_CHARACTERISTICS flags & wrapper
  objtool: Fix seg fault caused by missing parameter
  objtool: Fix Clang enum conversion warning
  objtool: Fix seg fault with clang-compiled objects
  drm/nouveau/disp/gf119: add missing drive vfunc ptr
  tools/objtool/Makefile: don't assume sync-check.sh is executable

  Conflicts:
	kernel/workqueue.c

Change-Id: If4b22ae36c4604ff7376074d2707b24fd7c1c442
Signed-off-by: default avatarRunmin Wang <runminw@codeaurora.org>
parents 17e77f21 f2e8962c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -78,7 +78,7 @@ this protection comes at a cost:
     non-PTI SYSCALL entry code, so requires mapping fewer
     things into the userspace page tables.  The downside is
     that stacks must be switched at entry time.
  d. Global pages are disabled for all kernel structures not
  c. Global pages are disabled for all kernel structures not
     mapped into both kernel and userspace page tables.  This
     feature of the MMU allows different processes to share TLB
     entries mapping the kernel.  Losing the feature means more
+1 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
VERSION = 4
PATCHLEVEL = 14
SUBLEVEL = 14
SUBLEVEL = 15
EXTRAVERSION =
NAME = Petit Gorille

+29 −6
Original line number Diff line number Diff line
@@ -102,6 +102,15 @@ sio_pci_route(void)
				   alpha_mv.sys.sio.route_tab);
}

static bool sio_pci_dev_irq_needs_level(const struct pci_dev *dev)
{
	if ((dev->class >> 16 == PCI_BASE_CLASS_BRIDGE) &&
	    (dev->class >> 8 != PCI_CLASS_BRIDGE_PCMCIA))
		return false;

	return true;
}

static unsigned int __init
sio_collect_irq_levels(void)
{
@@ -110,8 +119,7 @@ sio_collect_irq_levels(void)

	/* Iterate through the devices, collecting IRQ levels.  */
	for_each_pci_dev(dev) {
		if ((dev->class >> 16 == PCI_BASE_CLASS_BRIDGE) &&
		    (dev->class >> 8 != PCI_CLASS_BRIDGE_PCMCIA))
		if (!sio_pci_dev_irq_needs_level(dev))
			continue;

		if (dev->irq)
@@ -120,8 +128,7 @@ sio_collect_irq_levels(void)
	return level_bits;
}

static void __init
sio_fixup_irq_levels(unsigned int level_bits)
static void __sio_fixup_irq_levels(unsigned int level_bits, bool reset)
{
	unsigned int old_level_bits;

@@ -139,12 +146,21 @@ sio_fixup_irq_levels(unsigned int level_bits)
	 */
	old_level_bits = inb(0x4d0) | (inb(0x4d1) << 8);

	level_bits |= (old_level_bits & 0x71ff);
	if (reset)
		old_level_bits &= 0x71ff;

	level_bits |= old_level_bits;

	outb((level_bits >> 0) & 0xff, 0x4d0);
	outb((level_bits >> 8) & 0xff, 0x4d1);
}

static inline void
sio_fixup_irq_levels(unsigned int level_bits)
{
	__sio_fixup_irq_levels(level_bits, true);
}

static inline int
noname_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
@@ -181,7 +197,14 @@ noname_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
	const long min_idsel = 6, max_idsel = 14, irqs_per_slot = 5;
	int irq = COMMON_TABLE_LOOKUP, tmp;
	tmp = __kernel_extbl(alpha_mv.sys.sio.route_tab, irq);
	return irq >= 0 ? tmp : -1;

	irq = irq >= 0 ? tmp : -1;

	/* Fixup IRQ level if an actual IRQ mapping is detected */
	if (sio_pci_dev_irq_needs_level(dev) && irq >= 0)
		__sio_fixup_irq_levels(1 << irq, false);

	return irq;
}

static inline int
+8 −2
Original line number Diff line number Diff line
@@ -53,7 +53,8 @@
		};

		pinctrl: pin-controller@10000 {
			pinctrl-0 = <&pmx_dip_switches &pmx_gpio_header>;
			pinctrl-0 = <&pmx_dip_switches &pmx_gpio_header
				     &pmx_gpio_header_gpo>;
			pinctrl-names = "default";

			pmx_uart0: pmx-uart0 {
@@ -85,11 +86,16 @@
			 * ground.
			 */
			pmx_gpio_header: pmx-gpio-header {
				marvell,pins = "mpp17", "mpp7", "mpp29", "mpp28",
				marvell,pins = "mpp17", "mpp29", "mpp28",
					       "mpp35", "mpp34", "mpp40";
				marvell,function = "gpio";
			};

			pmx_gpio_header_gpo: pxm-gpio-header-gpo {
				marvell,pins = "mpp7";
				marvell,function = "gpo";
			};

			pmx_gpio_init: pmx-init {
				marvell,pins = "mpp38";
				marvell,function = "gpio";
+2 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ CONFIG_SMP=y
CONFIG_NR_CPUS=8
CONFIG_AEABI=y
CONFIG_HIGHMEM=y
CONFIG_CMA=y
CONFIG_ARM_APPENDED_DTB=y
CONFIG_ARM_ATAG_DTB_COMPAT=y
CONFIG_CPU_FREQ=y
@@ -33,6 +34,7 @@ CONFIG_CAN_SUN4I=y
# CONFIG_WIRELESS is not set
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_DMA_CMA=y
CONFIG_BLK_DEV_SD=y
CONFIG_ATA=y
CONFIG_AHCI_SUNXI=y
Loading