Commit Graph

183 Commits

Author SHA1 Message Date
Ivaylo Georgiev
0f16018c8a Merge android-4.19-q.80 (fd673e8) into msm-4.19
* refs/heads/tmp-fd673e8:
  Linux 4.19.80
  perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization
  PCI: vmd: Fix config addressing when using bus offsets
  x86/asm: Fix MWAITX C-state hint value
  hwmon: Fix HWMON_P_MIN_ALARM mask
  tracing: Get trace_array reference for available_tracers files
  ftrace: Get a reference counter for the trace_array on filter files
  tracing/hwlat: Don't ignore outer-loop duration when calculating max_latency
  tracing/hwlat: Report total time spent in all NMIs during the sample
  arm64/sve: Fix wrong free for task->thread.sve_state
  media: stkwebcam: fix runtime PM after driver unbind
  Fix the locking in dcache_readdir() and friends
  arm64: topology: Use PPTT to determine if PE is a thread
  ACPI/PPTT: Add support for ACPI 6.3 thread flag
  ACPICA: ACPI 6.3: PPTT add additional fields in Processor Structure Flags
  MIPS: elf_hwcap: Export userspace ASEs
  MIPS: Disable Loongson MMI instructions for kernel build
  NFS: Fix O_DIRECT accounting of number of bytes read/written
  btrfs: fix uninitialized ret in ref-verify
  btrfs: fix incorrect updating of log root tree
  cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic
  iio: adc: stm32-adc: fix a race when using several adcs with dma and irq
  iio: adc: stm32-adc: move registers definitions
  gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source
  firmware: google: increment VPD key_len properly
  mm/vmpressure.c: fix a signedness bug in vmpressure_register_event()
  kernel/sysctl.c: do not override max_threads provided by userspace
  CIFS: Force reval dentry if LOOKUP_REVAL flag is set
  CIFS: Force revalidate inode when dentry is stale
  CIFS: Gracefully handle QueryInfo errors during open
  blk-wbt: fix performance regression in wbt scale_up/scale_down
  perf inject jit: Fix JIT_CODE_MOVE filename
  perf llvm: Don't access out-of-scope array
  efivar/ssdt: Don't iterate over EFI vars if no SSDT override was specified
  iio: light: opt3001: fix mutex unlock race
  iio: adc: axp288: Override TS pin bias current for some models
  iio: adc: ad799x: fix probe error handling
  iio: adc: hx711: fix bug in sampling of data
  staging: vt6655: Fix memory leak in vt6655_probe
  Staging: fbtft: fix memory leak in fbtft_framebuffer_alloc
  gpio: eic: sprd: Fix the incorrect EIC offset when toggling
  mei: avoid FW version request on Ibex Peak and earlier
  mei: me: add comet point (lake) LP device ids
  USB: legousbtower: fix use-after-free on release
  USB: legousbtower: fix open after failed reset request
  USB: legousbtower: fix potential NULL-deref on disconnect
  USB: legousbtower: fix deadlock on disconnect
  USB: legousbtower: fix slab info leak at probe
  usb: renesas_usbhs: gadget: Fix usb_ep_set_{halt,wedge}() behavior
  usb: renesas_usbhs: gadget: Do not discard queues in usb_ep_set_{halt,wedge}()
  USB: dummy-hcd: fix power budget for SuperSpeed mode
  USB: microtek: fix info-leak at probe
  USB: usblcd: fix I/O after disconnect
  USB: serial: fix runtime PM after driver unbind
  USB: serial: option: add support for Cinterion CLS8 devices
  USB: serial: option: add Telit FN980 compositions
  USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20
  USB: serial: keyspan: fix NULL-derefs on open() and write()
  serial: uartlite: fix exit path null pointer
  USB: ldusb: fix NULL-derefs on driver unbind
  USB: chaoskey: fix use-after-free on release
  USB: usblp: fix runtime PM after driver unbind
  USB: iowarrior: fix use-after-free after driver unbind
  USB: iowarrior: fix use-after-free on release
  USB: iowarrior: fix use-after-free on disconnect
  USB: adutux: fix use-after-free on release
  USB: adutux: fix NULL-derefs on disconnect
  USB: adutux: fix use-after-free on disconnect
  xhci: Increase STS_SAVE timeout in xhci_suspend()
  xhci: Prevent deadlock when xhci adapter breaks during init
  usb: xhci: wait for CNR controller not ready bit in xhci resume
  xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts
  xhci: Check all endpoints for LPM timeout
  xhci: Prevent device initiated U1/U2 link pm if exit latency is too long
  xhci: Fix false warning message about wrong bounce buffer write length
  USB: usb-skeleton: fix NULL-deref on disconnect
  USB: usb-skeleton: fix runtime PM after driver unbind
  USB: yurex: fix NULL-derefs on disconnect
  USB: yurex: Don't retry on unexpected errors
  USB: rio500: Remove Rio 500 kernel driver
  f2fs: use EINVAL for superblock with invalid magic
  panic: ensure preemption is disabled during panic()

Change-Id: I002cb95429e0fe54d5a8ac0b771891be2d343014
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-10-21 05:33:39 -07:00
Ivaylo Georgiev
63399e395a Merge android-4.19-q.79 (40321f2) into msm-4.19
* refs/heads/tmp-40321f2:
  Linux 4.19.79
  nl80211: validate beacon head
  cfg80211: Use const more consistently in for_each_element macros
  cfg80211: add and use strongly typed element iteration macros
  staging: erofs: detect potential multiref due to corrupted images
  staging: erofs: add two missing erofs_workgroup_put for corrupted images
  staging: erofs: some compressed cluster should be submitted for corrupted images
  staging: erofs: fix an error handling in erofs_readdir()
  coresight: etm4x: Use explicit barriers on enable/disable
  vfs: Fix EOVERFLOW testing in put_compat_statfs64
  arm64/speculation: Support 'mitigations=' cmdline option
  arm64: Use firmware to detect CPUs that are not affected by Spectre-v2
  arm64: Force SSBS on context switch
  arm64: ssbs: Don't treat CPUs with SSBS as unaffected by SSB
  arm64: add sysfs vulnerability show for speculative store bypass
  arm64: add sysfs vulnerability show for spectre-v2
  arm64: Always enable spectre-v2 vulnerability detection
  arm64: Advertise mitigation of Spectre-v2, or lack thereof
  arm64: Provide a command line to disable spectre_v2 mitigation
  arm64: Always enable ssb vulnerability detection
  arm64: enable generic CPU vulnerabilites support
  arm64: add sysfs vulnerability show for meltdown
  arm64: Add sysfs vulnerability show for spectre-v1
  arm64: fix SSBS sanitization
  arm64: docs: Document SSBS HWCAP
  KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe
  arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3
  riscv: Avoid interrupts being erroneously enabled in handle_exception()
  perf stat: Reset previous counts on repeat with interval
  perf tools: Fix segfault in cpu_cache_level__read()
  tick: broadcast-hrtimer: Fix a race in bc_set_next
  tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure
  powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag
  powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt()
  nbd: fix crash when the blksize is zero
  KVM: nVMX: Fix consistency check on injected exception error code
  KVM: PPC: Book3S HV: XIVE: Free escalation interrupts before disabling the VP
  drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed
  nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs
  perf unwind: Fix libunwind build failure on i386 systems
  kernel/elfcore.c: include proper prototypes
  perf build: Add detection of java-11-openjdk-devel package
  sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr()
  sched/membarrier: Fix private expedited registration check
  sched/membarrier: Call sync_core only before usermode for same mm
  libnvdimm/nfit_test: Fix acpi_handle redefinition
  fuse: fix memleak in cuse_channel_open
  libnvdimm/region: Initialize bad block for volatile namespaces
  thermal_hwmon: Sanitize thermal_zone type
  thermal: Fix use-after-free when unregistering thermal zone device
  ntb: point to right memory window index
  x86/purgatory: Disable the stackleak GCC plugin for the purgatory
  pwm: stm32-lp: Add check in case requested period cannot be achieved
  pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors
  drm/amdgpu: Check for valid number of registers to read
  drm/amdgpu: Fix KFD-related kernel oops on Hawaii
  netfilter: nf_tables: allow lookups in dynamic sets
  watchdog: aspeed: Add support for AST2600
  ceph: reconnect connection if session hang in opening state
  ceph: fix directories inode i_blkbits initialization
  xen/pci: reserve MCFG areas earlier
  9p: avoid attaching writeback_fid on mmap with type PRIVATE
  9p: Transport error uninitialized
  fs: nfs: Fix possible null-pointer dereferences in encode_attrs()
  ima: fix freeing ongoing ahash_request
  ima: always return negative code for error
  arm64: cpufeature: Detect SSBS and advertise to userspace
  cfg80211: initialize on-stack chandefs
  s390/cio: avoid calling strlen on null pointer
  ieee802154: atusb: fix use-after-free at disconnect
  xen/xenbus: fix self-deadlock after killing user process
  Revert "locking/pvqspinlock: Don't wait if vCPU is preempted"
  mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence
  mmc: sdhci: improve ADMA error reporting
  drm/i915/gvt: update vgpu workload head pointer correctly
  drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors
  drm/msm/dsi: Fix return value check for clk_get_parent
  drm/omap: fix max fclk divider for omap36xx
  perf stat: Fix a segmentation fault when using repeat forever
  watchdog: imx2_wdt: fix min() calculation in imx2_wdt_set_timeout
  PCI: Restore Resizable BAR size bits correctly for 1MB BARs
  PCI: vmd: Fix shadow offsets to reflect spec changes
  timer: Read jiffies once when forwarding base clk
  usercopy: Avoid HIGHMEM pfn warning
  tracing: Make sure variable reference alias has correct var_ref_idx
  power: supply: sbs-battery: only return health when battery present
  power: supply: sbs-battery: use correct flags field
  MIPS: Treat Loongson Extensions as ASEs
  crypto: ccree - use the full crypt length value
  crypto: ccree - account for TEE not ready to report
  crypto: caam - fix concurrency issue in givencrypt descriptor
  crypto: cavium/zip - Add missing single_release()
  crypto: skcipher - Unmap pages after an external error
  crypto: qat - Silence smp_processor_id() warning
  tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file
  can: mcp251x: mcp251x_hw_reset(): allow more time after a reset
  powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions
  powerpc/powernv/ioda: Fix race in TCE level allocation
  powerpc/powernv: Restrict OPAL symbol map to only be readable by root
  powerpc/mce: Schedule work from irq_work
  powerpc/mce: Fix MCE handling for huge pages
  ASoC: sgtl5000: Improve VAG power and mute control
  ASoC: Define a set of DAPM pre/post-up events
  PM / devfreq: tegra: Fix kHz to Hz conversion
  nbd: fix max number of supported devs
  KVM: nVMX: handle page fault in vmread fix
  KVM: X86: Fix userspace set invalid CR4
  KVM: PPC: Book3S HV: Don't lose pending doorbell request on migration on P9
  KVM: PPC: Book3S HV: Check for MMU ready on piggybacked virtual cores
  KVM: PPC: Book3S HV: Fix race in re-enabling XIVE escalation interrupts
  s390/cio: exclude subchannels with no parent from pseudo check
  s390/topology: avoid firing events before kobjs are created
  KVM: s390: Test for bad access register and size at the start of S390_MEM_OP
  s390/process: avoid potential reading of freed stack
  ANDROID: cuttlefish_defconfig: Enable BPF_JIT and BPF_JIT_ALWAYS_ON
  ANDROID: arm64: bpf: implement arch_bpf_jit_check_func
  ANDROID: bpf: validate bpf_func when BPF_JIT is enabled with CFI
  UPSTREAM: kcm: use BPF_PROG_RUN

Conflicts:
	arch/arm64/include/asm/cpucaps.h
	arch/arm64/include/asm/sysreg.h
	arch/arm64/kernel/cpu_errata.c
	arch/arm64/kernel/cpufeature.c
	arch/arm64/kernel/process.c
	drivers/mmc/host/sdhci.c
	include/linux/ieee80211.h
	kernel/sched/core.c
	net/wireless/scan.c

Change-Id: I57a49ff57133edeaed48cb90e2b03fa453bf1451
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-10-21 05:07:30 -07:00
Jon Derrick
91849adc9f PCI: vmd: Fix config addressing when using bus offsets
commit e3dffa4f6c3612dea337c9c59191bd418afc941b upstream.

VMD maps child device config spaces to the VMD Config BAR linearly
regardless of the starting bus offset. Because of this, the config
address decode must ignore starting bus offsets when mapping the BDF to
the config space address.

