Commit Graph

5182 Commits

Author SHA1 Message Date
1d0e7a63aa Merge "net: Add snapshot of sockev module" 2019-03-06 05:47:22 -08:00
c61f3c7ecb Merge "Merge android-4.19.20 (c28f73f) into msm-4.19" 2019-03-06 02:45:19 -08:00
de3f2b7fe7 Merge "Merge android-4.19.14 (8735c21) into msm-4.19" 2019-03-05 05:41:54 -08:00
c76c5f058f net: Add snapshot of sockev module
This is a snapshot of the sockev module taken as of msm-4.4
commit 33193859886dd87 ("net: core: Send only BIND and LISTEN events.").

Added module which subscribes to socket notifier events. Notifier events
are then converted to a multicast netlink message for user space
applications to consume.

net: core: null pointer derefernce in sockev_client_cb

sockev_client_cb creates a netlink message and populates
the nlmsg_data using the socket->sock information.
If socket is closed, while the nlmsg_data is being
populated, a null pointer dereference occurs.

BUG: KASAN: null-ptr-deref in sockev_client_cb+0x1e4/0x310 net/core/sockev_nlmcast.c:98
Read of size 2 at addr 0000000000000010 by task syz-executor/9398
CPU: 6 PID: 9398 Comm: syz-executor Tainted: G W O 4.9.92+ #1

Call trace:
[<ffffff94e2bebec4>] sockev_client_cb+0x1e4/0x310 net/core/sockev_nlmcast.c:98
[<ffffff94e14fb20c>] notifier_call_chain+0x94/0xe0 kernel/notifier.c:93
[<ffffff94e14fb894>] __blocking_notifier_call_chain+0x6c/0xb8 kernel/notifier.c:317
[<ffffff94e14fb920>] blocking_notifier_call_chain+0x40/0x50 kernel/notifier.c:328
[<ffffff94e2b727f8>] sockev_notify net/socket.c:180 [inline]
[<ffffff94e2b727f8>] SYSC_listen net/socket.c:1446 [inline]
[<ffffff94e2b727f8>] SyS_listen+0x1e0/0x1f8 net/socket.c:1428
[<ffffff94e1483f70>] el0_svc_naked+0x24/0x28

net: sockev: fix uninitialized data leak into userspace

Socket event string, notifying userspace of socket event, can leak
data into userspace. Memset it before filling it using strlcpy.

net: memset smsg to avoid the padding data

memset smsg to avoid the padding data of kernel to be shared
with user space. Fix is to set fields event to all "0", but there is
actually 6 bytes padding between "sktype" and "skflags", so memset was
done to set all the padding bits to 0.

CRs-Fixed: 1078373
Change-Id: I435486b80ad19c5fa54b098680623e7a4f080198
Acked-by: Manoj Basapathi <manojbm@qti.qualcomm.com>
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Signed-off-by: Tejaswi Tanikella <tejaswit@codeaurora.org>
Signed-off-by: Sauvik Saha <ssaha@codeaurora.org>
2019-03-01 12:40:58 +05:30
ced4c545cd Merge "msm: venc: Add control to enable Native Recorder" 2019-02-28 18:46:18 -08:00
5643b9b50e Merge android-4.19.19 (18ba00a) into msm-4.19
* refs/heads/tmp-18ba00a:
  Revert "scsi: ufs: Use explicit access size in ufshcd_dump_regs"
  Linux 4.19.19
  Input: input_event - fix the CONFIG_SPARC64 mixup
  ide: fix a typo in the settings proc file name
  usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup
  Revert "mm, memory_hotplug: initialize struct pages for the full memory section"
  nvmet-rdma: fix null dereference under heavy load
  nvmet-rdma: Add unlikely for response allocated check
  s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU
  bpf: fix inner map masking to prevent oob under speculation
  bpf: fix sanitation of alu op with pointer / scalar type from different paths
  bpf: prevent out of bounds speculation on pointer arithmetic
  bpf: fix check_map_access smin_value test when pointer contains offset
  bpf: restrict unknown scalars of mixed signed bounds for unprivileged
  bpf: restrict stack pointer arithmetic for unprivileged
  bpf: restrict map value pointer arithmetic for unprivileged
  bpf: enable access to ax register also from verifier rewrite
  bpf: move tmp variable into ax register in interpreter
  bpf: move {prev_,}insn_idx into verifier env
  bpf: add per-insn complexity limit
  bpf: improve verifier branch analysis
  drm/meson: Fix atomic mode switching regression
  vt: invoke notifier on screen size change
  vt: always call notifier with the console lock held
  vt: make vt_console_print() compatible with the unicode screen buffer
  can: flexcan: fix NULL pointer exception during bringup
  can: bcm: check timer values before ktime conversion
  can: dev: __can_get_echo_skb(): fix bogous check for non-existing skb by removing it
  irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size
  net: sun: cassini: Cleanup license conflict
  posix-cpu-timers: Unbreak timer rearming
  x86/entry/64/compat: Fix stack switching for XEN PV
  x86/kaslr: Fix incorrect i8254 outb() parameters
  x86/selftests/pkeys: Fork() to check for state being preserved
  x86/pkeys: Properly copy pkey state at fork()
  KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned
  kvm: x86/vmx: Use kzalloc for cached_vmcs12
  KVM: x86: WARN_ONCE if sending a PV IPI returns a fatal error
  KVM: x86: Fix PV IPIs for 32-bit KVM host
  KVM: x86: Fix single-step debugging
  drm/amdgpu: Add APTX quirk for Lenovo laptop
  dm crypt: fix parsing of extended IV arguments
  dm thin: fix passdown_double_checking_shared_status()
  scsi: ufs: Use explicit access size in ufshcd_dump_regs
  acpi/nfit: Fix command-supported detection
  acpi/nfit: Block function zero DSMs
  Input: uinput - fix undefined behavior in uinput_validate_absinfo()
  Input: input_event - provide override for sparc64
  Input: xpad - add support for SteelSeries Stratus Duo
  smb3: add credits we receive from oplock/break PDUs
  CIFS: Do not reconnect TCP session in add_credits()
  CIFS: Fix credit calculation for encrypted reads with errors
  CIFS: Fix credits calculations for reads with errors
  CIFS: Fix possible hang during async MTU reads and writes
  vgacon: unconfuse vc_origin when using soft scrollback
  Drivers: hv: vmbus: Check for ring when getting debug info
  hv_balloon: avoid touching uninitialized struct page during tail onlining
  tty/n_hdlc: fix __might_sleep warning
  uart: Fix crash in uart_write and uart_put_char
  tty: Handle problem if line discipline does not have receive_buf
  staging: rtl8188eu: Add device code for D-Link DWA-121 rev B1
  mmc: meson-gx: Free irq in release() callback
  mmc: dw_mmc-bluefield: : Fix the license information
  char/mwave: fix potential Spectre v1 vulnerability
  misc: ibmvsm: Fix potential NULL pointer dereference
  s390/smp: fix CPU hotplug deadlock with CPU rescan
  s390/early: improve machine detection
  s390/mm: always force a load of the primary ASCE on context switch
  ARC: perf: map generic branches to correct hardware condition
  ARC: adjust memblock_reserve of kernel memory
  ARCv2: lib: memeset: fix doing prefetchw outside of buffer
  ALSA: hda - Add mute LED support for HP ProBook 470 G5
  ALSA: hda/realtek - Fix typo for ALC225 model
  inotify: Fix fd refcount leak in inotify_add_watch().
  clk: socfpga: stratix10: fix naming convention for the fixed-clocks
  clk: socfpga: stratix10: fix rate calculation for pll clocks
  ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode
  ASoC: rt5514-spi: Fix potential NULL pointer dereference
  ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages
  ceph: clear inode pointer when snap realm gets dropped by its inode
  USB: serial: pl2303: add new PID to support PL2303TB
  USB: serial: simple: add Motorola Tetra TPG2200 device id
  USB: leds: fix regression in usbport led trigger
  mei: me: add denverton innovation engine device IDs
  mei: me: mark LBG devices as having dma support
  tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state
  ip6_gre: update version related info when changing link
  net: phy: marvell: Fix deadlock from wrong locking
  erspan: build the header with the right proto according to erspan_ver
  ip6_gre: fix tunnel list corruption for x-netns
  udp: with udp_segment release on error path
  net/sched: cls_flower: allocate mask dynamically in fl_change()
  mlxsw: pci: Ring CQ's doorbell before RDQ's
  mlxsw: spectrum_fid: Update dummy FID index
  net: ipv4: Fix memory leak in network namespace dismantle
  mlxsw: pci: Increase PCI SW reset timeout
  vhost: log dirty page correctly
  openvswitch: Avoid OOB read when parsing flow nlattrs
  net_sched: refetch skb protocol for each filter
  net/sched: act_tunnel_key: fix memory leak in case of action replace
  net: phy: mdio_bus: add missing device_del() in mdiobus_register() error handling
  net: phy: marvell: Errata for mv88e6390 internal PHYs
  net: Fix usage of pskb_trim_rcsum
  net: bridge: Fix ethernet header pointer before check skb forwardable
  amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs
  FROMGIT: PM / EM: Expose the Energy Model in debugfs