Fixes: 2a5a9c9a20 ("PCI: vmd: Add offset to bus numbers if necessary")
Signed-off-by: Jon Derrick <jonathan.derrick@intel.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: stable@vger.kernel.org # v5.2+
Signed-off-by: Sushma Kalakota <sushmax.kalakota@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-17 13:45:44 -07:00
Ivaylo Georgiev
fb05bd721e Merge android-4.19-q.78 (d9e388f) into msm-4.19
* refs/heads/tmp-d9e388f:
  Linux 4.19.78
  9p/cache.c: Fix memory leak in v9fs_cache_session_get_cookie
  kexec: bail out upon SIGKILL when allocating memory.
  NFC: fix attrs checks in netlink interface
  smack: use GFP_NOFS while holding inode_smack::smk_lock
  Smack: Don't ignore other bprm->unsafe flags if LSM_UNSAFE_PTRACE is set
  soundwire: fix regmap dependencies and align with other serial links
  soundwire: Kconfig: fix help format
  sch_cbq: validate TCA_CBQ_WRROPT to avoid crash
  tipc: fix unlimited bundling of small messages
  xen-netfront: do not use ~0U as error return value for xennet_fill_frags()
  net/rds: Fix error handling in rds_ib_add_one()
  udp: only do GSO if # of segs > 1
  net: dsa: rtl8366: Check VLAN ID and not ports
  vsock: Fix a lockdep warning in __vsock_release()
  udp: fix gso_segs calculations
  sch_dsmark: fix potential NULL deref in dsmark_init()
  rxrpc: Fix rxrpc_recvmsg tracepoint
  qmi_wwan: add support for Cinterion CLS8 devices
  nfc: fix memory leak in llcp_sock_bind()
  net: Unpublish sk from sk_reuseport_cb before call_rcu
  net: qlogic: Fix memory leak in ql_alloc_large_buffers
  net: ipv4: avoid mixed n_redirects and rate_tokens usage
  ipv6: Handle missing host route in __ipv6_ifa_notify
  ipv6: drop incoming packets having a v4mapped source address
  hso: fix NULL-deref on tty open
  erspan: remove the incorrect mtu limit for erspan
  cxgb4:Fix out-of-bounds MSI-X info array access
  bpf: fix use after free in prog symbol exposure
  block: mq-deadline: Fix queue restart handling
  arm: use STACK_TOP when computing mmap base address
  arm: properly account for stack randomization and stack guard gap
  mips: properly account for stack randomization and stack guard gap
  arm64: consider stack randomization for mmap base only when necessary
  kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K
  ocfs2: wait for recovering done after direct unlock request
  kbuild: clean compressed initramfs image
  crypto: hisilicon - Fix double free in sec_free_hw_sgl()
  hypfs: Fix error number left in struct pointer member
  pktcdvd: remove warning on attempting to register non-passthrough dev
  fat: work around race with userspace's read via blockdev while mounting
  ARM: 8903/1: ensure that usable memory in bank 0 starts from a PMD-aligned address
  security: smack: Fix possible null-pointer dereferences in smack_socket_sock_rcv_skb()
  PCI: exynos: Propagate errors for optional PHYs
  PCI: imx6: Propagate errors for optional regulators
  PCI: histb: Propagate errors for optional regulators
  PCI: rockchip: Propagate errors for optional regulators
  HID: apple: Fix stuck function keys when using FN
  rtc: pcf85363/pcf85263: fix regmap error in set_time
  rtc: snvs: fix possible race condition
  ARM: 8875/1: Kconfig: default to AEABI w/ Clang
  soundwire: intel: fix channel number reported by hardware
  ARM: 8898/1: mm: Don't treat faults reported from cache maintenance as writes
  livepatch: Nullify obj->mod in klp_module_coming()'s error path
  HID: wacom: Fix several minor compiler warnings
  PCI: tegra: Fix OF node reference leak
  mfd: intel-lpss: Remove D3cold delay
  i2c-cht-wc: Fix lockdep warning
  MIPS: tlbex: Explicitly cast _PAGE_NO_EXEC to a boolean
  MIPS: Ingenic: Disable broken BTB lookup optimization.
  ext4: fix potential use after free after remounting with noblock_validity
  dma-buf/sw_sync: Synchronize signal vs syncpt free
  scsi: core: Reduce memory required for SCSI logging
  clk: sprd: add missing kfree
  mbox: qcom: add APCS child device for QCS404
  powerpc: dump kernel log before carrying out fadump or kdump
  clk: at91: select parent if main oscillator or bypass is enabled
  arm64: fix unreachable code issue with cmpxchg
  pinctrl: meson-gxbb: Fix wrong pinning definition for uart_c
  powerpc/pseries: correctly track irq state in default idle
  clk: qcom: gcc-sdm845: Use floor ops for sdcc clks
  pstore: fs superblock limits
  powerpc/64s/exception: machine check use correct cfar for late handler
  drm/amdgpu/si: fix ASIC tests
  drm/amd/display: support spdif
  clk: renesas: cpg-mssr: Set GENPD_FLAG_ALWAYS_ON for clock domain
  clk: renesas: mstp: Set GENPD_FLAG_ALWAYS_ON for clock domain
  pinctrl: amd: disable spurious-firing GPIO IRQs
  drm/nouveau/volt: Fix for some cards having 0 maximum voltage
  vfio_pci: Restore original state on release
  powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag
  pinctrl: tegra: Fix write barrier placement in pmx_writel
  powerpc/pseries/mobility: use cond_resched when updating device tree
  powerpc/futex: Fix warning: 'oldval' may be used uninitialized in this function
  powerpc/rtas: use device model APIs and serialization during LPM
  powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL
  clk: zx296718: Don't reference clk_init_data after registration
  clk: sprd: Don't reference clk_init_data after registration
  clk: sirf: Don't reference clk_init_data after registration
  clk: actions: Don't reference clk_init_data after registration
  powerpc/powernv/ioda2: Allocate TCE table levels on demand for default DMA window
  drm/amd/display: reprogram VM config when system resume
  drm/amd/display: fix issue where 252-255 values are clipped
  clk: sunxi-ng: v3s: add missing clock slices for MMC2 module clocks
  clk: qoriq: Fix -Wunused-const-variable
  ipmi_si: Only schedule continuously in the thread in maintenance mode
  PCI: rpaphp: Avoid a sometimes-uninitialized warning
  gpu: drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property()
  drm/radeon: Fix EEH during kexec
  drm/rockchip: Check for fast link training before enabling psr
  drm/panel: check failure cases in the probe func
  drm/stm: attach gem fence to atomic state
  video: ssd1307fb: Start page range at page_offset
  drm/panel: simple: fix AUO g185han01 horizontal blanking
  drm/bridge: tc358767: Increase AUX transfer length limit
  tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations
  tpm: use tpm_try_get_ops() in tpm-sysfs.c.

Change-Id: Icc0d8f26a806544c3f8969403522021169ea2f5c
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-10-14 00:55:05 -07:00
Jon Derrick
956ce989c4 PCI: vmd: Fix shadow offsets to reflect spec changes
commit a1a30170138c9c5157bd514ccd4d76b47060f29b upstream.

The shadow offset scratchpad was moved to 0x2000-0x2010. Update the
location to get the correct shadow offset.

Fixes: 6788958e4f ("PCI: vmd: Assign membar addresses from shadow registers")
Signed-off-by: Jon Derrick <jonathan.derrick@intel.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: stable@vger.kernel.org # v5.2+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-11 18:20:59 +02:00
Ivaylo Georgiev
6941d0359e Merge android-4.19-q.76 (8ed9c66) into msm-4.19
* refs/heads/tmp-8ed9c66:
  Linux 4.19.76
  f2fs: use generic EFSBADCRC/EFSCORRUPTED
  net/rds: Check laddr_check before calling it
  net/rds: An rds_sock is added too early to the hash table
  net_sched: check cops->tcf_block in tc_bind_tclass()
  Bluetooth: btrtl: Additional Realtek 8822CE Bluetooth devices
  netfilter: nft_socket: fix erroneous socket assignment
  xfs: don't crash on null attr fork xfs_bmapi_read
  drm/nouveau/disp/nv50-: fix center/aspect-corrected scaling
  ACPI: video: Add new hw_changes_brightness quirk, set it on PB Easynote MZ35
  Bluetooth: btrtl: HCI reset on close for Realtek BT chip
  net: don't warn in inet diag when IPV6 is disabled
  drm: Flush output polling on shutdown
  f2fs: fix to do sanity check on segment bitmap of LFS curseg
  net/ibmvnic: Fix missing { in __ibmvnic_reset
  dm zoned: fix invalid memory access
  Revert "f2fs: avoid out-of-range memory access"
  blk-mq: move cancel of requeue_work to the front of blk_exit_queue
  blk-mq: change gfp flags to GFP_NOIO in blk_mq_realloc_hw_ctxs
  initramfs: don't free a non-existent initrd
  bcache: remove redundant LIST_HEAD(journal) from run_cache_set()
  PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it
  f2fs: check all the data segments against all node ones
  irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices
  bpf: libbpf: retry loading program on EAGAIN
  Revert "drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD"
  scsi: qla2xxx: Return switch command on a timeout
  scsi: qla2xxx: Remove all rports if fabric scan retry fails
  scsi: qla2xxx: Turn off IOCB timeout timer on IOCB completion
  locking/lockdep: Add debug_locks check in __lock_downgrade()
  power: supply: sysfs: ratelimit property read error message
  pinctrl: sprd: Use define directive for sprd_pinconf_params values
  objtool: Clobber user CFLAGS variable
  ALSA: hda - Apply AMD controller workaround for Raven platform
  ALSA: hda - Add laptop imic fixup for ASUS M9V laptop
  ALSA: dice: fix wrong packet parameter for Alesis iO26
  ALSA: usb-audio: Add DSD support for EVGA NU Audio
  ALSA: usb-audio: Add Hiby device family to quirks for native DSD support
  ASoC: fsl: Fix of-node refcount unbalance in fsl_ssi_probe_from_dt()
  ASoC: Intel: cht_bsw_max98090_ti: Enable codec clock once and keep it enabled
  media: tvp5150: fix switch exit in set control handler
  iwlwifi: mvm: always init rs_fw with 20MHz bandwidth rates
  iwlwifi: mvm: send BCAST management frames to the right station
  net/mlx5e: Rx, Check ip headers sanity
  net/mlx5e: Rx, Fixup skb checksum for packets with tail padding
  net/mlx5e: XDP, Avoid checksum complete when XDP prog is loaded
  net/mlx5e: Allow reporting of checksum unnecessary
  mlx5: fix get_ip_proto()
  net/mlx5e: don't set CHECKSUM_COMPLETE on SCTP packets
  net/mlx5e: Set ECN for received packets using CQE indication
  CIFS: fix deadlock in cached root handling
  crypto: talitos - fix missing break in switch statement
  mtd: cfi_cmdset_0002: Use chip_good() to retry in do_write_oneword()
  HID: Add quirk for HP X500 PIXART OEM mouse
  HID: hidraw: Fix invalid read in hidraw_ioctl
  HID: logitech: Fix general protection fault caused by Logitech driver
  HID: sony: Fix memory corruption issue on cleanup.
  HID: prodikeys: Fix general protection fault during probe
  IB/core: Add an unbound WQ type to the new CQ API
  drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines
  powerpc/xive: Fix bogus error code returned by OPAL
  RDMA/restrack: Protect from reentry to resource return path
  net/ibmvnic: free reset work of removed device from queue
  Revert "Bluetooth: validate BLE connection interval updates"

Conflicts:
	fs/f2fs/data.c
	fs/f2fs/f2fs.h
	fs/f2fs/gc.c
	fs/f2fs/inode.c

Change-Id: I6626d6288e229c78e400be190dca200c62d2ec51
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-10-10 22:08:02 -07:00
Thierry Reding
69a32a7306 PCI: exynos: Propagate errors for optional PHYs
[ Upstream commit ddd6960087d4b45759434146d681a94bbb1c54ad ]

devm_of_phy_get() can fail for a number of reasons besides probe
deferral. It can for example return -ENOMEM if it runs out of memory as
it tries to allocate devres structures. Propagating only -EPROBE_DEFER
is problematic because it results in these legitimately fatal errors
being treated as "PHY not specified in DT".

What we really want is to ignore the optional PHYs only if they have not
been specified in DT. devm_of_phy_get() returns -ENODEV in this case, so
that's the special case that we need to handle. So we propagate all
errors, except -ENODEV, so that real failures will still cause the
driver to fail probe.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-10-07 18:57:13 +02:00
Thierry Reding
1264d2e7b7 PCI: imx6: Propagate errors for optional regulators
[ Upstream commit 2170a09fb4b0f66e06e5bcdcbc98c9ccbf353650 ]

regulator_get_optional() can fail for a number of reasons besides probe
deferral. It can for example return -ENOMEM if it runs out of memory as
it tries to allocate data structures. Propagating only -EPROBE_DEFER is
problematic because it results in these legitimately fatal errors being
treated as "regulator not specified in DT".

What we really want is to ignore the optional regulators only if they
have not been specified in DT. regulator_get_optional() returns -ENODEV
in this case, so that's the special case that we need to handle. So we
propagate all errors, except -ENODEV, so that real failures will still
cause the driver to fail probe.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
Cc: Richard Zhu <hongxing.zhu@nxp.com>
Cc: Lucas Stach <l.stach@pengutronix.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: kernel@pengutronix.de
Cc: linux-imx@nxp.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-10-07 18:57:13 +02:00
Thierry Reding
403d6c9284 PCI: histb: Propagate errors for optional regulators
[ Upstream commit 8f9e1641ba445437095411d9fda2324121110d5d ]

regulator_get_optional() can fail for a number of reasons besides probe
deferral. It can for example return -ENOMEM if it runs out of memory as
it tries to allocate data structures. Propagating only -EPROBE_DEFER is
problematic because it results in these legitimately fatal errors being
treated as "regulator not specified in DT".

What we really want is to ignore the optional regulators only if they
have not been specified in DT. regulator_get_optional() returns -ENODEV
in this case, so that's the special case that we need to handle. So we
propagate all errors, except -ENODEV, so that real failures will still
cause the driver to fail probe.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
Cc: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-10-07 18:57:13 +02:00
Thierry Reding
ac9c0e2ecc PCI: rockchip: Propagate errors for optional regulators
[ Upstream commit 0e3ff0ac5f71bdb6be2a698de0ed0c7e6e738269 ]

regulator_get_optional() can fail for a number of reasons besides probe
deferral. It can for example return -ENOMEM if it runs out of memory as
it tries to allocate data structures. Propagating only -EPROBE_DEFER is
problematic because it results in these legitimately fatal errors being
treated as "regulator not specified in DT".

What we really want is to ignore the optional regulators only if they
have not been specified in DT. regulator_get_optional() returns -ENODEV
in this case, so that's the special case that we need to handle. So we
propagate all errors, except -ENODEV, so that real failures will still
cause the driver to fail probe.

Tested-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Shawn Lin <shawn.lin@rock-chips.com>
Cc: Shawn Lin <shawn.lin@rock-chips.com>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: linux-rockchip@lists.infradead.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-10-07 18:57:12 +02:00
Nishka Dasgupta
3b7fbbddeb PCI: tegra: Fix OF node reference leak
[ Upstream commit 9e38e690ace3e7a22a81fc02652fc101efb340cf ]

Each iteration of for_each_child_of_node() executes of_node_put() on the
previous node, but in some return paths in the middle of the loop
of_node_put() is missing thus causing a reference leak.

Hence stash these mid-loop return values in a variable 'err' and add a
new label err_node_put which executes of_node_put() on the previous node
and returns 'err' on failure.

Change mid-loop return statements to point to jump to this label to
fix the reference leak.

Issue found with Coccinelle.

Signed-off-by: Nishka Dasgupta <nishkadg.linux@gmail.com>
[lorenzo.pieralisi@arm.com: rewrote commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-10-07 18:57:09 +02:00
Dexuan Cui
08fdaee2d9 PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it
[ Upstream commit 533ca1feed98b0bf024779a14760694c7cb4d431 ]

The slot must be removed before the pci_dev is removed, otherwise a panic
can happen due to use-after-free.

Fixes: 15becc2b56c6 ("PCI: hv: Add hv_pci_remove_slots() when we unload the driver")
Signed-off-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: stable@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-10-01 08:26:09 +02:00
Ivaylo Georgiev
c17fcf60d2 Merge android-4.19-q.75 (cfe571e) into msm-4.19
* refs/heads/tmp-cfe571e:
  Linux 4.19.75
  media: technisat-usb2: break out of loop at end of buffer
  arm64: kpti: Whitelist Cortex-A CPUs that don't implement the CSV3 field
  binfmt_elf: move brk out of mmap when doing direct loader exec
  floppy: fix usercopy direction
  ovl: fix regression caused by overlapping layers detection
  PCI: kirin: Fix section mismatch warning
  iommu/amd: Fix race in increase_address_space()
  iommu/amd: Flush old domains in kdump kernel
  keys: Fix missing null pointer check in request_key_auth_describe()
  x86/hyper-v: Fix overflow bug in fill_gva_list()
  x86/uaccess: Don't leak the AC flags into __get_user() argument evaluation
  dmaengine: ti: omap-dma: Add cleanup in omap_dma_probe()
  dmaengine: ti: dma-crossbar: Fix a memory leak bug
  net: seeq: Fix the function used to release some memory in an error handling path
  net: aquantia: fix out of memory condition on rx side
  tools/power turbostat: fix buffer overrun
  tools/power x86_energy_perf_policy: Fix argument parsing
  tools/power x86_energy_perf_policy: Fix "uninitialized variable" warnings at -O2
  amd-xgbe: Fix error path in xgbe_mod_init()
  perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops
  perf/x86/intel: Restrict period on Nehalem
  i2c: designware: Synchronize IRQs when unregistering slave client
  sky2: Disable MSI on yet another ASUS boards (P6Xxxx)
  ibmvnic: Do not process reset during or after device removal
  ARM: 8901/1: add a criteria for pfn_valid of arm
  usb: host: xhci-tegra: Set DMA mask correctly
  cifs: Use kzfree() to zero out the password
  cifs: set domainName when a domain-key is used in multiuser
  kallsyms: Don't let kallsyms_lookup_size_offset() fail on retrieving the first symbol
  NFSv2: Fix write regression
  NFSv2: Fix eof handling
  netfilter: nf_conntrack_ftp: Fix debug output
  netfilter: xt_physdev: Fix spurious error message in physdev_mt_check
  x86/apic: Fix arch_dynirq_lower_bound() bug for DT enabled machines
  r8152: Set memory to all 0xFFs on failed reg reads
  bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0
  batman-adv: Only read OGM2 tvlv_len after buffer len check
  ARM: 8874/1: mm: only adjust sections of valid mm structures
  qed: Add cleanup in qed_slowpath_start()
  xdp: unpin xdp umem pages in error path
  Kconfig: Fix the reference to the IDT77105 Phy driver in the description of ATM_NICSTAR_USE_IDT77105
  NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup
  NFSv4: Fix return value in nfs_finish_open()
  NFSv4: Fix return values for nfs4_file_open()
  netfilter: xt_nfacct: Fix alignment mismatch in xt_nfacct_match_info
  netfilter: nft_flow_offload: missing netlink attribute policy
  netfilter: ebtables: Fix argument order to ADD_COUNTER
  fpga: altera-ps-spi: Fix getting of optional confd gpio
  tools: bpftool: close prog FD before exit on showing a single program
  selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390
  s390/bpf: use 32-bit index for tail calls
  bus: ti-sysc: Simplify cleanup upon failures in sysc_probe()
  ARM: OMAP1: ams-delta-fiq: Fix missing irq_ack
  ARM: dts: dra74x: Fix iodelay configuration for mmc3
  ARM: OMAP2+: Fix omap4 errata warning on other SoCs
  s390/bpf: fix lcgr instruction encoding
  bus: ti-sysc: Fix using configured sysc mask value
  ARM: OMAP2+: Fix missing SYSC_HAS_RESET_STATUS for dra7 epwmss
  ARM: dts: am57xx: Disable voltage switching for SD card
  ieee802154: hwsim: unregister hw while hwsim_subscribe_all_others fails
  ieee802154: hwsim: Fix error handle path in hwsim_init_module
  nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds
  mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings
  tty/serial: atmel: reschedule TX after RX was started
  serial: sprd: correct the wrong sequence of arguments
  firmware: google: check if size is valid when decoding VPD data
  KVM: coalesced_mmio: add bounds checking
  net_sched: let qdisc_put() accept NULL pointer
  xen-netfront: do not assume sk_buff_head list is empty in error handling
  udp: correct reuseport selection with connected sockets
  ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit
  phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current
  media: tm6000: double free if usb disconnect while streaming
  USB: usbcore: Fix slab-out-of-bounds bug during device reset
  powerpc/mm/radix: Use the right page size for vmemmap mapping
  Input: elan_i2c - remove Lenovo Legion Y7000 PnpID
  RDMA/restrack: Release task struct which was hold by CM_ID object
  HID: wacom: generic: read HID_DG_CONTACTMAX from any feature report
  netfilter: nf_flow_table: set default timeout after successful insertion

Change-Id: Id15fbdb2fd66826ddff749ecbbfea6a565a43192
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-09-24 00:38:59 -07:00
Nathan Chancellor
5e74396d8b PCI: kirin: Fix section mismatch warning
commit 6870b673509779195cab300aedc844b352d9cfbc upstream.

The PCI kirin driver compilation produces the following section mismatch
warning:

WARNING: vmlinux.o(.text+0x4758cc): Section mismatch in reference from
the function kirin_pcie_probe() to the function
.init.text:kirin_add_pcie_port()
The function kirin_pcie_probe() references
the function __init kirin_add_pcie_port().
This is often because kirin_pcie_probe lacks a __init
annotation or the annotation of kirin_add_pcie_port is wrong.

Remove '__init' from kirin_add_pcie_port() to fix it.

Fixes: fc5165db24 ("PCI: kirin: Add HiSilicon Kirin SoC PCIe controller driver")
Reported-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
[lorenzo.pieralisi@arm.com: updated commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-09-21 07:17:14 +02:00
Ivaylo Georgiev
0e5107f00a Merge android-4.19-q.73 (8feec99) into msm-4.19
* refs/heads/tmp-8feec99:
  Documentation: devicetree: Remove Exynos bindings from kernel
  Documentation: devicetree: Remove Armadeus bindings from kernel
  Revert "dt-bindings: mmc: Add supports-cqe property"
  Revert "dt-bindings: mmc: Add disable-cqe-dcmd property."
  Linux 4.19.73
  vhost: make sure log_num < in_num
  powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts
  powerpc/tm: Remove msr_tm_active()
  PCI: Reset both NVIDIA GPU and HDA in ThinkPad P50 workaround
  ext4: unsigned int compared against zero
  ext4: fix block validity checks for journal inodes using indirect blocks
  ext4: don't perform block validity checks on the journal inode
  drm/atomic_helper: Allow DPMS On<->Off changes for unregistered connectors
  virtio/s390: fix race on airq_areas[]
  drm/i915: Make sure cdclk is high enough for DP audio on VLV/CHV
  bcache: fix race in btree_flush_write()
  bcache: add comments for mutex_lock(&b->write_lock)
  bcache: only clear BTREE_NODE_dirty bit when it is set
  NFSv4: Fix delegation state recovery
  iio: adc: gyroadc: fix uninitialized return code
  mm/migrate.c: initialize pud_entry in migrate_vma()
  i2c: at91: fix clk_offset for sama5d2
  i2c: at91: disable TXRDY interrupt after sending data
  gpio: don't WARN() on NULL descs if gpiolib is disabled
  iommu/iova: Remove stale cached32_node
  powerpc/mm: Limit rma_size to 1TB when running without HV mode
  ALSA: hda - Fix intermittent CORB/RIRB stall on Intel chips
  drm/panel: Add support for Armadeus ST0700 Adapt
  dm thin metadata: check if in fail_io mode when setting needs_check
  pstore: Fix double-free in pstore_mkfile() failure path
  resource: fix locking in find_next_iomem_res()
  resource: Fix find_next_iomem_res() iteration issue
  resource: Include resource end in walk_*() interfaces
  btrfs: correctly validate compression type
  RDMA/srp: Accept again source addresses that do not have a port number
  RDMA/srp: Document srp_parse_in() arguments
  ARM: dts: gemini: Set DIR-685 SPI CS as active low
  KVM: PPC: Book3S HV: Fix CR0 setting in TM emulation
  KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct
  KVM: VMX: check CPUID before allowing read/write of IA32_XSS
  KVM: VMX: Fix handling of #MC that occurs during VM-Entry
  KVM: VMX: Always signal #GP on WRMSR to MSR_IA32_CR_PAT with bad value
  KVM: x86: optimize check for valid PAT value
  ceph: use ceph_evict_inode to cleanup inode's resource
  ALSA: hda - Don't resume forcibly i915 HDMI/DP codec
  cifs: Properly handle auto disabling of serverino option
  scsi: zfcp: fix request object use-after-free in send path causing wrong traces
  staging: wilc1000: fix error path cleanup in wilc_wlan_initialize()
  scsi: target/iblock: Fix overrun in WRITE SAME emulation
  scsi: target/core: Use the SECTOR_SHIFT constant
  apparmor: reset pos on failure to unpack for various functions
  IB/hfi1: Avoid hardlockup with flushlist_lock
  clk: tegra210: Fix default rates for HDA clocks
  clk: tegra: Fix maximum audio sync clock for Tegra124/210
  cifs: add spinlock for the openFileList to cifsInodeInfo
  Btrfs: fix race between block group removal and block group allocation
  drm/amdgpu/{uvd,vcn}: fetch ring's read_ptr after alloc
  drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2)
  kvm: Check irqchip mode before assign irqfd
  drm/amdkfd: Add missing Polaris10 ID
  ARC: mm: SIGSEGV userspace trying to access kernel virtual memory
  ARC: mm: fix uninitialised signal code in do_page_fault
  signal/arc: Use force_sig_fault where appropriate
  dm crypt: move detailed message into debug level
  cifs: smbd: take an array of reqeusts when sending upper layer data
  PCI: dwc: Use devm_pci_alloc_host_bridge() to simplify code
  mmc: sdhci-pci: Add support for Intel CML
  blk-mq: free hw queue's resource in hctx's release handler
  dm mpath: fix missing call of path selector type->end_io
  PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary
  PCI: Add macro for Switchtec quirk declarations
  dt-bindings: mmc: Add disable-cqe-dcmd property.
  dt-bindings: mmc: Add supports-cqe property
  ARM: dts: qcom: ipq4019: enlarge PCIe BAR range
  ARM: dts: qcom: ipq4019: Fix MSI IRQ type
  ARM: dts: qcom: ipq4019: fix PCI range
  ext4: protect journal inode's blocks using block_validity
  media: i2c: tda1997x: select V4L2_FWNODE
  cifs: Fix lease buffer length error
  KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels
  x86/kvm: move kvm_load/put_guest_xcr0 into atomic context
  kvm: mmu: Fix overflow on kvm mmu page limit calculation
  IB/mlx5: Reset access mask when looping inside page fault handler
  arm64: dts: stratix10: add the sysmgr-syscon property from the gmac's
  usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps
  drm/i915: Sanity check mmap length against object size
  drm/i915: Handle vm_mmap error during I915_GEM_MMAP ioctl with WC set
  CIFS: Fix leaking locked VFS cache pages in writeback retry
  CIFS: Fix error paths in writeback code
  drm: add __user attribute to ptr_to_compat()
  PCI: qcom: Don't deassert reset GPIO during probe
  PCI: qcom: Fix error handling in runtime PM support
  btrfs: init csum_list before possible free
  btrfs: scrub: fix circular locking dependency warning
  btrfs: scrub: move scrub_setup_ctx allocation out of device_list_mutex
  btrfs: scrub: pass fs_info to scrub_setup_ctx
  mmc: renesas_sdhi: Fix card initialization failure in high speed mode
  powerpc/kvm: Save and restore host AMR/IAMR/UAMOR
  spi: spi-gpio: fix SPI_CS_HIGH capability
  x86/kvmclock: set offset for kvm unstable clock
  iwlwifi: add new card for 9260 series
  iwlwifi: fix devices with PCI Device ID 0x34F0 and 11ac RF modules
  drm/nouveau: Don't WARN_ON VCPI allocation failures
  mt76: fix corrupted software generated tx CCMP PN
  iio: adc: exynos-adc: Use proper number of channels for Exynos4x12
  dt-bindings: iio: adc: exynos-adc: Add S5PV210 variant
  iio: adc: exynos-adc: Add S5PV210 variant
  KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run
  bcache: treat stale && dirty keys as bad keys
  bcache: replace hard coded number with BUCKET_GC_GEN_MAX
  tpm: Fix some name collisions with drivers/char/tpm.h
  mfd: Kconfig: Fix I2C_DESIGNWARE_PLATFORM dependencies
  drm/i915/ilk: Fix warning when reading emon_status with no output
  drm/vblank: Allow dynamic per-crtc max_vblank_count
  crypto: ccree - add missing inline qualifier
  crypto: ccree - fix resume race condition on init
  IB/uverbs: Fix OOPs upon device disassociation
  ARC: mm: do_page_fault fixes #1: relinquish mmap_sem if signal arrives while handle_mm_fault
  ARC: show_regs: lockdep: re-enable preemption
  media: vim2m: only cancel work if it is for right context
  btrfs: Use real device structure to verify dev extent
  btrfs: volumes: Make sure no dev extent is beyond device boundary
  powerpc/pkeys: Fix handling of pkey state across fork()
  scsi: megaraid_sas: Use 63-bit DMA addressing
  scsi: megaraid_sas: Add check for reset adapter bit
  scsi: megaraid_sas: Fix combined reply queue mode detection
  btrfs: Fix error handling in btrfs_cleanup_ordered_extents
  btrfs: Remove extent_io_ops::fill_delalloc
  Btrfs: fix deadlock with memory reclaim during scrub
  Btrfs: clean up scrub is_dev_replace parameter
  KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch
  drm/i915: Cleanup gt powerstate from gem
  drm/i915: Restore sane defaults for KMS on GEM error load
  media: vim2m: use cancel_delayed_work_sync instead of flush_schedule_work
  media: vim2m: use workqueue
  s390/zcrypt: reinit ap queue state machine during device probe
  ARM: davinci: dm644x: define gpio interrupts as separate resources
  ARM: davinci: dm355: define gpio interrupts as separate resources
  ARM: davinci: dm646x: define gpio interrupts as separate resources
  ARM: davinci: dm365: define gpio interrupts as separate resources
  ARM: davinci: da8xx: define gpio interrupts as separate resources
  drm/amd/dm: Understand why attaching path/tile properties are needed
  drm/amd/pp: Fix truncated clock value when set watermark
  powerplay: Respect units on max dcfclk watermark
  Drivers: hv: kvp: Fix the recent regression caused by incorrect clean-up
  Drivers: hv: kvp: Fix the indentation of some "break" statements
  drm/atomic_helper: Disallow new modesets on unregistered connectors
  drm/i915/gen9+: Fix initial readout for Y tiled framebuffers
  drm/i915: Rename PLANE_CTL_DECOMPRESSION_ENABLE
  drm/i915: Fix intel_dp_mst_best_encoder()
  x86/kvm/lapic: preserve gfn_to_hva_cache len on cache reinit
  KVM: hyperv: define VP assist page helpers
  KVM: x86: hyperv: keep track of mismatched VP indexes
  KVM: x86: hyperv: consistently use 'hv_vcpu' for 'struct kvm_vcpu_hv' variables
  KVM: x86: hyperv: enforce vp_index < KVM_MAX_VCPUS
  drm/amdgpu: Update gc_9_0 golden settings.
  drm/amdgpu/gfx9: Update gfx9 golden settings.
  remoteproc: qcom: q6v5-mss: add SCM probe dependency
  x86, hibernate: Fix nosave_regions setup for hibernation
  Drivers: hv: kvp: Fix two "this statement may fall through" warnings
  keys: Fix the use of the C++ keyword "private" in uapi/linux/keyctl.h
  scsi: qla2xxx: Move log messages before issuing command to firmware
  media: cec: remove cec-edid.c
  media: cec/v4l2: move V4L2 specific CEC functions to V4L2
  drm/i915: Re-apply "Perform link quality check, unconditionally during long pulse"
  kernel/module: Fix mem leak in module_add_modinfo_attrs
  modules: always page-align module section allocations
  remoteproc: qcom: q6v5: shore up resource probe handling
  clk: s2mps11: Add used attribute to s2mps11_dt_match
  nvme-fc: use separate work queue to avoid warning
  riscv: remove unused variable in ftrace
  scripts/decode_stacktrace: match basepath using shell prefix operator, not regex
  arm64: dts: rockchip: enable usb-host regulators at boot on rk3328-rock64
  media: stm32-dcmi: fix irq = 0 case
  powerpc/64: mark start_here_multiplatform as __ref
  x86/ftrace: Fix warning and considate ftrace_jmp_replace() and ftrace_call_replace()
  selftests: fib_rule_tests: use pre-defined DEV_ADDR
  timekeeping: Use proper ktime_add when adding nsecs in coarse offset
  {nl,mac}80211: fix interface combinations on crypto controlled devices
  blk-iolatency: fix STS_AGAIN handling
  Blk-iolatency: warn on negative inflight IO counter
  hv_sock: Fix hang when a connection is closed
  batman-adv: Only read OGM tvlv_len after buffer len check
  batman-adv: fix uninit-value in batadv_netlink_get_ifindex()
  powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction
  vhost/test: fix build for vhost test - again
  vhost/test: fix build for vhost test
  drm/vmwgfx: Fix double free in vmw_recv_msg()
  sched/fair: Don't assign runtime for throttled cfs_rq
  ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre
  ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL
  ALSA: hda/realtek - Add quirk for HP Pavilion 15
  ALSA: hda/realtek - Fix overridden device-specific initialization
  ALSA: hda - Fix potential endless loop at applying quirks
  ANDROID: regression introduced override_creds=off

Change-Id: I74d7d497d9ec70b589ac400f62e266858ee7893d
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-09-18 00:41:18 -07:00
qctecmdr
798992e428 Merge "msm: pcie: add support for configurable PCIe core preset" 2019-09-17 14:08:25 -07:00
Jisheng Zhang
3f27a14b03 PCI: dwc: Use devm_pci_alloc_host_bridge() to simplify code
[ Upstream commit e6fdd3bf5aecd8615f31a5128775b9abcf3e0d86 ]

Use devm_pci_alloc_host_bridge() to simplify the error code path.  This
also fixes a leak in the dw_pcie_host_init() error path.

Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
CC: stable@vger.kernel.org	# v4.13+
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-09-16 08:22:13 +02:00
Bjorn Andersson
e1a12c3b6f PCI: qcom: Don't deassert reset GPIO during probe
[ Upstream commit 02b485e31d98265189b91f3e69c43df2ed50610c ]

Acquiring the reset GPIO low means that reset is being deasserted, this
is followed almost immediately with qcom_pcie_host_init() asserting it,
initializing it and then finally deasserting it again, for the link to
come up.

Some PCIe devices requires a minimum time between the initial deassert
and subsequent reset cycles. In a platform that boots with the reset
GPIO asserted this requirement is being violated by this deassert/assert
pulse.

Acquire the reset GPIO high to prevent this situation by matching the
state to the subsequent asserted state.

Fixes: 82a823833f ("PCI: qcom: Add Qualcomm PCIe controller driver")
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
[lorenzo.pieralisi@arm.com: updated commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
Cc: stable@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-09-16 08:22:08 +02:00
Bjorn Andersson
be905d0f23 PCI: qcom: Fix error handling in runtime PM support
[ Upstream commit 6e5da6f7d82474e94c2d4a38cf9ca4edbb3e03a0 ]

The driver does not cope with the fact that probe can fail in a number
of cases after enabling runtime PM on the device; this results in
warnings about "Unbalanced pm_runtime_enable". Furthermore if probe
fails after invoking qcom_pcie_host_init() the power-domain will be left
referenced.

As it is not possible for the error handling in qcom_pcie_host_init() to
handle errors happening after returning from that function the
pm_runtime_get_sync() is moved to qcom_pcie_probe() as well.

Fixes: 854b69efbd ("PCI: qcom: add runtime pm support to pcie_port")
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
[lorenzo.pieralisi@arm.com: updated commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-09-16 08:22:08 +02:00
qctecmdr
283b080238 Merge "msm: pcie: make PCIe DRV L1ss timeout configurable in devicetree" 2019-09-12 15:41:03 -07:00
Tony Truong
478143ffab msm: pcie: add support for configurable PCIe core preset
The PCIe core preset determines how aggressive PCIe PHY Gen3
equalization is. Based on the distance between SoC and PCIe
core, this setting needs to be tuned. Add support to tune
this value.

Change-Id: I1aee056cf1a81e96c2ece2c576cf27c0767f3a97
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-09-11 18:03:28 -07:00
Tony Truong
2955ad3457 msm: pcie: make PCIe DRV L1ss timeout configurable in devicetree
Every client have different requirements for when to enter L1ss
sleep. Add support to configure the DRV L1ss timeout in
devicetree.

Change-Id: I3f2b3f65a0ff9511ec738c6fd681a03c32048955
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-09-09 11:45:45 -07:00
Tony Truong
64c677c99a msm: pcie: disable PCIe CLKREQ override during PCIe DRV resume
It's possible that other subsystems did not properly disable
PCIe CLKREQ override when handing back the link to APPS. During
DRV resume, always disable PCIe CLKREQ override for APPS.

Change-Id: I4a522d81e9a6df7e6371f86b478e02e7b2034935
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-09-04 18:04:03 -07:00
Tony Truong
e4b28fed60 msm: pcie: add support to notify client early for SSR
When other subsystems crash, PCIe will get an early notificaion
from SSR framework and relay it to the clients. Clients will
have the ability to resume the link or clean up.

Change-Id: Iabee769d1b07c5174a18db56b7e1094b86564884
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-09-04 18:02:29 -07:00
qctecmdr
5dc7d7712c Merge "Merge android-4.19-q.66 (5118163) into msm-4.19" 2019-08-20 06:00:30 -07:00
qctecmdr
4d333b4784 Merge "Merge android-4.19.62 (f232ce6) into msm-4.19" 2019-08-19 17:38:46 -07:00
Ivaylo Georgiev
5996b2fe7b Merge android-4.19.63 (75ff56e) into msm-4.19
* refs/heads/tmp-75ff56e:
  Linux 4.19.63
  access: avoid the RCU grace period for the temporary subjective credentials
  libnvdimm/bus: Stop holding nvdimm_bus_list_mutex over __nd_ioctl()
  powerpc/tm: Fix oops on sigreturn on systems without TM
  powerpc/xive: Fix loop exit-condition in xive_find_target_in_mask()
  ALSA: hda - Add a conexant codec entry to let mute led work
  ALSA: line6: Fix wrong altsetting for LINE6_PODHD500_1
  ALSA: ac97: Fix double free of ac97_codec_device
  hpet: Fix division by zero in hpet_time_div()
  mei: me: add mule creek canyon (EHL) device ids
  fpga-manager: altera-ps-spi: Fix build error
  binder: prevent transactions to context manager from its own process.
  x86/speculation/mds: Apply more accurate check on hypervisor platform
  x86/sysfb_efi: Add quirks for some devices with swapped width and height
  btrfs: inode: Don't compress if NODATASUM or NODATACOW set
  usb: pci-quirks: Correct AMD PLL quirk detection
  usb: wusbcore: fix unbalanced get/put cluster_id
  locking/lockdep: Hide unused 'class' variable
  mm: use down_read_killable for locking mmap_sem in access_remote_vm
  locking/lockdep: Fix lock used or unused stats error
  proc: use down_read_killable mmap_sem for /proc/pid/maps
  cxgb4: reduce kernel stack usage in cudbg_collect_mem_region()
  proc: use down_read_killable mmap_sem for /proc/pid/map_files
  proc: use down_read_killable mmap_sem for /proc/pid/clear_refs
  proc: use down_read_killable mmap_sem for /proc/pid/pagemap
  proc: use down_read_killable mmap_sem for /proc/pid/smaps_rollup
  mm/mmu_notifier: use hlist_add_head_rcu()
  memcg, fsnotify: no oom-kill for remote memcg charging
  mm/gup.c: remove some BUG_ONs from get_gate_page()
  mm/gup.c: mark undo_dev_pagemap as __maybe_unused
  9p: pass the correct prototype to read_cache_page
  mm/kmemleak.c: fix check for softirq context
  sh: prevent warnings when using iounmap
  block/bio-integrity: fix a memory leak bug
  powerpc/eeh: Handle hugepages in ioremap space
  dlm: check if workqueues are NULL before flushing/destroying
  mailbox: handle failed named mailbox channel request
  f2fs: avoid out-of-range memory access
  block: init flush rq ref count to 1
  powerpc/boot: add {get, put}_unaligned_be32 to xz_config.h
  PCI: dwc: pci-dra7xx: Fix compilation when !CONFIG_GPIOLIB
  RDMA/rxe: Fill in wc byte_len with IB_WC_RECV_RDMA_WITH_IMM
  perf hists browser: Fix potential NULL pointer dereference found by the smatch tool
  perf annotate: Fix dereferencing freed memory found by the smatch tool
  perf session: Fix potential NULL pointer dereference found by the smatch tool
  perf top: Fix potential NULL pointer dereference detected by the smatch tool
  perf stat: Fix use-after-freed pointer detected by the smatch tool
  perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning
  PCI: mobiveil: Use the 1st inbound window for MEM inbound transactions
  PCI: mobiveil: Initialize Primary/Secondary/Subordinate bus numbers
  kallsyms: exclude kasan local symbols on s390
  PCI: mobiveil: Fix the Class Code field
  PCI: mobiveil: Fix PCI base address in MEM/IO outbound windows
  arm64: assembler: Switch ESB-instruction with a vanilla nop if !ARM64_HAS_RAS
  IB/ipoib: Add child to parent list only if device initialized
  powerpc/mm: Handle page table allocation failures
  IB/mlx5: Fixed reporting counters on 2nd port for Dual port RoCE
  serial: sh-sci: Fix TX DMA buffer flushing and workqueue races
  serial: sh-sci: Terminate TX DMA during buffer flushing
  RDMA/i40iw: Set queue pair state when being queried
  powerpc/4xx/uic: clear pending interrupt after irq type/pol change
  um: Silence lockdep complaint about mmap_sem
  mm/swap: fix release_pages() when releasing devmap pages
  mfd: hi655x-pmic: Fix missing return value check for devm_regmap_init_mmio_clk
  mfd: arizona: Fix undefined behavior
  mfd: core: Set fwnode for created devices
  mfd: madera: Add missing of table registration
  recordmcount: Fix spurious mcount entries on powerpc
  powerpc/xmon: Fix disabling tracing while in xmon
  powerpc/cacheflush: fix variable set but not used
  iio: iio-utils: Fix possible incorrect mask calculation
  PCI: xilinx-nwl: Fix Multi MSI data programming
  genksyms: Teach parser about 128-bit built-in types
  kbuild: Add -Werror=unknown-warning-option to CLANG_FLAGS
  i2c: stm32f7: fix the get_irq error cases
  PCI: sysfs: Ignore lockdep for remove attribute
  serial: mctrl_gpio: Check if GPIO property exisits before requesting it
  drm/msm: Depopulate platform on probe failure
  powerpc/pci/of: Fix OF flags parsing for 64bit BARs
  mmc: sdhci: sdhci-pci-o2micro: Check if controller supports 8-bit width
  usb: gadget: Zero ffs_io_data
  tty: serial_core: Set port active bit in uart_port_activate
  serial: imx: fix locking in set_termios()
  drm/rockchip: Properly adjust to a true clock in adjusted_mode
  powerpc/pseries/mobility: prevent cpu hotplug during DT update
  drm/amd/display: fix compilation error
  phy: renesas: rcar-gen2: Fix memory leak at error paths
  drm/virtio: Add memory barriers for capset cache.
  drm/amd/display: Always allocate initial connector state state
  serial: 8250: Fix TX interrupt handling condition
  tty: serial: msm_serial: avoid system lockup condition
  tty/serial: digicolor: Fix digicolor-usart already registered warning
  memstick: Fix error cleanup path of memstick_init
  drm/crc-debugfs: Also sprinkle irqrestore over early exits
  drm/crc-debugfs: User irqsafe spinlock in drm_crtc_add_crc_entry
  gpu: host1x: Increase maximum DMA segment size
  drm/bridge: sii902x: pixel clock unit is 10kHz instead of 1kHz
  drm/bridge: tc358767: read display_props in get_modes()
  PCI: Return error if cannot probe VF
  drm/edid: Fix a missing-check bug in drm_load_edid_firmware()
  drm/amdkfd: Fix sdma queue map issue
  drm/amdkfd: Fix a potential memory leak
  drm/amd/display: Disable ABM before destroy ABM struct
  drm/amdgpu/sriov: Need to initialize the HDP_NONSURFACE_BAStE
  drm/amd/display: Fill prescale_params->scale for RGB565
  tty: serial: cpm_uart - fix init when SMC is relocated
  pinctrl: rockchip: fix leaked of_node references
  tty: max310x: Fix invalid baudrate divisors calculator
  usb: core: hub: Disable hub-initiated U1/U2
  staging: vt6656: use meaningful error code during buffer allocation
  iio: adc: stm32-dfsdm: missing error case during probe
  iio: adc: stm32-dfsdm: manage the get_irq error case
  drm/panel: simple: Fix panel_simple_dsi_probe
  hvsock: fix epollout hang from race condition

Change-Id: I4c37256db5ec08367a22a1c50bb97db267c822da
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-08-13 01:20:38 -07:00
Ivaylo Georgiev
e369d405c1 Merge android-4.19.61 (71ce27c) into msm-4.19
* refs/heads/tmp-71ce27c:
  Revert "dt-bindings: allow up to four clocks for orion-mdio"
  Linux 4.19.61
  dm bufio: fix deadlock with loop device
  dt-bindings: allow up to four clocks for orion-mdio
  net: mvmdio: allow up to four clocks to be specified for orion-mdio
  blkcg: update blkcg_print_stat() to handle larger outputs
  blk-iolatency: clear use_delay when io.latency is set to zero
  blk-throttle: fix zero wait time for iops throttled group
  usb: Handle USB3 remote wakeup for LPM enabled devices correctly
  Bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug
  intel_th: msu: Fix single mode with disabled IOMMU
  mtd: spinand: read returns badly if the last page has bitflips
  mtd: rawnand: mtk: Correct low level time calculation of r/w cycle
  eCryptfs: fix a couple type promotion bugs
  mmc: sdhci-msm: fix mutex while in spinlock
  powerpc/pseries: Fix oops in hotplug memory notifier
  powerpc/powernv/npu: Fix reference leak
  powerpc/watchpoint: Restore NV GPRs while returning from exception
  powerpc/32s: fix suspend/resume when IBATs 4-7 are used
  parisc: Fix kernel panic due invalid values in IAOQ0 or IAOQ1
  parisc: Ensure userspace privilege for ptraced processes in regset functions
  crypto: caam - limit output IV to CBC to work around CTR mode DMA issue
  gpu: ipu-v3: ipu-ic: Fix saturation bit offset in TPMEM
  xfs: abort unaligned nowait directio early
  xfs: serialize unaligned dio writes against all other dio writes
  xfs: fix reporting supported extra file attributes for statx()
  xfs: reserve blocks for ifree transaction during log recovery
  xfs: don't ever put nlink > 0 inodes on the unlinked list
  xfs: rename m_inotbt_nores to m_finobt_nores
  xfs: don't overflow xattr listent buffer
  xfs: flush removing page cache in xfs_reflink_remap_prep
  xfs: fix pagecache truncation prior to reflink
  include/asm-generic/bug.h: fix "cut here" for WARN_ON for __WARN_TAINT architectures
  coda: pass the host file in vma->vm_file on mmap
  libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields
  HID: wacom: correct touch resolution x/y typo
  HID: wacom: generic: Correct pad syncing
  HID: wacom: generic: only switch the mode on devices with LEDs
  IB/mlx5: Report correctly tag matching rendezvous capability
  Btrfs: add missing inode version, ctime and mtime updates when punching hole
  Btrfs: fix fsync not persisting dentry deletions due to inode evictions
  Btrfs: fix data loss after inode eviction, renaming it, and fsync it
  PCI: qcom: Ensure that PERST is asserted for at least 100 ms
  PCI: Do not poll for PME if the device is in D3cold
  PCI: hv: Fix a use-after-free bug in hv_eject_device_work()
  intel_th: pci: Add Ice Lake NNPI support
  drm/edid: parse CEA blocks embedded in DisplayID
  perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs
  perf/x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs
  perf/x86/intel: Fix spurious NMI on fixed counter
  x86/boot: Fix memory leak in default_get_smp_config()
  9p/virtio: Add cleanup path in p9_virtio_init
  9p/xen: Add cleanup path in p9_trans_xen_init
  xen/events: fix binding user event channels to cpus
  dm zoned: fix zone state management race
  padata: use smp_mb in padata_reorder to avoid orphaned padata jobs
  drm/nouveau/i2c: Enable i2c pads & busses during preinit
  kconfig: fix missing choice values in auto.conf
  fs/proc/proc_sysctl.c: fix the default values of i_uid/i_gid on /proc/sys inodes.
  arm64: tegra: Fix AGIC register range
  KVM: x86/vPMU: refine kvm_pmu err msg when event creation failed
  media: videobuf2-dma-sg: Prevent size from overflowing
  media: videobuf2-core: Prevent size alignment wrapping buffer size to 0
  media: coda: Remove unbalanced and unneeded mutex unlock
  media: v4l2: Test type instead of cfg->type in v4l2_ctrl_new_custom()
  ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine
  ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform
  ALSA: seq: Break too long mutex context in the write loop
  raid5-cache: Need to do start() part job after adding journal device
  ASoC: dapm: Adapt for debugfs API change
  lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE
  pnfs: Fix a problem where we gratuitously start doing I/O through the MDS
  pNFS: Fix a typo in pnfs_update_layout
  pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error
  NFSv4: Handle the special Linux file open access mode
  iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices
  iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill
  iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X
  iwlwifi: pcie: don't service an interrupt that was masked
  arm64: tegra: Update Jetson TX1 GPU regulator timings
  regulator: s2mps11: Fix buck7 and buck8 wrong voltages
  Input: alps - fix a mismatch between a condition check and its comment
  Input: synaptics - whitelist Lenovo T580 SMBus intertouch
  Input: alps - don't handle ALPS cs19 trackpoint-only device
  Input: gtco - bounds check collection indent level
  bcache: destroy dc->writeback_write_wq if failed to create dc->writeback_thread
  bcache: fix mistaken sysfs entry for io_error counter
  bcache: ignore read-ahead request failure on backing device
  bcache: Revert "bcache: free heap cache_set->flush_btree in bch_journal_free"
  bcache: Revert "bcache: fix high CPU occupancy during journal"
  Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()"
  crypto: crypto4xx - fix a potential double free in ppc4xx_trng_probe
  crypto: ccp/gcm - use const time tag comparison.
  crypto: ccp - memset structure fields to zero before reuse
  crypto: crypto4xx - block ciphers should only accept complete blocks
  crypto: crypto4xx - fix blocksize for cfb and ofb
  crypto: crypto4xx - fix AES CTR blocksize value
  crypto: chacha20poly1305 - fix atomic sleep when using async algorithm
  crypto: arm64/sha2-ce - correct digest for empty data in finup
  crypto: arm64/sha1-ce - correct digest for empty data in finup
  crypto: ccp - Validate the the error value used to index error messages
  crypto: ghash - fix unaligned memory access in ghash_setkey()
  scsi: mac_scsi: Fix pseudo DMA implementation, take 2
  scsi: mac_scsi: Increase PIO/PDMA transfer length threshold
  scsi: megaraid_sas: Fix calculation of target ID
  scsi: core: Fix race on creating sense cache
  Revert "scsi: ncr5380: Increase register polling limit"
  scsi: NCR5380: Always re-enable reselection interrupt
  scsi: NCR5380: Reduce goto statements in NCR5380_select()
  xen: let alloc_xenballooned_pages() fail if not enough memory free
  floppy: fix out-of-bounds read in copy_buffer
  floppy: fix invalid pointer dereference in drive_name
  floppy: fix out-of-bounds read in next_valid_format
  floppy: fix div-by-zero in setup_format_params
  iavf: fix dereference of null rx_buffer pointer
  net: mvmdio: defer probe of orion-mdio if a clock is not ready
  gtp: fix use-after-free in gtp_newlink()
  gtp: fix use-after-free in gtp_encap_destroy()
  gtp: fix Illegal context switch in RCU read-side critical section.
  gtp: fix suspicious RCU usage
  Bluetooth: validate BLE connection interval updates
  gtp: add missing gtp_encap_disable_sock() in gtp_encap_enable()
  Bluetooth: Check state in l2cap_disconnect_rsp
  perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64
  Bluetooth: 6lowpan: search for destination address in all peers
  Bluetooth: Add new 13d3:3501 QCA_ROME device
  Bluetooth: Add new 13d3:3491 QCA_ROME device
  Bluetooth: hci_bcsp: Fix memory leak in rx_skb
  tools: bpftool: Fix json dump crash on powerpc
  gpiolib: Fix references to gpiod_[gs]et_*value_cansleep() variants
  bonding: validate ip header before check IPPROTO_IGMP
  selftests: bpf: fix inlines in test_lwt_seg6local
  bpf, libbpf, smatch: Fix potential NULL pointer dereference
  rxrpc: Fix oops in tracepoint
  net: usb: asix: init MAC address buffers
  bnx2x: Prevent ptp_task to be rescheduled indefinitely
  perf stat: Fix group lookup for metric group
  perf stat: Make metric event lookup more robust
  bpf: fix uapi bpf_prog_info fields alignment
  iwlwifi: mvm: Drop large non sta frames
  igb: clear out skb->tstamp after reading the txtime
  net: mvpp2: prs: Don't override the sign bit in SRAM parser shift
  ath10k: destroy sdio workqueue while remove sdio module
  net: hns3: add some error checking in hclge_tm module
  net: hns3: fix a -Wformat-nonliteral compile warning
  bcache: fix potential deadlock in cached_def_free()
  bcache: check c->gc_thread by IS_ERR_OR_NULL in cache_set_flush()
  bcache: acquire bch_register_lock later in cached_dev_free()
  bcache: check CACHE_SET_IO_DISABLE bit in bch_journal()
  bcache: check CACHE_SET_IO_DISABLE in allocator code
  EDAC: Fix global-out-of-bounds write when setting edac_mc_poll_msec
  wil6210: drop old event after wmi_call timeout
  crypto: asymmetric_keys - select CRYPTO_HASH where needed
  crypto: serpent - mark __serpent_setkey_sbox noinline
  ixgbe: Check DDM existence in transceiver before access
  rslib: Fix handling of of caller provided syndrome
  rslib: Fix decoding of shortened codes
  xsk: Properly terminate assignment in xskq_produce_flush_desc
  clocksource/drivers/exynos_mct: Increase priority over ARM arch timer
  libata: don't request sense data on !ZAC ATA devices
  ASoC: Intel: hdac_hdmi: Set ops to NULL on remove
  perf tools: Increase MAX_NR_CPUS and MAX_CACHES
  ath10k: fix PCIE device wake up failed
  ath10k: add missing error handling
  ipvs: fix tinfo memory leak in start_sync_thread
  mt7601u: fix possible memory leak when the device is disconnected
  x86/build: Add 'set -e' to mkcapflags.sh to delete broken capflags.c
  mt7601u: do not schedule rx_tasklet when the device has been disconnected
  rtlwifi: rtl8192cu: fix error handle when usb probe failed
  net: stmmac: sun8i: force select external PHY when no internal one
  media: hdpvr: fix locking and a missing msleep
  media: vimc: cap: check v4l2_fill_pixfmt return value
  media: coda: increment sequence offset for the last returned frame
  media: coda: fix last buffer handling in V4L2_ENC_CMD_STOP
  media: coda: fix mpeg2 sequence number handling
  acpi/arm64: ignore 5.1 FADTs that are reported as 5.0
  timer_list: Guard procfs specific code
  ntp: Limit TAI-UTC offset
  media: i2c: fix warning same module names
  media: s5p-mfc: Make additional clocks optional
  ipvs: defer hook registration to avoid leaks
  ipsec: select crypto ciphers for xfrm_algo
  arm64: Do not enable IRQs for ct_user_exit
  lightnvm: pblk: fix freeing of merged pages
  nvme-pci: set the errno on ctrl state change error
  nvme-pci: properly report state change failure in nvme_reset_work
  nvme: fix possible io failures when removing multipathed ns
  EDAC/sysfs: Fix memory leak when creating a csrow object
  ACPICA: Clear status of GPEs on first direct enable
  blk-iolatency: only account submitted bios
  x86/cacheinfo: Fix a -Wtype-limits warning
  ipoib: correcly show a VF hardware address
  vhost_net: disable zerocopy by default
  perf evsel: Make perf_evsel__name() accept a NULL argument
  x86/atomic: Fix smp_mb__{before,after}_atomic()
  perf/x86/intel/uncore: Handle invalid event coding for free-running counter
  sched/fair: Fix "runnable_avg_yN_inv" not used warnings
  sched/core: Add __sched tag for io_schedule()
  xfrm: fix sa selector validation
  blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration
  block: null_blk: fix race condition for null_del_dev
  net: hns3: fix for skb leak when doing selftest
  qed: iWARP - Fix tc for MPA ll2 connection
  x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS
  rcu: Force inlining of rcu_read_lock()
  ASoC: meson: axg-tdm: fix sample clock inversion
  x86/cpu: Add Ice Lake NNPI to Intel family
  selinux: fix empty write to keycreate file
  media: s5p-mfc: fix reading min scratch buffer size on MFC v6/v7
  bpf: silence warning messages in core
  regmap: fix bulk writes on paged registers
  gpio: omap: ensure irq is enabled before wakeup
  gpio: omap: fix lack of irqstatus_raw0 for OMAP4
  iommu: Fix a leak in iommu_insert_resv_region
  media: fdp1: Support M3N and E3 platforms
  media: uvcvideo: Fix access to uninitialized fields on probe error
  irqchip/meson-gpio: Add support for Meson-G12A SoC
  perf report: Fix OOM error in TUI mode on s390
  perf test 6: Fix missing kvm module load for s390
  perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode
  ipset: Fix memory accounting for hash types on resize
  net: sfp: add mutex to prevent concurrent state checks
  RAS/CEC: Fix pfn insertion
  s390/qdio: handle PENDING state for QEBSM devices
  net: axienet: Fix race condition causing TX hang
  net: fec: Do not use netdev messages too early
  crypto: inside-secure - do not rely on the hardware last bit for result descriptors
  net: stmmac: modify default value of tx-frames
  net: stmmac: dwmac4: fix flow control issue
  perf jvmti: Address gcc string overflow warning for strncpy()
  arm64: mm: make CONFIG_ZONE_DMA32 configurable
  cpupower : frequency-set -r option misses the last cpu in related cpu list
  net: hns3: set ops to null when unregister ad_dev
  media: wl128x: Fix some error handling in fm_v4l2_init_video_device()
  locking/lockdep: Fix merging of hlocks with non-zero references
  batman-adv: Fix duplicated OGMs on NETDEV_UP
  tua6100: Avoid build warnings.
  crypto: talitos - Align SEC1 accesses to 32 bits boundaries.
  crypto: talitos - properly handle split ICV.
  net: phy: Check against net_device being NULL
  media: staging: media: davinci_vpfe: - Fix for memory leak if decoder initialization fails.
  media: saa7164: fix remove_proc_entry warning
  media: mc-device.c: don't memset __user pointer contents
  perf annotate TUI browser: Do not use member from variable within its own initialization
  fscrypt: clean up some BUG_ON()s in block encryption/decryption
  xfrm: Fix xfrm sel prefix length validation
  af_key: fix leaks in key_pol_get_resp and dump_sp.
  signal/pid_namespace: Fix reboot_pid_ns to use send_sig not force_sig
  qed: Set the doorbell address correctly
  net: stmmac: dwmac4/5: Clear unused address entries
  net: stmmac: dwmac1000: Clear unused address entries
  media: media_device_enum_links32: clean a reserved field
  media: vpss: fix a potential NULL pointer dereference
  media: marvell-ccic: fix DMA s/g desc number calculation
  media: ov7740: avoid invalid framesize setting
  crypto: talitos - fix skcipher failure due to wrong output IV
  media: spi: IR LED: add missing of table registration
  media: dvb: usb: fix use after free in dvb_usb_device_exit
  batman-adv: fix for leaked TVLV handler.
  regmap: debugfs: Fix memory leak in regmap_debugfs_init
  ath: DFS JP domain W56 fixed pulse type 3 RADAR detection
  wil6210: fix spurious interrupts in 3-msi
  ath10k: add peer id check in ath10k_peer_find_by_id
  ath6kl: add some bounds checking
  ath9k: Check for errors when reading SREV register
  ath10k: Do not send probe response template for mesh
  wil6210: fix potential out-of-bounds read
  dmaengine: imx-sdma: fix use-after-free on probe error path
  scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported
  arm64/efi: Mark __efistub_stext_offset as an absolute symbol explicitly
  MIPS: fix build on non-linux hosts
  MIPS: ath79: fix ar933x uart parity mode
  ANDROID: arm64: fix function types in COND_SYSCALL
  ANDROID: x86: fix function types in COND_SYSCALL
  ANDROID: kernel/Makefile: do not disable LTO for sys_ni.c with CFI
  UPSTREAM: binder: Set end of SG buffer area properly.

Conflicts:
	arch/arm64/Kconfig
	arch/x86/include/asm/syscall_wrapper.h
	drivers/mmc/host/sdhci-msm.c

Change-Id: If28d1c397b31023c16a571e0fe33682fe65759db
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-08-13 01:20:20 -07:00
qctecmdr
844a6f7372 Merge "msm: pcie: add support for LTR and L1.2 threshold" 2019-07-31 02:05:04 -07:00
YueHaibing
549f726fb0 PCI: dwc: pci-dra7xx: Fix compilation when !CONFIG_GPIOLIB
[ Upstream commit 381ed79c8655a40268ee7391f716edd90c5c3a97 ]

If CONFIG_GPIOLIB is not selected the compilation results in the
following build errors:

drivers/pci/controller/dwc/pci-dra7xx.c:
 In function dra7xx_pcie_probe:
drivers/pci/controller/dwc/pci-dra7xx.c:777:10:
 error: implicit declaration of function devm_gpiod_get_optional;
 did you mean devm_regulator_get_optional? [-Werror=implicit-function-declaration]

  reset = devm_gpiod_get_optional(dev, NULL, GPIOD_OUT_HIGH);

drivers/pci/controller/dwc/pci-dra7xx.c:778:45: error: ‘GPIOD_OUT_HIGH’
undeclared (first use in this function); did you mean ‘GPIOF_INIT_HIGH’?
  reset = devm_gpiod_get_optional(dev, NULL, GPIOD_OUT_HIGH);
                                             ^~~~~~~~~~~~~~
                                             GPIOF_INIT_HIGH

Fix them by including the appropriate header file.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: YueHaibing <yuehaibing@huawei.com>
[lorenzo.pieralisi@arm.com: commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-31 07:27:07 +02:00
Hou Zhiqiang
dd0a0c72a1 PCI: mobiveil: Use the 1st inbound window for MEM inbound transactions
[ Upstream commit f7fee1b42fe4f8171a4b1cad05c61907c33c53f6 ]

The inbound and outbound windows have completely separate control
registers sets in the host controller MMIO space. Windows control
register are accessed through an MMIO base address and an offset
that depends on the window index.

Since inbound and outbound windows control registers are completely
separate there is no real need to use different window indexes in the
inbound/outbound windows initialization routines to prevent clashing.

To fix this inconsistency, change the MEM inbound window index to 0,
mirroring the outbound window set-up.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
[lorenzo.pieralisi@arm.com: update commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Reviewed-by: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-31 07:27:06 +02:00
Hou Zhiqiang
270972df68 PCI: mobiveil: Initialize Primary/Secondary/Subordinate bus numbers
[ Upstream commit 6f3ab451aa5c2cbff33197d82fe8489cbd55ad91 ]

The reset value of Primary, Secondary and Subordinate bus numbers is
zero which is a broken setup.

Program a sensible default value for Primary/Secondary/Subordinate
bus numbers.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Reviewed-by: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-31 07:27:05 +02:00
Hou Zhiqiang
4613f46ef4 PCI: mobiveil: Fix the Class Code field
[ Upstream commit 0122af0a08243f344a438f924e5c2486486555b3 ]

Fix up the Class Code field in PCI configuration space and set it to
PCI_CLASS_BRIDGE_PCI.

Move the Class Code fixup to function mobiveil_host_init() where
it belongs.

Fixes: 9af6bcb11e ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP driver")
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Reviewed-by: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-31 07:27:05 +02:00
Hou Zhiqiang
51308ec525 PCI: mobiveil: Fix PCI base address in MEM/IO outbound windows
[ Upstream commit f99536e9d2f55996038158a6559d4254a7cc1693 ]

The outbound memory windows PCI base addresses should be taken
from the 'ranges' property of DT node to setup MEM/IO outbound
windows decoding correctly instead of being hardcoded to zero.

Update the code to retrieve the PCI base address for each range
and use it to program the outbound windows address decoders

Fixes: 9af6bcb11e ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP driver")
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Reviewed-by: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-31 07:27:05 +02:00
Bharat Kumar Gogada
fc9c15c4e3 PCI: xilinx-nwl: Fix Multi MSI data programming
[ Upstream commit 181fa434d0514e40ebf6e9721f2b72700287b6e2 ]

According to the PCI Local Bus specification Revision 3.0,
section 6.8.1.3 (Message Control for MSI), endpoints that
are Multiple Message Capable as defined by bits [3:1] in
the Message Control for MSI can request a number of vectors
that is power of two aligned.

As specified in section 6.8.1.6 "Message data for MSI", the Multiple
Message Enable field (bits [6:4] of the Message Control register)
defines the number of low order message data bits the function is
permitted to modify to generate its system software allocated
vectors.

The MSI controller in the Xilinx NWL PCIe controller supports a number
of MSI vectors specified through a bitmap and the hwirq number for an
MSI, that is the value written in the MSI data TLP is determined by
the bitmap allocation.

For instance, in a situation where two endpoints sitting on
the PCI bus request the following MSI configuration, with
the current PCI Xilinx bitmap allocation code (that does not
align MSI vector allocation on a power of two boundary):

Endpoint #1: Requesting 1 MSI vector - allocated bitmap bits 0
Endpoint #2: Requesting 2 MSI vectors - allocated bitmap bits [1,2]

The bitmap value(s) corresponds to the hwirq number that is programmed
into the Message Data for MSI field in the endpoint MSI capability
and is detected by the root complex to fire the corresponding
MSI irqs. The value written in Message Data for MSI field corresponds
to the first bit allocated in the bitmap for Multi MSI vectors.

The current Xilinx NWL MSI allocation code allows a bitmap allocation
that is not a power of two boundaries, so endpoint #2, is allowed to
toggle Message Data bit[0] to differentiate between its two vectors
(meaning that the MSI data will be respectively 0x0 and 0x1 for the two
vectors allocated to endpoint #2).

This clearly aliases with the Endpoint #1 vector allocation, resulting
in a broken Multi MSI implementation.

Update the code to allocate MSI bitmap ranges with a power of two
alignment, fixing the bug.

Fixes: ab597d35ef ("PCI: xilinx-nwl: Add support for Xilinx NWL PCIe Host Controller")
Suggested-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Bharat Kumar Gogada <bharat.kumar.gogada@xilinx.com>
[lorenzo.pieralisi@arm.com: updated commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-31 07:27:02 +02:00
Niklas Cassel
6b71c62ea9 PCI: qcom: Ensure that PERST is asserted for at least 100 ms
commit 64adde31c8e996a6db6f7a1a4131180e363aa9f2 upstream.

Currently, there is only a 1 ms sleep after asserting PERST.

Reading the datasheets for different endpoints, some require PERST to be
asserted for 10 ms in order for the endpoint to perform a reset, others
require it to be asserted for 50 ms.

Several SoCs using this driver uses PCIe Mini Card, where we don't know
what endpoint will be plugged in.

The PCI Express Card Electromechanical Specification r2.0, section
2.2, "PERST# Signal" specifies:

"On power up, the deassertion of PERST# is delayed 100 ms (TPVPERL) from
the power rails achieving specified operating limits."

Add a sleep of 100 ms before deasserting PERST, in order to ensure that
we are compliant with the spec.

Fixes: 82a823833f ("PCI: qcom: Add Qualcomm PCIe controller driver")
Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
Cc: stable@vger.kernel.org # 4.5+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-07-26 09:14:26 +02:00
Dexuan Cui
4d8504004c PCI: hv: Fix a use-after-free bug in hv_eject_device_work()
commit 4df591b20b80cb77920953812d894db259d85bd7 upstream.

Fix a use-after-free in hv_eject_device_work().

Fixes: 05f151a73ec2 ("PCI: hv: Fix a memory leak in hv_eject_device_work()")
Signed-off-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-07-26 09:14:26 +02:00
Ivaylo Georgiev
e09e20aa23 Merge android-4.19.51 (d1f7f3b) into msm-4.19
* refs/heads/tmp-d1f7f3b:
  Linux 4.19.51
  ALSA: seq: Cover unsubscribe_port() in list_mutex
  drm/vc4: fix fb references in async update
  ovl: support stacked SEEK_HOLE/SEEK_DATA
  ovl: check the capability before cred overridden
  Revert "drm/nouveau: add kconfig option to turn off nouveau legacy contexts. (v3)"
  Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR connections"
  percpu: do not search past bitmap when allocating an area
  gpio: vf610: Do not share irq_chip
  soc: renesas: Identify R-Car M3-W ES1.3
  usb: typec: fusb302: Check vconn is off when we start toggling
  ARM: exynos: Fix undefined instruction during Exynos5422 resume
  pwm: Fix deadlock warning when removing PWM device
  ARM: dts: exynos: Always enable necessary APIO_1V8 and ABB_1V8 regulators on Arndale Octa
  pwm: tiehrpwm: Update shadow register for disabling PWMs
  dmaengine: idma64: Use actual device for DMA transfers
  ice: Add missing case in print_link_msg for printing flow control
  gpio: gpio-omap: add check for off wake capable gpios
  PCI: xilinx: Check for __get_free_pages() failure
  block, bfq: increase idling for weight-raised queues
  video: imsttfb: fix potential NULL pointer dereferences
  video: hgafb: fix potential NULL pointer dereference
  scsi: qla2xxx: Reset the FCF_ASYNC_{SENT|ACTIVE} flags
  PCI: rcar: Fix 64bit MSI message address handling
  PCI: rcar: Fix a potential NULL pointer dereference
  net: hns3: return 0 and print warning when hit duplicate MAC
  power: supply: max14656: fix potential use-before-alloc
  platform/x86: intel_pmc_ipc: adding error handling
  ARM: OMAP2+: pm33xx-core: Do not Turn OFF CEFUSE as PPA may be using it
  drm/amd/display: Use plane->color_space for dpp if specified
  PCI: rpadlpar: Fix leaked device_node references in add/remove paths
  ARM: dts: imx6qdl: Specify IMX6QDL_CLK_IPG as "ipg" clock to SDMA
  ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ipg" clock to SDMA
  ARM: dts: imx6ul: Specify IMX6UL_CLK_IPG as "ipg" clock to SDMA
  ARM: dts: imx7d: Specify IMX7D_CLK_IPG as "ipg" clock to SDMA
  ARM: dts: imx6sll: Specify IMX6SLL_CLK_IPG as "ipg" clock to SDMA
  ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ahb" clock to SDMA
  ARM: dts: imx53: Specify IMX5_CLK_IPG as "ahb" clock to SDMA
  ARM: dts: imx50: Specify IMX5_CLK_IPG as "ahb" clock to SDMA
  ARM: dts: imx51: Specify IMX5_CLK_IPG as "ahb" clock to SDMA
  soc: rockchip: Set the proper PWM for rk3288
  clk: rockchip: Turn on "aclk_dmac1" for suspend on rk3288
  soc: mediatek: pwrap: Zero initialize rdata in pwrap_init_cipher
  PCI: keystone: Prevent ARM32 specific code to be compiled for ARM64
  platform/chrome: cros_ec_proto: check for NULL transfer function
  i40e: Queues are reserved despite "Invalid argument" error
  x86/PCI: Fix PCI IRQ routing table memory leak
  net: thunderbolt: Unregister ThunderboltIP protocol handler when suspending
  switchtec: Fix unintended mask of MRPC event
  iommu/arm-smmu-v3: Don't disable SMMU in kdump kernel
  vfio: Fix WARNING "do not call blocking ops when !TASK_RUNNING"
  nfsd: avoid uninitialized variable warning
  nfsd: allow fh_want_write to be called twice
  fuse: retrieve: cap requested size to negotiated max_write
  nvmem: sunxi_sid: Support SID on A83T and H5
  nvmem: core: fix read buffer in place
  ALSA: hda - Register irq handler after the chip initialization
  netfilter: nf_flow_table: fix netdev refcnt leak
  netfilter: nf_flow_table: check ttl value in flow offload data path
  nvme-pci: shutdown on timeout during deletion
  nvme-pci: unquiesce admin queue on shutdown
  PCI: designware-ep: Use aligned ATU window for raising MSI interrupts
  misc: pci_endpoint_test: Fix test_reg_bar to be updated in pci_endpoint_test
  iommu/vt-d: Set intel_iommu_gfx_mapped correctly
  blk-mq: move cancel of requeue_work into blk_mq_release
  watchdog: fix compile time error of pretimeout governors
  watchdog: imx2_wdt: Fix set_timeout for big timeout values
  netfilter: nf_tables: fix base chain stat rcu_dereference usage
  mips: Make sure dt memory regions are valid
  netfilter: nf_conntrack_h323: restore boundary check correctness
  netfilter: nf_flow_table: fix missing error check for rhashtable_insert_fast
  mmc: mmci: Prevent polling for busy detection in IRQ context
  ovl: do not generate duplicate fsnotify events for "fake" path
  PCI: dwc: Free MSI IRQ page in dw_pcie_free_msi()
  PCI: dwc: Free MSI in dw_pcie_host_init() error path
  uml: fix a boot splat wrt use of cpu_all_mask
  configfs: fix possible use-after-free in configfs_register_group
  percpu: remove spurious lock dependency between percpu and sched
  f2fs: fix to do checksum even if inode page is uptodate
  f2fs: fix to do sanity check on valid block count of segment
  f2fs: fix to use inline space only if inline_xattr is enable
  f2fs: fix to avoid panic in dec_valid_block_count()
  f2fs: fix to clear dirty inode in error path of f2fs_iget()
  f2fs: fix to do sanity check on free nid
  f2fs: fix to avoid panic in f2fs_remove_inode_page()
  f2fs: fix to avoid panic in f2fs_inplace_write_data()
  f2fs: fix to avoid panic in do_recover_data()
  ntp: Allow TAI-UTC offset to be set to zero
  mailbox: stm32-ipcc: check invalid irq
  pwm: meson: Use the spin-lock only to protect register modifications
  EDAC/mpc85xx: Prevent building as a module
  bpf: fix undefined behavior in narrow load handling
  drm/nouveau/kms/gv100-: fix spurious window immediate interlocks
  objtool: Don't use ignore flag for fake jumps
  drm/bridge: adv7511: Fix low refresh rate selection
  drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change
  perf/x86/intel: Allow PEBS multi-entry in watermark mode
  mfd: twl6040: Fix device init errors for ACCCTL register
  drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration
  mfd: intel-lpss: Set the device in reset state when init
  mfd: tps65912-spi: Add missing of table registration
  drivers: thermal: tsens: Don't print error message on -EPROBE_DEFER
  thermal: rcar_gen3_thermal: disable interrupt in .remove
  kernel/sys.c: prctl: fix false positive in validate_prctl_map()
  mm/slab.c: fix an infinite loop in leaks_show()
  mm/cma_debug.c: fix the break condition in cma_maxchunk_get()
  mm: page_mkclean vs MADV_DONTNEED race
  mm/cma.c: fix the bitmap status to show failed allocation reason
  initramfs: free initrd memory if opening /initrd.image fails
  mm/cma.c: fix crash on CMA allocation if bitmap allocation fails
  mem-hotplug: fix node spanned pages when we have a node with only ZONE_MOVABLE
  hugetlbfs: on restore reserve error path retain subpool reservation
  mm/hmm: select mmu notifier when selecting HMM
  ARM: prevent tracing IPI_CPU_BACKTRACE
  drm/pl111: Initialize clock spinlock early
  ipc: prevent lockup on alloc_msg and free_msg
  sysctl: return -EINVAL if val violates minmax
  fs/fat/file.c: issue flush after the writeback of FAT
  rapidio: fix a NULL pointer dereference when create_workqueue() fails
  x86: Fix RETPOLINE_CFLAGS check
  BACKPORT: kheaders: Do not regenerate archive if config is not changed
  BACKPORT: kheaders: Move from proc to sysfs
  BACKPORT: Provide in-kernel headers to make extending kernel easier
  UPSTREAM: binder: check for overflow when alloc for security context

Conflicts:
	arch/arm/kernel/smp.c

Change-Id: I3ea68f5be5910b6ae24d16194db149c24c36da36
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-07-18 07:43:59 -07:00
Ivaylo Georgiev
57d6dd49f8 Merge android-4.19.46 (aa07ecb) into msm-4.19
* refs/heads/tmp-aa07ecb:
  Revert "x86_64: Allow breakpoints to emulate call instructions"
  Linux 4.19.46
  fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough
  bpf, lru: avoid messing with eviction heuristics upon syscall lookup
  bpf: add map_lookup_elem_sys_only for lookups from syscall side
  bpf: relax inode permission check for retrieving bpf program
  Revert "selftests/bpf: skip verifier tests for unsupported program types"
  driver core: Postpone DMA tear-down until after devres release for probe failure
  md/raid: raid5 preserve the writeback action after the parity check
  Revert "Don't jump to compute_result state from check_result state"
  perf/x86/intel: Fix race in intel_pmu_disable_event()
  perf bench numa: Add define for RUSAGE_THREAD if not present
  ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour
  x86/mm/mem_encrypt: Disable all instrumentation for early SME setup
  sched/cpufreq: Fix kobject memleak
  iwlwifi: mvm: check for length correctness in iwl_mvm_create_skb()
  qmi_wwan: new Wistron, ZTE and D-Link devices
  bpf: Fix preempt_enable_no_resched() abuse
  power: supply: sysfs: prevent endless uevent loop with CONFIG_POWER_SUPPLY_DEBUG
  KVM: arm/arm64: Ensure vcpu target is unset on reset failure
  net: ieee802154: fix missing checks for regmap_update_bits
  mac80211: Fix kernel panic due to use of txq after free
  x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012
  PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored
  apparmorfs: fix use-after-free on symlink traversal
  securityfs: fix use-after-free on symlink traversal
  power: supply: cpcap-battery: Fix division by zero
  clk: sunxi-ng: nkmp: Avoid GENMASK(-1, 0)
  xfrm4: Fix uninitialized memory read in _decode_session4
  xfrm: Honor original L3 slave device in xfrmi policy lookup
  esp4: add length check for UDP encapsulation
  xfrm: clean up xfrm protocol checks
  vti4: ipip tunnel deregistration fixes.
  xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module
  xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink
  fuse: Add FOPEN_STREAM to use stream_open()
  dm mpath: always free attached_handler_name in parse_path()
  dm integrity: correctly calculate the size of metadata area
  dm delay: fix a crash when invalid device is specified
  dm zoned: Fix zone report handling
  dm cache metadata: Fix loading discard bitset
  PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum
  PCI: Factor out pcie_retrain_link() function
  PCI: rcar: Add the initialization of PCIe link in resume_noirq()
  PCI/AER: Change pci_aer_init() stub to return void
  PCI: Init PCIe feature bits for managed host bridge alloc
  PCI: Mark Atheros AR9462 to avoid bus reset
  PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken
  fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting
  fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display
  fbdev: sm712fb: fix support for 1024x768-16 mode
  fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping VRAM
  fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA
  fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F
  fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75
  fbdev: sm712fb: fix brightness control on reboot, don't set SR30
  fbdev/efifb: Ignore framebuffer memmap entries that lack any memory types
  objtool: Allow AR to be overridden with HOSTAR
  MIPS: perf: Fix build with CONFIG_CPU_BMIPS5000 enabled
  perf intel-pt: Fix sample timestamp wrt non-taken branches
  perf intel-pt: Fix improved sample timestamp
  perf intel-pt: Fix instructions sampling rate
  memory: tegra: Fix integer overflow on tick value calculation
  tracing: Fix partial reading of trace event's id file
  ftrace/x86_64: Emulate call function while updating in breakpoint handler
  x86_64: Allow breakpoints to emulate call instructions
  x86_64: Add gap to int3 to allow for call emulation
  ceph: flush dirty inodes before proceeding with remount
  iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114
  ovl: fix missing upper fs freeze protection on copy up for ioctl
  fuse: honor RLIMIT_FSIZE in fuse_file_fallocate
  fuse: fix writepages on 32bit
  udlfb: introduce a rendering mutex
  udlfb: fix sleeping inside spinlock
  udlfb: delete the unused parameter for dlfb_handle_damage
  clk: rockchip: fix wrong clock definitions for rk3328
  clk: mediatek: Disable tuner_en before change PLL rate
  clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider
  clk: hi3660: Mark clk_gate_ufs_subsys as critical
  PNFS fallback to MDS if no deviceid found
  NFS4: Fix v4.0 client state corruption when mount
  media: imx: Clear fwnode link struct for each endpoint iteration
  media: imx: csi: Allow unknown nearest upstream entities
  media: ov6650: Fix sensor possibly not detected on probe
  phy: ti-pipe3: fix missing bit-wise or operator when assigning val
  cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level()
  of: fix clang -Wunsequenced for be32_to_cpu()
  p54: drop device reference count if fails to enable device
  intel_th: msu: Fix single mode with IOMMU
  dcache: sort the freeing-without-RCU-delay mess for good.
  md: add mddev->pers to avoid potential NULL pointer dereference
  md: batch flush requests.
  Revert "MD: fix lock contention for flush bios"
  proc: prevent changes to overridden credentials
  brd: re-enable __GFP_HIGHMEM in brd_insert_page()
  stm class: Fix channel bitmap on 32-bit systems
  stm class: Fix channel free in stm output free path
  parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code
  parisc: Use PA_ASM_LEVEL in boot code
  parisc: Skip registering LED when running in QEMU
  parisc: Export running_on_qemu symbol for modules
  net/mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled
  net/mlx5: Imply MLXFW in mlx5_core
  vsock/virtio: Initialize core virtio vsock before registering the driver
  tipc: fix modprobe tipc failed after switch order of device registration
  vsock/virtio: free packets during the socket release
  tipc: switch order of device registration to fix a crash
  rtnetlink: always put IFLA_LINK for links with a link-netnsid
  ppp: deflate: Fix possible crash in deflate_init
  nfp: flower: add rcu locks when accessing netdev for tunnels
  net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions
  net: test nouarg before dereferencing zerocopy pointers
  net/mlx4_core: Change the error print to info print
  net: avoid weird emergency message
  net: Always descend into dsa/
  ipv6: prevent possible fib6 leaks
  ipv6: fix src addr routing with the exception table
  Enable CONFIG_ION_SYSTEM_HEAP
  ANDROID: Enable LTO and CFI
  Revert "ANDROID: cuttlefish 4.19: enable CONFIG_CRYPTO_AES_NI_INTEL=y"

Conflicts:
	drivers/hwtracing/stm/core.c

Change-Id: I7da86200695082b7ed40c5e6290c5b3203e094dd
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-07-12 08:45:58 -07:00
Tony Truong
709335ea1d msm: pcie: add support for LTR and L1.2 threshold
Add support to program PCIe driver L1.2 threshold so device
can know when or if it can enter to L1.2.

Change-Id: I9ae93f0e4ecb7956fca10436ad024e422a3cc5cc
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-06-27 16:33:40 -07:00
qctecmdr
3bde71a356 Merge "msm: pcie: disable/enable link LPM during bandwidth scaling" 2019-06-21 15:45:22 -07:00
qctecmdr
16bf82e507 Merge "Merge android-4.19.44 (0b63cd6) into msm-4.19" 2019-06-21 02:30:24 -07:00
Tony Truong
b709fb3348 msm: pcie: disable/enable link LPM during bandwidth scaling
When switching link width or gen speed, the link needs to be in
L0. Disable all link lower power modes to keep it in L0 until
the switch completes.

Change-Id: Ifbfb6880eee3dc3345bf1cbbb39dffd0ca89e648
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-06-19 19:17:36 -07:00
qctecmdr
cdc8ff0dc3 Merge "msm: pcie: update to use rpmsg_trysend instead of rpmsg_send" 2019-06-19 14:55:08 -07:00
Tony Truong
107e9e4487 msm: pcie: support dynamic CX and rate change clock scaling
By default, PCIe driver will vote CX and rate change clock to
support the highest GEN speed. Not all devices support and link
up with RC max GEN speed. To save power, PCIe will scale down
the CX corner and rate change clock based on the actual link up
GEN speed.

Change-Id: I9543d1cb6e707686553a159ce3b03edaa85eb39c
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-06-19 11:06:00 -07:00
Tony Truong
155e78e163 msm: pcie: expand PCIe bandwidth scaling
Instead of supporting only GEN1 and GEN3 scaling, expand PCIe
bus driver to support scaling between GEN1, GEN2, and GEN3.
Also update PCIe bus driver to check the new target bandwidth
is met.

Change-Id: I0f42a350f3d20b64945f5bde1216868e5d4c8cb5
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-06-19 11:05:55 -07:00
Tony Truong
ab8a1ce352 msm: pcie: add PCIe bandwidth scale table support
Based on PCIe link Gen speed, CX voltage corner and rate change
clock frequency can be scaled accordingly. Add support to
retrieve bandwidth scale table from devicetree to support
robust scaling.

Change-Id: I2b22a397edfdde8d27c1a608df61ff10748b920d
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-06-19 01:03:25 -07:00
Tony Truong
b9adbfd970 msm: pcie: aggregate PCIe rate change clock vote
PCIe rate change clock is shared among all PCIe ports. Based on
use case, each PCIe will vote for either 19.2MHz or 100HMz. Only
the last vote counts. Therefore, add support to aggregate all
votes and set the clock rate to meet all PCIe requirements.

Change-Id: Iaf6aa0ef667e4f89ce8653ed6958c76367d2dd2a
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-06-18 18:54:28 -07:00
Ivaylo Georgiev
be55f32081 Merge android-4.19.44 (0b63cd6) into msm-4.19
* refs/heads/tmp-0b63cd6:
  Linux 4.19.44
  PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary
  PCI: hv: Add hv_pci_remove_slots() when we unload the driver
  PCI: hv: Fix a memory leak in hv_eject_device_work()
  powerpc/booke64: set RI in default MSR
  powerpc/powernv/idle: Restore IAMR after idle
  powerpc/book3s/64: check for NULL pointer in pgd_alloc()
  drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl
  drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl
  tipc: fix hanging clients using poll with EPOLLOUT flag
  isdn: bas_gigaset: use usb_fill_int_urb() properly
  tuntap: synchronize through tfiles array instead of tun->numqueues
  tuntap: fix dividing by zero in ebpf queue selection
  vrf: sit mtu should not be updated when vrf netdev is the link
  vlan: disable SIOCSHWTSTAMP in container
  selinux: do not report error on connect(AF_UNSPEC)
  packet: Fix error path in packet_init
  net: ucc_geth - fix Oops when changing number of buffers in the ring
  net: seeq: fix crash caused by not set dev.parent
  net: macb: Change interrupt and napi enable order in open
  net: ethernet: stmmac: dwmac-sun8i: enable support of unicast filtering
  net: dsa: Fix error cleanup path in dsa_init_module
  ipv4: Fix raw socket lookup for local traffic
  fib_rules: return 0 directly if an exactly same rule exists when NLM_F_EXCL not supplied
  dpaa_eth: fix SG frame cleanup
  bridge: Fix error path for kobject_init_and_add()
  bonding: fix arp_validate toggling in active-backup mode
  powerpc/64s: Include cpu header
  um: Don't hardcode path as it is architecture dependent
  Don't jump to compute_result state from check_result state
  rtlwifi: rtl8723ae: Fix missing break in switch statement
  mwl8k: Fix rate_idx underflow
  cw1200: fix missing unlock on error in cw1200_hw_scan()
  x86/kprobes: Avoid kretprobe recursion bug
  nfc: nci: Potential off by one in ->pipes[] array
  NFC: nci: Add some bounds checking in nci_hci_cmd_received()
  net: strparser: partially revert "strparser: Call skb_unclone conditionally"
  net/tls: fix the IV leaks
  mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue
  mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue
  mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue
  mlxsw: spectrum_switchdev: Add MDB entries in prepare phase
  net: fec: manage ahb clock in runtime pm
  netfilter: nf_tables: add missing ->release_ops() in error path of newrule()
  netfilter: nf_tables: use-after-free in dynamic operations
  usb: typec: Fix unchecked return value
  mm/memory.c: fix modifying of page protection by insert_pfn()
  net: dsa: mv88e6xxx: fix few issues in mv88e6390x_port_set_cmode
  powerpc/smp: Fix NMI IPI xmon timeout
  powerpc/smp: Fix NMI IPI timeout
  mm/memory_hotplug.c: drop memory device reference after find_memory_block()
  RDMA/hns: Bugfix for mapping user db
  Input: synaptics-rmi4 - fix possible double free
  drm/sun4i: Unbind components before releasing DRM and memory
  spi: ST ST95HF NFC: declare missing of table
  spi: Micrel eth switch: declare missing of table
  ARM: 8856/1: NOMMU: Fix CCR register faulty initialization when MPU is disabled
  drm/imx: don't skip DP channel disable for background plane
  gpu: ipu-v3: dp: fix CSC handling
  netfilter: fix nf_l4proto_log_invalid to log invalid packets
  selftests/net: correct the return value for run_netsocktests
  drm/sun4i: Fix component unbinding and component master deletion
  drm/sun4i: Set device driver data at bind time for use in unbind
  s390: ctcm: fix ctcm_new_device error return code
  MIPS: perf: ath79: Fix perfcount IRQ assignment
  netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook()
  netfilter: ctnetlink: don't use conntrack/expect object addresses as id
  ipvs: do not schedule icmp errors from tunnels
  selftests: netfilter: check icmp pkttoobig errors are set as related
  init: initialize jump labels before command line option parsing
  mm: fix inactive list balancing between NUMA nodes and cgroups
  scsi: aic7xxx: fix EISA support
  ocelot: Don't sleep in atomic context (irqs_disabled())
  ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash
  tools lib traceevent: Fix missing equality check for strcmp
  KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing
  KVM: fix spectrev1 gadgets
  x86/reboot, efi: Use EFI reboot for Acer TravelMate X514-51T
  x86/build/lto: Fix truncated .bss with -fdata-sections
  s390/pkey: add one more argument space for debug feature entry
  drm/amd/display: If one stream full updates, full update all planes
  afs: Unlock pages for __pagevec_release()
  qede: fix write to free'd pointer error and double free of ptp
  vxge: fix return of a free'd memblock on a failed dma mapping
  mISDN: Check address length before reading address family
  selftests: fib_tests: Fix 'Command line is not complete' errors
  clocksource/drivers/oxnas: Fix OX820 compatible
  clocksource/drivers/npcm: select TIMER_OF
  drm/amd/display: extending AUX SW Timeout
  s390/3270: fix lockdep false positive on view->lock
  libnvdimm/pmem: fix a possible OOB access when read and write pmem
  nl80211: Add NL80211_FLAG_CLEAR_SKB flag for other NL commands
  mac80211: fix memory accounting with A-MSDU aggregation
  cfg80211: Handle WMM rules in regulatory domain intersection
  mac80211: Increase MAX_MSG_LEN
  mac80211: fix unaligned access in mesh table hash function
  s390/dasd: Fix capacity calculation for large volumes
  libnvdimm/btt: Fix a kmemdup failure check
  HID: input: add mapping for "Toggle Display" key
  HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys
  HID: input: add mapping for Expose/Overview key
  libnvdimm/namespace: Fix a potential NULL pointer dereference
  acpi/nfit: Always dump _DSM output payload
  iio: adc: xilinx: prevent touching unclocked h/w on remove
  iio: adc: xilinx: fix potential use-after-free on probe
  iio: adc: xilinx: fix potential use-after-free on remove
  USB: serial: fix unthrottle races
  virt: vbox: Sanity-check parameter types for hgcm-calls coming from userspace
  kernfs: fix barrier usage in __kernfs_new_node()
  hwmon: (pwm-fan) Disable PWM if fetching cooling data fails
  platform/x86: dell-laptop: fix rfkill functionality
  platform/x86: thinkpad_acpi: Disable Bluetooth for some machines
  platform/x86: sony-laptop: Fix unintentional fall-through
  bfq: update internal depth state when queue depth changes
  ANDROID: cuttlefish_defconfig: Disable DEVTMPFS
  ANDROID: Move from clang r349610 to r353983c.
  f2fs: fix to avoid accessing xattr across the boundary
  f2fs: fix to avoid potential race on sbi->unusable_block_count access/update
  f2fs: add tracepoint for f2fs_filemap_fault()
  f2fs: introduce DATA_GENERIC_ENHANCE
  f2fs: fix to handle error in f2fs_disable_checkpoint()
  f2fs: remove redundant check in f2fs_file_write_iter()
  f2fs: fix to be aware of readonly device in write_checkpoint()
  f2fs: fix to skip recovery on readonly device
  f2fs: fix to consider multiple device for readonly check
  f2fs: relocate chksum_offset for large_nat_bitmap feature
  f2fs: allow unfixed f2fs_checkpoint.checksum_offset
  f2fs: Replace spaces with tab
  f2fs: insert space before the open parenthesis '('
  f2fs: allow address pointer number of dnode aligning to specified size
  f2fs: introduce f2fs_read_single_page() for cleanup
  f2fs: mark is_extension_exist() inline
  f2fs: fix to set FI_UPDATE_WRITE correctly
  f2fs: fix to avoid panic in f2fs_inplace_write_data()
  f2fs: fix to do sanity check on valid block count of segment
  f2fs: fix to do sanity check on valid node/block count
  f2fs: fix to avoid panic in do_recover_data()
  f2fs: fix to do sanity check on free nid
  f2fs: fix to do checksum even if inode page is uptodate
  f2fs: fix to avoid panic in f2fs_remove_inode_page()
  f2fs: fix to clear dirty inode in error path of f2fs_iget()
  f2fs: remove new blank line of f2fs kernel message
  f2fs: fix wrong __is_meta_io() macro
  f2fs: fix to avoid panic in dec_valid_node_count()
  f2fs: fix to avoid panic in dec_valid_block_count()
  f2fs: fix to use inline space only if inline_xattr is enable
  f2fs: fix to retrieve inline xattr space
  f2fs: fix error path of recovery
  f2fs: fix to avoid deadloop in foreground GC
  f2fs: data: fix warning Using plain integer as NULL pointer
  f2fs: add tracepoint for f2fs_file_write_iter()
  f2fs: add comment for conditional compilation statement
  f2fs: fix potential recursive call when enabling data_flush
  f2fs: improve discard handling with multi-device volumes
  f2fs: Reduce zoned block device memory usage
  f2fs: Fix use of number of devices

Conflicts:
	fs/f2fs/data.c
	mm/vmscan.c

Change-Id: I1c7d74a42db572d3fe024a8466396f4503fc9d2b
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-06-18 01:10:25 -07:00
Kangjie Lu
47d281bbbf PCI: xilinx: Check for __get_free_pages() failure
[ Upstream commit 699ca30162686bf305cdf94861be02eb0cf9bda2 ]

If __get_free_pages() fails, return -ENOMEM to avoid a NULL pointer
dereference.

Signed-off-by: Kangjie Lu <kjlu@umn.edu>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Reviewed-by: Mukesh Ojha <mojha@codeaurora.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-06-15 11:54:10 +02:00