Change-Id: I2cd5399c3dedc227e2131f689b4905e9d454b190
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-02-27 02:23:28 -08:00
ffb1bfc29b Merge android-4.19.15 (caf5433) into msm-4.19
* refs/heads/tmp-caf5433:
  Linux 4.19.15
  bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw
  drm/amd/display: Fix unintialized max_bpc state values
  drm/rockchip: psr: do not dereference encoder before it is null checked.
  drm/vc4: Set ->is_yuv to false when num_planes == 1
  drm/nouveau/drm/nouveau: Check rc from drm_dp_mst_topology_mgr_resume()
  lib: fix build failure in CONFIG_DEBUG_VIRTUAL test
  of: __of_detach_node() - remove node from phandle cache
  of: of_node_get()/of_node_put() nodes held in phandle cache
  power: supply: olpc_battery: correct the temperature units
  intel_th: msu: Fix an off-by-one in attribute store
  genwqe: Fix size check
  drivers/perf: hisi: Fixup one DDRC PMU register offset
  video: fbdev: pxafb: Fix "WARNING: invalid free of devm_ allocated data"
  ceph: don't update importing cap's mseq when handing cap export
  sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b
  iommu/vt-d: Handle domain agaw being less than iommu agaw
  RDMA/srpt: Fix a use-after-free in the channel release code
  rxe: fix error completion wr_id and qp_num
  9p/net: put a lower bound on msize
  iio: dac: ad5686: fix bit shift read register
  powerpc/tm: Set MSR[TS] just prior to recheckpoint
  Revert "powerpc/tm: Unset MSR[TS] if not recheckpointing"
  leds: pwm: silently error out on EPROBE_DEFER
  arm64: relocatable: fix inconsistencies in linker script and options
  arm64: drop linker script hack to hide __efistub_ symbols
  nfsd4: zero-length WRITE should succeed
  lockd: Show pid of lockd for remote locks
  PCI / PM: Allow runtime PM without callback functions
  selinux: policydb - fix byte order and alignment issues
  b43: Fix error in cordic routine
  gfs2: Fix loop in gfs2_rbm_find
  gfs2: Get rid of potential double-freeing in gfs2_create_inode
  dlm: memory leaks on error path in dlm_user_request()
  dlm: lost put_lkb on error path in receive_convert() and receive_unlock()
  dlm: possible memory leak on error path in create_lkb()
  dlm: fixed memory leaks after failed ls_remove_names allocation
  block: mq-deadline: Fix write completion handling
  block: deactivate blk_stat timer in wbt_disable_default()
  Fix failure path in alloc_pid()
  driver core: Add missing dev->bus->need_parent_lock checks
  srcu: Lock srcu_data structure in srcu_gp_start()
  ALSA: usb-audio: Always check descriptor sizes in parser code
  ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks
  ALSA: usb-audio: Check mixer unit descriptors more strictly
  ALSA: usb-audio: Avoid access before bLength check in build_audio_procunit()
  ALSA: cs46xx: Potential NULL dereference in probe
  media: cx23885: only reset DMA on problematic CPUs
  mt76x0: init hw capabilities
  dma-direct: do not include SME mask in the DMA supported check
  raid6/ppc: Fix build for clang
  powerpc/boot: Set target when cross-compiling for clang
  Makefile: Export clang toolchain variables
  kbuild: consolidate Clang compiler flags
  kbuild: add -no-integrated-as Clang option unconditionally
  powerpc: Disable -Wbuiltin-requires-header when setjmp is used
  powerpc: avoid -mno-sched-epilog on GCC 4.9 and newer
  powerpc: consolidate -mno-sched-epilog into FTRACE flags
  powerpc: remove old GCC version checks
  sunrpc: use SVC_NET() in svcauth_gss_* functions
  sunrpc: fix cache_head leak due to queued request
  memcg, oom: notify on oom killer invocation from the charge path
  mm, swap: fix swapoff with KSM pages
  mm, hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL
  mm, hmm: use devm semantics for hmm_devmem_{add, remove}
  mm, devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support
  mm, devm_memremap_pages: fix shutdown handling
  mm, devm_memremap_pages: kill mapping "System RAM" support
  mm, devm_memremap_pages: mark devm_memremap_pages() EXPORT_SYMBOL_GPL
  hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined
  zram: fix double free backing device
  fork: record start_time late
  scsi: lpfc: do not set queue->page_count to 0 if pc_sli4_params.wqpcnt is invalid
  scsi: zfcp: fix posting too many status read buffers leading to adapter shutdown
  auxdisplay: charlcd: fix x/y command parsing
  serial/sunsu: fix refcount leak
  qmi_wwan: Fix qmap header retrieval in qmimux_rx_fixup
  net: netxen: fix a missing check and an uninitialized use
  Input: synaptics - enable SMBus for HP EliteBook 840 G4
  gpio: mvebu: only fail on missing clk if pwm is actually to be used
  lan743x: Remove MAC Reset from initialization
  virtio: fix test build after uio.h change
  m68k: Fix memblock-related crashes
  kbuild: fix false positive warning/error about missing libelf
  mac80211: free skb fraglist before freeing the skb
  nl80211: fix memory leak if validate_pae_over_nl80211() fails
  vxge: ensure data0 is initialized in when fetching firmware version information
  lan78xx: Resolve issue with changing MAC address
  lan743x: Expand phy search for LAN7431
  net: macb: add missing barriers when reading descriptors
  net: macb: fix dropped RX frames due to a race
  net: macb: fix random memory corruption on RX with 64-bit DMA
  qed: Fix an error code qed_ll2_start_xmit()
  SUNRPC: Fix a race with XPRT_CONNECTING
  mac80211: fix a kernel panic when TXing after TXQ teardown
  net: hns: Fix ping failed when use net bridge and send multicast
  net: hns: Add mac pcs config when enable|disable mac
  net: hns: Fix ntuple-filters status error.
  net: hns: Avoid net reset caused by pause frames storm
  net: hns: Free irq when exit from abnormal branch
  net: hns: Clean rx fbd when ae stopped.
  net: hns: Fixed bug that netdev was opened twice
  net: hns: Some registers use wrong address according to the datasheet.
  net: hns: All ports can not work when insmod hns ko after rmmod.
  net: hns: Incorrect offset address used for some registers.
  w90p910_ether: remove incorrect __init annotation
  net/tls: Init routines in create_ctx
  drivers: net: xgene: Remove unnecessary forward declarations
  x86, hyperv: remove PCI dependency
  mt76: fix potential NULL pointer dereference in mt76_stop_tx_queues
  scsi: target: iscsi: cxgbit: add missing spin_lock_init()
  scsi: target: iscsi: cxgbit: fix csk leak
  bnx2x: Send update-svid ramrod with retry/poll flags enabled
  bnx2x: Remove configured vlans as part of unload sequence.
  bnx2x: Clear fip MAC when fcoe offload support is disabled
  netfilter: nf_conncount: use rb_link_node_rcu() instead of rb_link_node()
  netfilter: nat: can't use dst_hold on noref dst
  netfilter: ipset: do not call ipset_nest_end after nla_nest_cancel
  ixgbe: Fix race when the VF driver does a reset
  i40e: fix mac filter delete when setting mac address
  x86/dump_pagetables: Fix LDT remap address marker
  x86/mm: Fix guard hole handling
  ieee802154: ca8210: fix possible u8 overflow in ca8210_rx_done
  ibmvnic: Fix non-atomic memory allocation in IRQ context
  ibmvnic: Convert reset work item mutex to spin lock
  Input: synaptics - enable RMI on ThinkPad T560
  Input: omap-keypad - fix idle configuration to not block SoC idle states
  scsi: bnx2fc: Fix NULL dereference in error handling
  Revert "scsi: qla2xxx: Fix NVMe Target discovery"
  netfilter: seqadj: re-load tcp header pointer after possible head reallocation
  netfilter: nf_tables: fix suspicious RCU usage in nft_chain_stats_replace()
  ieee802154: hwsim: fix off-by-one in parse nested
  xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force clears the dst_entry.
  xfrm: Fix bucket count reported to userspace
  xfrm: Fix error return code in xfrm_output_one()
  checkstack.pl: fix for aarch64
  IB/core: Fix oops in netdev_next_upper_dev_rcu()
  drm/amdgpu: Fix DEBUG_LOCKS_WARN_ON(depth <= 0) in amdgpu_ctx.lock
  powerpc/mm: Fallback to RAM if the altmap is unusable
  Input: restore EV_ABS ABS_RESERVED
  IB/mlx5: Block DEVX umem from the non applicable cases
  ARM: dts: imx7d-nitrogen7: Fix the description of the Wifi clock
  ARM: imx: update the cpu power up timing setting on i.mx6sx
  ARM: dts: imx7d-pico: Describe the Wifi clock
  HID: ite: Add USB id match for another ITE based keyboard rfkill key quirk
  powerpc/mm: Fix linux page tables build with some configs
  powerpc: Fix COFF zImage booting on old powermacs
  arm64: dts: mt7622: fix no more console output on rfb1
  pinctrl: meson: fix pull enable register calculation
  ARM: dts: sun8i: a83t: bananapi-m3: increase vcc-pd voltage to 3.3V
  f2fs: don't access node/meta inode mapping after iput
  f2fs: wait on atomic writes to count F2FS_CP_WB_DATA
  f2fs: sanity check of xattr entry size
  f2fs: fix use-after-free issue when accessing sbi->stat_info
  f2fs: check PageWriteback flag for ordered case
  f2fs: fix validation of the block count in sanity_check_raw_super
  f2fs: fix missing unlock(sbi->gc_mutex)
  f2fs: fix to dirty inode synchronously
  f2fs: clean up structure extent_node
  f2fs: fix block address for __check_sit_bitmap
  f2fs: fix sbi->extent_list corruption issue
  f2fs: clean up checkpoint flow
  f2fs: flush stale issued discard candidates
  f2fs: correct wrong spelling, issing_*
  f2fs: use kvmalloc, if kmalloc is failed
  f2fs: remove redundant comment of unused wio_mutex
  f2fs: fix to reorder set_page_dirty and wait_on_page_writeback
  f2fs: clear PG_writeback if IPU failed
  f2fs: add an ioctl() to explicitly trigger fsck later
  f2fs: avoid frequent costly fsck triggers
  f2fs: fix m_may_create to make OPU DIO write correctly
  f2fs: fix to update new block address correctly for OPU
  f2fs: adjust trace print in f2fs_get_victim() to cover all paths
  f2fs: fix to allow node segment for GC by ioctl path
  f2fs: make "f2fs_fault_name[]" const char *
  f2fs: read page index before freeing
  f2fs: fix wrong return value of f2fs_acl_create
  f2fs: avoid build warn of fall_through
  f2fs: fix race between write_checkpoint and write_begin
  f2fs: check memory boundary by insane namelen
  f2fs: only flush the single temp bio cache which owns the target page
  f2fs: fix out-place-update DIO write
  f2fs: fix to be aware discard/preflush/dio command in is_idle()
  f2fs: add to account direct IO
  f2fs: move dir data flush to write checkpoint process
  f2fs: Change to use DEFINE_SHOW_ATTRIBUTE macro
  f2fs: change segment to section in f2fs_ioc_gc_range
  f2fs: export migration_granularity sysfs entry
  f2fs: support subsectional garbage collection
  f2fs: introduce __is_large_section() for cleanup
  f2fs: clean up f2fs_sb_has_##feature_name
  f2fs: remove codes of unused wio_mutex
  f2fs: fix count of seg_freed to make sec_freed correct
  f2fs: fix to account preflush command for noflush_merge mode
  f2fs: avoid GC causing encrypted file corrupted

Conflicts:
	mm/memory_hotplug.c

Change-Id: I26d2fbdddfa882fe9aae568a84a9269725ffb5ea
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-02-27 02:23:14 -08:00
77906c0942 Merge android-4.19.14 (8735c21) into msm-4.19
* refs/heads/tmp-8735c21:
  ANDROID: thermal: cpu_cooling: Use related_cpus for energy model cpumask check
  Linux 4.19.14
  MIPS: Only include mmzone.h when CONFIG_NEED_MULTIPLE_NODES=y
  spi: bcm2835: Unbreak the build of esoteric configs
  tpm: tpm_i2c_nuvoton: use correct command duration for TPM 2.x
  tpm: tpm_try_transmit() refactor error flow.
  arm64: compat: Avoid sending SIGILL for unallocated syscall numbers
  iommu/arm-smmu-v3: Fix big-endian CMD_SYNC writes
  KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq()
  KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state
  KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum
  KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled
  rtc: m41t80: Correct alarm month range with RTC reads
  ARM: dts: exynos: Specify I2S assigned clocks in proper node
  arm/arm64: KVM: vgic: Force VM halt when changing the active state of GICv3 PPIs/SGIs
  arm64: KVM: Avoid setting the upper 32 bits of VTCR_EL2 to 1
  smb3: fix large reads on encrypted connections
  CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock problem
  MIPS: Fix a R10000_LLSC_WAR logic in atomic.h
  MIPS: OCTEON: mark RGMII interface disabled on OCTEON III
  MIPS: Expand MIPS32 ASIDs to 64 bits
  MIPS: Align kernel load address to 64KB
  MIPS: Ensure pmd_present() returns false after pmd_mknotpresent()
  MIPS: c-r4k: Add r4k_blast_scache_node for Loongson-3
  MIPS: math-emu: Write-protect delay slot emulation pages
  tools lib traceevent: Fix processing of dereferenced args in bprintk events
  media: v4l2-tpg: array index could become negative
  media: vb2: check memory model for VIDIOC_CREATE_BUFS
  media: vivid: free bitmap_cap when updating std/timings/etc.
  media: imx274: fix stack corruption in imx274_read_reg
  media: rc: cec devices do not have a lirc chardev
  media: cec-pin: fix broken tx_ignore_nack_until_eom error injection
  media: cec: keep track of outstanding transmits
  serial: uartps: Fix interrupt mask issue to handle the RX interrupts properly
  f2fs: sanity check of xattr entry size
  f2fs: fix validation of the block count in sanity_check_raw_super
  f2fs: read page index before freeing
  dax: Use non-exclusive wait in wait_entry_unlocked()
  dax: Don't access a freed inode
  powerpc/tm: Unset MSR[TS] if not recheckpointing
  brcmfmac: Fix out of bounds memory access during fw load
  brcmfmac: fix roamoff=1 modparam
  Btrfs: send, fix race with transaction commits that create snapshots
  btrfs: run delayed items before dropping the snapshot
  Btrfs: fix fsync of files with multiple hard links in new directories
  btrfs: skip file_extent generation check for free_space_inode in run_delalloc_nocow
  btrfs: dev-replace: go back to suspend state if another EXCL_OP is running
  btrfs: dev-replace: go back to suspended state if target device is missing
  cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader.
  cgroup: fix CSS_TASK_ITER_PROCS
  crypto: cfb - fix decryption
  crypto: testmgr - add AES-CFB tests
  crypto: chcr - small packet Tx stalls the queue
  crypto: cavium/nitrox - fix a DMA pool free failure
  clk: sunxi-ng: Use u64 for calculation of NM rate
  clk: rockchip: fix typo in rk3188 spdif_frac parent
  spi: bcm2835: Avoid finishing transfer prematurely in IRQ mode
  spi: bcm2835: Fix book-keeping of DMA termination
  spi: bcm2835: Fix race on DMA termination
  ext4: check for shutdown and r/o file system in ext4_write_inode()
  ext4: force inode writes when nfsd calls commit_metadata()
  ext4: avoid declaring fs inconsistent due to invalid file handles
  ext4: include terminating u32 in size of xattr entries when expanding inodes
  ext4: fix EXT4_IOC_GROUP_ADD ioctl
  ext4: missing unlock/put_page() in ext4_try_to_write_inline_data()
  ext4: fix possible use after free in ext4_quota_enable
  ext4: add ext4_sb_bread() to disambiguate ENOMEM cases
  ocxl: Fix endiannes bug in read_afu_name()
  ocxl: Fix endiannes bug in ocxl_link_update_pe()
  perf env: Also consider env->arch == NULL as local operation
  perf pmu: Suppress potential format-truncation warning
  perf script: Use fallbacks for branch stacks
  perf tools: Use fallback for sample_addr_correlates_sym() cases
  perf thread: Add fallback functions for cases where cpumode is insufficient
  perf machine: Record if a arch has a single user/kernel address space
  clocksource/drivers/arc_timer: Utilize generic sched_clock
  DRM: UDL: get rid of useless vblank initialization
  drm/v3d: Skip debugfs dumping GCA on platforms without GCA.
  platform-msi: Free descriptors in platform_msi_domain_free()
  KVM: nVMX: Free the VMREAD/VMWRITE bitmaps if alloc_kvm_area() fails
  arm64: KVM: Make VHE Stage-2 TLB invalidation operations non-interruptible
  KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup
  x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init()
  x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off
  Input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G
  Input: atmel_mxt_ts - don't try to free unallocated kernel memory
  s390/pci: fix sleeping in atomic during hotplug
  ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Gnawty
  ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Clapper
  staging: wilc1000: fix missing read_write setting when reading data
  media: dvb-usb-v2: Fix incorrect use of transfer_flags URB_FREE_BUFFER
  usb: roles: Add a description for the class to Kconfig
  Revert "usb: dwc3: pci: Use devm functions to get the phy GPIOs"
  usb: dwc2: disable power_down on Amlogic devices
  usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable()
  USB: serial: option: add Fibocom NL678 series
  USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays
  usb: dwc2: host: use hrtimer for NAK retries
  ALSA: hda/tegra: clear pending irq handlers
  ALSA: hda/realtek: Enable the headset mic auto detection for ASUS laptops
  ALSA: firewire-lib: use the same print format for 'without_header' tracepoints
  ALSA: firewire-lib: fix wrong assignment for 'out_packet_without_header' tracepoint
  ALSA: firewire-lib: fix wrong handling payload_length as payload_quadlet
  ALSA: fireface: fix for state to fetch PCM frames
  ALSA: hda/realtek: Enable audio jacks of ASUS UX391UA with ALC294
  ALSA: hda: add mute LED support for HP EliteBook 840 G4
  mtd: rawnand: omap2: Pass the parent of pdev to dma_request_chan()
  mtd: rawnand: marvell: prevent timeouts on a loaded machine
  mtd: atmel-quadspi: disallow building on ebsa110
  powerpc/fsl: Fix spectre_v2 mitigations reporting
  ALSA: emux: Fix potential Spectre v1 vulnerabilities
  ALSA: pcm: Fix potential Spectre v1 vulnerability
  ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities
  ALSA: rme9652: Fix potential Spectre v1 vulnerability
  IB/hfi1: Incorrect sizing of sge for PIO will OOPs
  r8169: fix WoL device wakeup enable
  net: Use __kernel_clockid_t in uapi net_stamp.h
  net: mvneta: fix operation for 64K PAGE_SIZE
  net/mlx5e: RX, Fix wrong early return in receive queue poll
  net/mlx5e: Remove unused UDP GSO remaining counter
  mlxsw: core: Increase timeout during firmware flash process
  qed: Fix command number mismatch between driver and the mfw
  net: mvpp2: fix the phylink mode validation
  net/mlx5e: RX, Verify MPWQE stride size is in range
  net/mlx5e: Cancel DIM work on close SQ
  mscc: Configured MAC entries should be locked.
  ipv6: route: Fix return value of ip6_neigh_lookup() on neigh_create() error
  nfp: flower: ensure TCP flags can be placed in IPv6 frame
  net/ipv6: Fix a test against 'ipv6_find_idev()' return value
  ipv6: frags: Fix bogus skb->sk in reassembled packets
  net/mlx5e: Remove the false indication of software timestamping support
  tipc: check group dests after tipc_wait_for_cond()
  net/mlx5: Typo fix in del_sw_hw_rule
  xen/netfront: tolerate frags with no data
  VSOCK: Send reset control packet when socket is partially bound
  vhost: make sure used idx is seen before log in vhost_add_used_n()
  tipc: use lock_sock() in tipc_sk_reinit()
  tipc: fix a double kfree_skb()
  tipc: fix a double free in tipc_enable_bearer()
  tipc: compare remote and local protocols in tipc_udp_enable()
  tipc: check tsk->group in tipc_wait_for_cond()
  tcp: fix a race in inet_diag_dump_icsk()
  sock: Make sock->sk_stamp thread-safe
  sctp: initialize sin6_flowinfo for ipv6 addrs in sctp_inet6addr_event
  qmi_wwan: Add support for Fibocom NL678 series
  qmi_wwan: Added support for Telit LN940 series
  qmi_wwan: Added support for Fibocom NL668 series
  ptr_ring: wrap back ->producer in __ptr_ring_swap_queue()
  packet: validate address length if non-zero
  packet: validate address length
  net/wan: fix a double free in x25_asy_open_tty()
  net/tls: allocate tls context using GFP_ATOMIC
  net: stmmac: Fix an error code in probe()
  net/smc: fix TCP fallback socket release
  netrom: fix locking in nr_find_socket()
  net: phy: Fix the issue that netif always links up after resuming
  net: mvpp2: 10G modes aren't supported on all ports
  net: macb: restart tx after tx used bit read
  net: ipv4: do not handle duplicate fragments as overlapping
  net/hamradio/6pack: use mod_timer() to rearm timers
  net: clear skb->tstamp in forwarding paths
  isdn: fix kernel-infoleak in capi_unlocked_ioctl
  ip: validate header length on virtual device xmit
  ipv6: tunnels: fix two use-after-free
  ipv6: explicitly initialize udp6_addr in udp_sock_create6()
  ipv4: Fix potential Spectre v1 vulnerability
  ip6mr: Fix potential Spectre v1 vulnerability
  ieee802154: lowpan_header_create check must check daddr
  ibmveth: fix DMA unmap error in ibmveth_xmit_start error path
  gro_cell: add napi_disable in gro_cells_destroy
  ax25: fix a use-after-free in ax25_fillin_cb()
  Revert "FROMLIST: PM / EM: Expose the Energy Model in sysfs"
  Revert "FROMLIST: sched: Introduce a sysctl for Energy Aware Scheduling"
  ANDROID: sched: Align EAS with upstream
  ANDROID: cuttlefish_defconfig: Enable VIRTIO_INPUT

Conflicts:
	include/linux/sched/sysctl.h
	kernel/sysctl.c

Change-Id: I44212c239e9ca2b1ce68ed59e95d0f7913159a52
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-02-27 00:17:41 -08:00
8f1241d9bc msm: venc: Add control to enable Native Recorder
Adding control for native recorder mode. Driver can use
this information to decide default encoder behavior.

CRs-Fixed: 2368458
Change-Id: I7dce17330ed240d8b94037129886a5959badf9ab
Signed-off-by: Vaibhav Deshu Venkatesh <vdeshuve@codeaurora.org>
2019-02-25 13:43:25 -08:00
e74173d56e hwrng: Add QRNG driver snapshot for kona
This is a snapshot of the qrng driver as of msm-4.14
commit <be4e0b071e9> (mm: allow vmas with vm_ops to be
speculatively handled) with changes to comply with
msm-4.19 format requirement.

Change-Id: I930b0dfd70db8b2c1ffcb98965aabe45bffbd0ba
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2019-02-22 12:52:20 -08:00
2e7c3098b9 Merge "msm: vidc: Add CVP metadata mode controls" 2019-02-21 06:41:59 -08:00
f63f05e231 msm: vidc: Add CVP metadata mode controls
Add CVP extradata as custom extradata. Clients can use
this to provide CVP metadata. If not set, kernel will use
CVP hardware to fill metadata. Also, introduce a new
v4l2 control to forcefully disable CVP extradata.

CRs-Fixed: 2384822
Change-Id: I7ecbc66cea2e3b340dcefbe794a22b91639a666d
Signed-off-by: Mihir Ganu <mganu@codeaurora.org>
2019-02-20 16:17:45 -08:00
fc483341b6 Merge "cfg80211: Authentication offload to user space in AP mode" 2019-02-19 06:25:45 -08:00
5646d4befc Merge "drivers/soc/qcom: enable the smcinvoke driver" 2019-02-18 03:08:24 -08:00
d6d3bfb561 Merge "Merge android-4.19.12 (16c056d) into msm-4.19" 2019-02-16 03:30:22 -08:00
14dd4f781d Merge "uapi: mmc: Fixed RPMB userspace service compilation" 2019-02-15 01:41:26 -08:00
65c112e076 msm: mink: Snapshot of the smcinvoke driver
This patch is a snapshot of smcinvoke driver taken from
msm-4.14 as of commit <c3715e1> (Merge "drm/msm/dp: change
pinctrl configuration to optional").

Change-Id: I5947a61795f8a1122d43530530a69415fa45ddf9
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2019-02-14 16:04:19 -08:00
d17c7dad25 cfg80211: Authentication offload to user space in AP mode
commit 40cbfa9021 ("cfg80211/nl80211: Optional authentication
offload to userspace")' introduced authentication offload to user
space by the host drivers in station mode. This commit extends
the same for the AP mode too.

Extend NL80211_ATTR_EXTERNAL_AUTH_SUPPORT to also claim the
support of external authentication from the user space in AP mode.
A new flag parameter is introduced in cfg80211_ap_settings to
intend the same while "start ap".

Host driver to use NL80211_CMD_FRAME interface to transmit and
receive the authentication frames to / from the user space.

Host driver to indicate the flag NL80211_RXMGMT_FLAG_EXTERNAL_AUTH
while sending the authentication frame to the user space. This
intends to the user space that the driver wishes it to process
the authentication frame for certain protocols, though it had
initially advertised the support for SME functionality.

User space shall accordingly do the authentication and indicate
its final status through the command NL80211_CMD_EXTERNAL_AUTH.
Allow the command even if userspace doesn't include the attribute
NL80211_ATTR_SSID for AP interface.

Host driver shall continue with the association sequence and
indicate the STA connection status through cfg80211_new_sta.

To facilitate the host drivers in AP mode for matching the pmkid
by the stations during the association, NL80211_CMD_EXTERNAL_AUTH
is also enhanced to include the pmkid to drivers after
the authentication.
This pmkid can also be used in the STA mode to include in the
association request.

Also modify nl80211_external_auth to not mandate SSID in AP mode.
[remove useless nla_get_flag() usage].

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Git-commit: fe4943702c850fa07f963eaa6f1530d9d4c2da78
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
Change-Id: I6341814aa334e25f803953fcb855a439644eb1a9
CRs-Fixed: 2396191
Signed-off-by: Srinivas Dasari <dasaris@codeaurora.org>
2019-02-14 17:20:07 +05:30
daf0546268 uapi: mmc: Fixed RPMB userspace service compilation
Added the mmc_ioc_rpmb structure needed for the RPMB's userspace
service compilation.

Change-Id: Ie74a01d8a7f0172ffd8f283f28c5c1459b07be0f
Signed-off-by: Bao D. Nguyen <nguyenb@codeaurora.org>
2019-02-13 10:44:02 -08:00
9d2c398245 Merge "msm: IPA: fix the QMI response mismatch between Q6 and AP" 2019-02-11 11:17:09 -08:00
eb5272b95a Merge "msm: ipa4: add wigig messages support" 2019-02-08 12:28:17 -08:00
22370f2a00 Merge "udp: add support for UDP_GRO cmsg" 2019-02-06 23:56:24 -08:00
b0d989334c msm: vidc: Add hierp max control and fix hierp encode
Hierp encoding needs max layer count details. Hence, adding support
for max layer count. Also, enabling hybrid hierp along with normal
hierp encoding.

Change-Id: I89eda99735768ae3c80464c95957e4a5adb5bb8e
Signed-off-by: Amit Shekhar <ashekhar@codeaurora.org>
2019-02-06 16:08:13 -08:00
9719a55e4b udp: implement GRO for plain UDP sockets.
This is the RX counterpart of commit bec1f6f697 ("udp: generate gso
with UDP_SEGMENT"). When UDP_GRO is enabled, such socket is also
eligible for GRO in the rx path: UDP segments directed to such socket
are assembled into a larger GSO_UDP_L4 packet.

The core UDP GRO support is enabled with setsockopt(UDP_GRO).

Initial benchmark numbers:

Before:
udp rx:   1079 MB/s   769065 calls/s

After:
udp rx:   1466 MB/s    24877 calls/s

This change introduces a side effect in respect to UDP tunnels:
after a UDP tunnel creation, now the kernel performs a lookup per ingress
UDP packet, while before such lookup happened only if the ingress packet
carried a valid internal header csum.

rfc v2 -> rfc v3:
 - fixed typos in macro name and comments
 - really enforce UDP_GRO_CNT_MAX, instead of UDP_GRO_CNT_MAX + 1
 - acquire socket lock in UDP_GRO setsockopt

rfc v1 -> rfc v2:
 - use a new option to enable UDP GRO
 - use static keys to protect the UDP GRO socket lookup

Change-Id: I0437490b1b8843b377c946366caf739620182fe4
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git
Git-commit: e20cf8d3f1f763ad28a9cb3b41305b8a8a42653e
Signed-off-by: Sean Tranchetti <stranche@codeaurora.org>
2019-02-06 10:14:35 -07:00
2451562b69 msm: ipa4: add wigig messages support
Notify IPACM about new wigig clients and FST changes.

Change-Id: I9d6ba25b273a160de96fa5a3512526e245b64e81
Signed-off-by: Amir Levy <alevy@codeaurora.org>
2019-02-06 06:47:26 -08:00
6eaa043b4f net: qualcomm: rmnet: Add QMAPv5 header definitions
Adds definitions for new QMAPv5 checksum offload and coalescing headers,
as well as changing the main QMAP header definition to support these
additional headers.

Change-Id: I62fdf6d8d35e8788b089156703fdf3a1d6367e5b
Acked-by: Ryan Chapman <rchapman@qti.qualcomm.com>
Signed-off-by: Sean Tranchetti <stranche@codeaurora.org>
2019-02-05 10:21:20 -07:00
7d1a88e309 Merge "NFC: Add snapshot of NQxxx NFC driver" 2019-01-31 11:55:43 -08:00
18ba00a34e Merge 4.19.19 into android-4.19
Changes in 4.19.19
	amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs
	net: bridge: Fix ethernet header pointer before check skb forwardable
	net: Fix usage of pskb_trim_rcsum
	net: phy: marvell: Errata for mv88e6390 internal PHYs
	net: phy: mdio_bus: add missing device_del() in mdiobus_register() error handling
	net/sched: act_tunnel_key: fix memory leak in case of action replace
	net_sched: refetch skb protocol for each filter
	openvswitch: Avoid OOB read when parsing flow nlattrs
	vhost: log dirty page correctly
	mlxsw: pci: Increase PCI SW reset timeout
	net: ipv4: Fix memory leak in network namespace dismantle
	mlxsw: spectrum_fid: Update dummy FID index
	mlxsw: pci: Ring CQ's doorbell before RDQ's
	net/sched: cls_flower: allocate mask dynamically in fl_change()
	udp: with udp_segment release on error path
	ip6_gre: fix tunnel list corruption for x-netns
	erspan: build the header with the right proto according to erspan_ver
	net: phy: marvell: Fix deadlock from wrong locking
	ip6_gre: update version related info when changing link
	tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state
	mei: me: mark LBG devices as having dma support
	mei: me: add denverton innovation engine device IDs
	USB: leds: fix regression in usbport led trigger
	USB: serial: simple: add Motorola Tetra TPG2200 device id
	USB: serial: pl2303: add new PID to support PL2303TB
	ceph: clear inode pointer when snap realm gets dropped by its inode
	ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages
	ASoC: rt5514-spi: Fix potential NULL pointer dereference
	ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode
	clk: socfpga: stratix10: fix rate calculation for pll clocks
	clk: socfpga: stratix10: fix naming convention for the fixed-clocks
	inotify: Fix fd refcount leak in inotify_add_watch().
	ALSA: hda/realtek - Fix typo for ALC225 model
	ALSA: hda - Add mute LED support for HP ProBook 470 G5
	ARCv2: lib: memeset: fix doing prefetchw outside of buffer
	ARC: adjust memblock_reserve of kernel memory
	ARC: perf: map generic branches to correct hardware condition
	s390/mm: always force a load of the primary ASCE on context switch
	s390/early: improve machine detection
	s390/smp: fix CPU hotplug deadlock with CPU rescan
	misc: ibmvsm: Fix potential NULL pointer dereference
	char/mwave: fix potential Spectre v1 vulnerability
	mmc: dw_mmc-bluefield: : Fix the license information
	mmc: meson-gx: Free irq in release() callback
	staging: rtl8188eu: Add device code for D-Link DWA-121 rev B1
	tty: Handle problem if line discipline does not have receive_buf
	uart: Fix crash in uart_write and uart_put_char
	tty/n_hdlc: fix __might_sleep warning
	hv_balloon: avoid touching uninitialized struct page during tail onlining
	Drivers: hv: vmbus: Check for ring when getting debug info
	vgacon: unconfuse vc_origin when using soft scrollback
	CIFS: Fix possible hang during async MTU reads and writes
	CIFS: Fix credits calculations for reads with errors
	CIFS: Fix credit calculation for encrypted reads with errors
	CIFS: Do not reconnect TCP session in add_credits()
	smb3: add credits we receive from oplock/break PDUs
	Input: xpad - add support for SteelSeries Stratus Duo
	Input: input_event - provide override for sparc64
	Input: uinput - fix undefined behavior in uinput_validate_absinfo()
	acpi/nfit: Block function zero DSMs
	acpi/nfit: Fix command-supported detection
	scsi: ufs: Use explicit access size in ufshcd_dump_regs
	dm thin: fix passdown_double_checking_shared_status()
	dm crypt: fix parsing of extended IV arguments
	drm/amdgpu: Add APTX quirk for Lenovo laptop
	KVM: x86: Fix single-step debugging
	KVM: x86: Fix PV IPIs for 32-bit KVM host
	KVM: x86: WARN_ONCE if sending a PV IPI returns a fatal error
	kvm: x86/vmx: Use kzalloc for cached_vmcs12
	KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned
	x86/pkeys: Properly copy pkey state at fork()
	x86/selftests/pkeys: Fork() to check for state being preserved
	x86/kaslr: Fix incorrect i8254 outb() parameters
	x86/entry/64/compat: Fix stack switching for XEN PV
	posix-cpu-timers: Unbreak timer rearming
	net: sun: cassini: Cleanup license conflict
	irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size
	can: dev: __can_get_echo_skb(): fix bogous check for non-existing skb by removing it
	can: bcm: check timer values before ktime conversion
	can: flexcan: fix NULL pointer exception during bringup
	vt: make vt_console_print() compatible with the unicode screen buffer
	vt: always call notifier with the console lock held
	vt: invoke notifier on screen size change
	drm/meson: Fix atomic mode switching regression
	bpf: improve verifier branch analysis
	bpf: add per-insn complexity limit
	bpf: move {prev_,}insn_idx into verifier env
	bpf: move tmp variable into ax register in interpreter
	bpf: enable access to ax register also from verifier rewrite
	bpf: restrict map value pointer arithmetic for unprivileged
	bpf: restrict stack pointer arithmetic for unprivileged
	bpf: restrict unknown scalars of mixed signed bounds for unprivileged
	bpf: fix check_map_access smin_value test when pointer contains offset
	bpf: prevent out of bounds speculation on pointer arithmetic
	bpf: fix sanitation of alu op with pointer / scalar type from different paths
	bpf: fix inner map masking to prevent oob under speculation
	s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU
	nvmet-rdma: Add unlikely for response allocated check
	nvmet-rdma: fix null dereference under heavy load
	Revert "mm, memory_hotplug: initialize struct pages for the full memory section"
	usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup
	ide: fix a typo in the settings proc file name
	Input: input_event - fix the CONFIG_SPARC64 mixup
	Linux 4.19.19

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2019-01-31 08:29:40 +01:00
262baf5702 Merge "msm: IPA: differentiate WDI2 and WDI3 over GSI" 2019-01-30 23:27:43 -08:00
3a3b6a6b15 Input: input_event - fix the CONFIG_SPARC64 mixup
commit 141e5dcaa7356077028b4cd48ec351a38c70e5e5 upstream.

Arnd Bergmann pointed out that CONFIG_* cannot be used in a uapi header.
Override with an equivalent conditional.

Fixes: 2e746942ebac ("Input: input_event - provide override for sparc64")
Fixes: 152194fe9c ("Input: extend usable life of event timestamps to 2106 on 32 bit systems")
Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-31 08:14:42 +01:00
71b1af8774 Input: input_event - provide override for sparc64
commit 2e746942ebacf1565caa72cf980745e5ce297c48 upstream.

The usec part of the timeval is defined as
__kernel_suseconds_t	tv_usec; /* microseconds */

Arnd noticed that sparc64 is the only architecture that defines
__kernel_suseconds_t as int rather than long.

This breaks the current y2038 fix for kernel as we only access and define
the timeval struct for non-kernel use cases.  But, this was hidden by an
another typo in the use of __KERNEL__ qualifier.

Fix the typo, and provide an override for sparc64.

Fixes: 152194fe9c ("Input: extend usable life of event timestamps to 2106 on 32 bit systems")
Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-31 08:14:37 +01:00
2f0b9d5ecd soc: qcom: add secure processor communication (spcom) driver
This driver supports communication with secure processor subsystem
(SPSS) over rpmsg and ungerlying glink transport layer. The
communication is based on using shared memory and interrupts.

Add snapshot for spcom driver from msm-4.14 commit cff38c326b98
("soc:qcom:spcom: free not consumed packet on rx timeout").

Change-Id: I28d704b18a3b0de9711ff3235c3f5551e7302557
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2019-01-30 06:08:10 -08:00
77d1ff5ce2 Merge "defconfig: arm64: Enable MMC features for the SD Card" 2019-01-30 02:08:10 -08:00
367bf9992c NFC: Add snapshot of NQxxx NFC driver
Add the latest version of NQxxx NFC driver from 'msm-4.14
commit b66d738d0f19 ("NFC: Fix for nq-nci dev node recovery")'.

Change-Id: I32a86cb682a8f1a17de6be6ed9fbbf2ff7bcef47
Signed-off-by: Tapas Dey <tdey@codeaurora.org>
2019-01-30 12:43:25 +05:30
b1d184d246 msm: IPA: support WDI3 over GSI
Support WDI 3.0 over GSI.

Change-Id: I952ea2bb864f179ed3238305520051f884e3a1af
Signed-off-by: Bojun Pan <bojunp@codeaurora.org>
2019-01-29 17:49:31 -08:00
1628d582b3 Merge android-4.19.12 (16c056d) into msm-4.19
* refs/heads/tmp-16c056d:
  Linux 4.19.12
  Btrfs: fix missing delayed iputs on unmount
  nvmet-rdma: fix response use after free
  nvme: validate controller state before rescheduling keep alive
  i2c: uniphier-f: fix violation of tLOW requirement for Fast-mode
  i2c: uniphier: fix violation of tLOW requirement for Fast-mode
  i2c: scmi: Fix probe error on devices with an empty SMB0001 ACPI device node
  i2c: axxia: properly handle master timeout
  mlxsw: spectrum_switchdev: Fix VLAN device deletion via ioctl
  vhost/vsock: fix reset orphans race with close timeout
  cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs)
  drm/ast: Fix connector leak during driver unload
  acpi/nfit: Fix user-initiated ARS to be "ARS-long" rather than "ARS-short"
  tools/testing/nvdimm: Align test resources to 128M
  drm/amdgpu/vcn: Update vcn.cur_state during suspend
  net: mvpp2: fix phylink handling of invalid PHY modes
  net: mvpp2: fix detection of 10G SFP modules
  thermal: armada: fix legacy validity test sense
  ethernet: fman: fix wrong of_node_put() in probe function
  ARM: 8816/1: dma-mapping: fix potential uninitialized return
  ARM: 8815/1: V7M: align v7m_dma_inv_range() with v7 counterpart
  ARM: 8814/1: mm: improve/fix ARM v7_dma_inv_range() unaligned address handling
  bpf: check pending signals while verifying programs
  net/mlx4_en: Fix build break when CONFIG_INET is off
  mv88e6060: disable hardware level MAC learning
  macvlan: return correct error value
  libata: whitelist all SAMSUNG MZ7KM* solid-state disks
  Input: omap-keypad - fix keyboard debounce configuration
  Input: synaptics - enable SMBus for HP 15-ay000
  clk: mmp: Off by one in mmp_clk_add()
  clk: mvebu: Off by one bugs in cp110_of_clk_get()
  drm/amd/powerplay: issue pre-display settings for display change event
  drm/msm: Fix error return checking
  drm/msm: dpu: Fix "WARNING: invalid free of devm_ allocated data"
  drm/msm: dpu: Don't set legacy plane->crtc pointer
  drm/msm/hdmi: Enable HPD after HDMI IRQ is set up
  ide: pmac: add of_node_put()
  drivers/tty: add missing of_node_put()
  drivers/sbus/char: add of_node_put()
  sbus: char: add of_node_put()
  SUNRPC: Fix a potential race in xprt_connect()
  nfs: don't dirty kernel pages read by direct-io
  liquidio: read sc->iq_no before release sc
  bpf: Fix verifier log string check for bad alignment.
  bonding: fix 802.3ad state sent to partner when unbinding slave
  net: aquantia: fix rx checksum offload bits
  net: stmmac: Move debugfs init/exit to ->probe()/->remove()
  ARC: io.h: Implement reads{x}()/writes{x}()
  drm/amdgpu: wait for IB test on first device open
  drm/ttm: fix LRU handling in ttm_buffer_object_transfer
  drm/msm: Grab a vblank reference when waiting for commit_done
  drm/msm/dsi: configure VCO rate for 10nm PLL driver
  drm/msm: fix handling of cmdstream offset
  drm/msm/gpu: Fix a couple memory leaks in debugfs
  drm/msm: Fix task dump in gpu recovery
  x86/earlyprintk/efi: Fix infinite loop on some screen widths
  drm/amd/display: Fix 6x4K displays light-up on Vega20 (v2)
  net: ethernet: ave: Replace NET_IP_ALIGN with AVE_FRAME_HEADROOM
  tools/bpf: add addition type tests to test_btf
  tools/bpf: fix two test_btf unit test cases
  scsi: vmw_pscsi: Rearrange code to avoid multiple calls to free_irq during unload
  scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset
  i2c: rcar: check bus state before reinitializing
  Input: hyper-v - fix wakeup from suspend-to-idle
  mac80211_hwsim: fix module init error paths for netlink
  IB/hfi1: Remove race conditions in user_sdma send path
  locking/qspinlock, x86: Provide liveness guarantee
  locking/qspinlock: Re-order code
  ANDROID: PM / OPP: Document power estimation helper
  ANDROID: PM / OPP: Add missing of_node_put() to power estimation helper
  UPSTREAM: mm/memfd: make F_SEAL_FUTURE_WRITE seal more robust
  UPSTREAM: mm: Add an F_SEAL_FUTURE_WRITE seal to memfd

Change-Id: I02ded14673b9aba3b3b555745d835b5c4cd252fe
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2019-01-29 01:06:40 -08:00
4369915670 msm: IPA: fix the QMI response mismatch between Q6 and AP
There is a mismatch between the internal structure of
ipa_qmi_response_type_v01 and QMI structure
qmi_response_type_v01 which is causing this encode issue.

Change-Id: I145ce7ccb20a37fd32f6a9180bfb9f675a4330fa
Signed-off-by: Bojun Pan <bojunp@codeaurora.org>
2019-01-28 11:37:57 -08:00
4f50c26c01 mmc: Merge MMC driver's changes from kernel msm-4.14 to msm-4.19
This is a snapshot of the mmc module taken as of msm-4.14
commit <9fa809c70c96>. This change contains the MMC driver's
changes for merging from kernel version msm-4.14 to msm-4.19.

Change-Id: I89fa8d5681d18290bbaf8b500f2e7f4a8aebbd89
Signed-off-by: Bao D. Nguyen <nguyenb@codeaurora.org>
2019-01-25 17:25:39 -08:00
9aff11cf55 Merge "msm: vidc: Fix setting frame rate control" 2019-01-17 10:45:47 -08:00
9ca4c5d8fe Merge "soc: qcom: spcom: fix uapi for SPU kernel-pil" 2019-01-17 09:18:10 -08:00
949d890409 Merge "drivers misc: add misc okl4 hypervisor drivers" 2019-01-16 23:00:20 -08:00
4f6a2a790f Merge "driver: vservices: Add the vservices framework and core" 2019-01-16 21:07:31 -08:00
37d31a68e1 Merge "qseecom: Add qseecom driver snapshot for kona" 2019-01-16 20:11:17 -08:00
80f2b9efdc msm: vidc: Fix setting frame rate control
Fix setting frame rate control for HW decoders and encoders.
Remove old handling of frame rate where set param was used.

Change-Id: I42f7b35e77d5d54fbdc2cc83d5ec407e5917d1c8
Signed-off-by: Amit Shekhar <ashekhar@codeaurora.org>
2019-01-16 11:30:41 -08:00
dec031f640 UPSTREAM: mm/memfd: Add an F_SEAL_FUTURE_WRITE seal to memfd
Android uses ashmem for sharing memory regions.  We are looking forward to
migrating all usecases of ashmem to memfd so that we can possibly remove
the ashmem driver in the future from staging while also benefiting from
using memfd and contributing to it.  Note staging drivers are also not ABI
and generally can be removed at anytime.

One of the main usecases Android has is the ability to create a region and
mmap it as writeable, then add protection against making any "future"
writes while keeping the existing already mmap'ed writeable-region active.
This allows us to implement a usecase where receivers of the shared
memory buffer can get a read-only view, while the sender continues to
write to the buffer.  See CursorWindow documentation in Android for more
details:
https://developer.android.com/reference/android/database/CursorWindow

This usecase cannot be implemented with the existing F_SEAL_WRITE seal.
To support the usecase, this patch adds a new F_SEAL_FUTURE_WRITE seal
which prevents any future mmap and write syscalls from succeeding while
keeping the existing mmap active.

A better way to do F_SEAL_FUTURE_WRITE seal was discussed [1] last week
where we don't need to modify core VFS structures to get the same
behavior of the seal. This solves several side-effects pointed by Andy.
self-tests are provided in later patch to verify the expected semantics.

[1] https://lore.kernel.org/lkml/20181111173650.GA256781@google.com/

[Thanks a lot to Andy for suggestions to improve code]
Cc: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Acked-by: John Stultz <john.stultz@linaro.org>

Change-Id: I6710c045954378f87bfbff6311d372a3b8549064
2019-01-16 09:48:42 -05:00
198aac25b7 Revert "UPSTREAM: mm: Add an F_SEAL_FUTURE_WRITE seal to memfd"
This reverts commit 1dc8ca4429.

Change-Id: I513034073c278e2ae58a53352cc2553a256a7ee0
2019-01-16 09:48:42 -05:00
35de68045e soc: qcom: spcom: fix uapi for SPU kernel-pil
This change adds missing userspace type definition,
fixing dependence.

Change-Id: I5020c38948579a2a929175f535553f6ada009051
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
2019-01-16 00:23:29 -08:00
7aa25d51e8 msm: kgsl: Add support for UBWC mode 4.0
Add code changes to support the new UBWC mode.

Change-Id: Id00fc1915863fd2856ead5257bbda1141397aac4
Signed-off-by: Urvashi Agrawal <urvaagra@codeaurora.org>
2019-01-14 14:45:42 -08:00
caf54339d3 Merge 4.19.15 into android-4.19
Changes in 4.19.15
	ARM: dts: sun8i: a83t: bananapi-m3: increase vcc-pd voltage to 3.3V
	pinctrl: meson: fix pull enable register calculation
	arm64: dts: mt7622: fix no more console output on rfb1
	powerpc: Fix COFF zImage booting on old powermacs
	powerpc/mm: Fix linux page tables build with some configs
	HID: ite: Add USB id match for another ITE based keyboard rfkill key quirk
	ARM: dts: imx7d-pico: Describe the Wifi clock
	ARM: imx: update the cpu power up timing setting on i.mx6sx
	ARM: dts: imx7d-nitrogen7: Fix the description of the Wifi clock
	IB/mlx5: Block DEVX umem from the non applicable cases
	Input: restore EV_ABS ABS_RESERVED
	powerpc/mm: Fallback to RAM if the altmap is unusable
	drm/amdgpu: Fix DEBUG_LOCKS_WARN_ON(depth <= 0) in amdgpu_ctx.lock
	IB/core: Fix oops in netdev_next_upper_dev_rcu()
	checkstack.pl: fix for aarch64
	xfrm: Fix error return code in xfrm_output_one()
	xfrm: Fix bucket count reported to userspace
	xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force clears the dst_entry.
	ieee802154: hwsim: fix off-by-one in parse nested
	netfilter: nf_tables: fix suspicious RCU usage in nft_chain_stats_replace()
	netfilter: seqadj: re-load tcp header pointer after possible head reallocation
	Revert "scsi: qla2xxx: Fix NVMe Target discovery"
	scsi: bnx2fc: Fix NULL dereference in error handling
	Input: omap-keypad - fix idle configuration to not block SoC idle states
	Input: synaptics - enable RMI on ThinkPad T560
	ibmvnic: Convert reset work item mutex to spin lock
	ibmvnic: Fix non-atomic memory allocation in IRQ context
	ieee802154: ca8210: fix possible u8 overflow in ca8210_rx_done
	x86/mm: Fix guard hole handling
	x86/dump_pagetables: Fix LDT remap address marker
	i40e: fix mac filter delete when setting mac address
	ixgbe: Fix race when the VF driver does a reset
	netfilter: ipset: do not call ipset_nest_end after nla_nest_cancel
	netfilter: nat: can't use dst_hold on noref dst
	netfilter: nf_conncount: use rb_link_node_rcu() instead of rb_link_node()
	bnx2x: Clear fip MAC when fcoe offload support is disabled
	bnx2x: Remove configured vlans as part of unload sequence.
	bnx2x: Send update-svid ramrod with retry/poll flags enabled
	scsi: target: iscsi: cxgbit: fix csk leak
	scsi: target: iscsi: cxgbit: add missing spin_lock_init()
	mt76: fix potential NULL pointer dereference in mt76_stop_tx_queues
	x86, hyperv: remove PCI dependency
	drivers: net: xgene: Remove unnecessary forward declarations
	net/tls: Init routines in create_ctx
	w90p910_ether: remove incorrect __init annotation
	net: hns: Incorrect offset address used for some registers.
	net: hns: All ports can not work when insmod hns ko after rmmod.
	net: hns: Some registers use wrong address according to the datasheet.
	net: hns: Fixed bug that netdev was opened twice
	net: hns: Clean rx fbd when ae stopped.
	net: hns: Free irq when exit from abnormal branch
	net: hns: Avoid net reset caused by pause frames storm
	net: hns: Fix ntuple-filters status error.
	net: hns: Add mac pcs config when enable|disable mac
	net: hns: Fix ping failed when use net bridge and send multicast
	mac80211: fix a kernel panic when TXing after TXQ teardown
	SUNRPC: Fix a race with XPRT_CONNECTING
	qed: Fix an error code qed_ll2_start_xmit()
	net: macb: fix random memory corruption on RX with 64-bit DMA
	net: macb: fix dropped RX frames due to a race
	net: macb: add missing barriers when reading descriptors
	lan743x: Expand phy search for LAN7431
	lan78xx: Resolve issue with changing MAC address
	vxge: ensure data0 is initialized in when fetching firmware version information
	nl80211: fix memory leak if validate_pae_over_nl80211() fails
	mac80211: free skb fraglist before freeing the skb
	kbuild: fix false positive warning/error about missing libelf
	m68k: Fix memblock-related crashes
	virtio: fix test build after uio.h change
	lan743x: Remove MAC Reset from initialization
	gpio: mvebu: only fail on missing clk if pwm is actually to be used
	Input: synaptics - enable SMBus for HP EliteBook 840 G4
	net: netxen: fix a missing check and an uninitialized use
	qmi_wwan: Fix qmap header retrieval in qmimux_rx_fixup
	serial/sunsu: fix refcount leak
	auxdisplay: charlcd: fix x/y command parsing
	scsi: zfcp: fix posting too many status read buffers leading to adapter shutdown
	scsi: lpfc: do not set queue->page_count to 0 if pc_sli4_params.wqpcnt is invalid
	fork: record start_time late
	zram: fix double free backing device
	hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined
	mm, devm_memremap_pages: mark devm_memremap_pages() EXPORT_SYMBOL_GPL
	mm, devm_memremap_pages: kill mapping "System RAM" support
	mm, devm_memremap_pages: fix shutdown handling
	mm, devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support
	mm, hmm: use devm semantics for hmm_devmem_{add, remove}
	mm, hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL
	mm, swap: fix swapoff with KSM pages
	memcg, oom: notify on oom killer invocation from the charge path
	sunrpc: fix cache_head leak due to queued request
	sunrpc: use SVC_NET() in svcauth_gss_* functions
	powerpc: remove old GCC version checks
	powerpc: consolidate -mno-sched-epilog into FTRACE flags
	powerpc: avoid -mno-sched-epilog on GCC 4.9 and newer
	powerpc: Disable -Wbuiltin-requires-header when setjmp is used
	kbuild: add -no-integrated-as Clang option unconditionally
	kbuild: consolidate Clang compiler flags
	Makefile: Export clang toolchain variables
	powerpc/boot: Set target when cross-compiling for clang
	raid6/ppc: Fix build for clang
	dma-direct: do not include SME mask in the DMA supported check
	mt76x0: init hw capabilities
	media: cx23885: only reset DMA on problematic CPUs
	ALSA: cs46xx: Potential NULL dereference in probe
	ALSA: usb-audio: Avoid access before bLength check in build_audio_procunit()
	ALSA: usb-audio: Check mixer unit descriptors more strictly
	ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks
	ALSA: usb-audio: Always check descriptor sizes in parser code
	srcu: Lock srcu_data structure in srcu_gp_start()
	driver core: Add missing dev->bus->need_parent_lock checks
	Fix failure path in alloc_pid()
	block: deactivate blk_stat timer in wbt_disable_default()
	block: mq-deadline: Fix write completion handling
	dlm: fixed memory leaks after failed ls_remove_names allocation
	dlm: possible memory leak on error path in create_lkb()
	dlm: lost put_lkb on error path in receive_convert() and receive_unlock()
	dlm: memory leaks on error path in dlm_user_request()
	gfs2: Get rid of potential double-freeing in gfs2_create_inode
	gfs2: Fix loop in gfs2_rbm_find
	b43: Fix error in cordic routine
	selinux: policydb - fix byte order and alignment issues
	PCI / PM: Allow runtime PM without callback functions
	lockd: Show pid of lockd for remote locks
	nfsd4: zero-length WRITE should succeed
	arm64: drop linker script hack to hide __efistub_ symbols
	arm64: relocatable: fix inconsistencies in linker script and options
	leds: pwm: silently error out on EPROBE_DEFER
	Revert "powerpc/tm: Unset MSR[TS] if not recheckpointing"
	powerpc/tm: Set MSR[TS] just prior to recheckpoint
	iio: dac: ad5686: fix bit shift read register
	9p/net: put a lower bound on msize
	rxe: fix error completion wr_id and qp_num
	RDMA/srpt: Fix a use-after-free in the channel release code
	iommu/vt-d: Handle domain agaw being less than iommu agaw
	sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b
	ceph: don't update importing cap's mseq when handing cap export
	video: fbdev: pxafb: Fix "WARNING: invalid free of devm_ allocated data"
	drivers/perf: hisi: Fixup one DDRC PMU register offset
	genwqe: Fix size check
	intel_th: msu: Fix an off-by-one in attribute store
	power: supply: olpc_battery: correct the temperature units
	of: of_node_get()/of_node_put() nodes held in phandle cache
	of: __of_detach_node() - remove node from phandle cache
	lib: fix build failure in CONFIG_DEBUG_VIRTUAL test
	drm/nouveau/drm/nouveau: Check rc from drm_dp_mst_topology_mgr_resume()
	drm/vc4: Set ->is_yuv to false when num_planes == 1
	drm/rockchip: psr: do not dereference encoder before it is null checked.
	drm/amd/display: Fix unintialized max_bpc state values
	bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw
	Linux 4.19.15

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2019-01-13 10:25:45 +01:00
52e1f29e8b Input: restore EV_ABS ABS_RESERVED
[ Upstream commit c201e3808e0e4be9b98d192802085a9f491bd80c ]

ABS_RESERVED was added in d9ca1c990a7 and accidentally removed as part of
ffe0e7cf290f5c9 when the high-resolution scrolling code was removed.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-01-13 09:50:56 +01:00