Merge android-4.9.97 (2bcbbd5) into msm-4.9

* refs/heads/tmp-2bcbbd5:
  Linux 4.9.97
  ACPI / video: Only default only_lcd to true on Win8-ready _desktops_
  s390/uprobes: implement arch_uretprobe_is_alive()
  s390/dasd: fix IO error for newly defined devices
  s390/cio: update chpid descriptor after resource accessibility event
  cdrom: information leak in cdrom_ioctl_media_changed()
  scsi: mptsas: Disable WRITE SAME
  strparser: Fix incorrect strp->need_bytes value.
  ipv6: add RTA_TABLE and RTA_PREFSRC to rtm_ipv6_policy
  net: af_packet: fix race in PACKET_{R|T}X_RING
  tcp: md5: reject TCP_MD5SIG or TCP_MD5SIG_EXT on established sockets
  net: fix deadlock while clearing neighbor proxy table
  net: ethernet: ti: cpsw: fix tx vlan priority mapping
  llc: fix NULL pointer deref for SOCK_ZAPPED
  llc: hold llc_sap before release_sock()
  net: sched: ife: signal not finding metaid
  sctp: do not check port in sctp_inet6_cmp_addr
  vlan: Fix reading memory beyond skb->tail in skb_vlan_tagged_multi
  pppoe: check sockaddr length in pppoe_connect()
  tipc: add policy for TIPC_NLA_NET_ADDR
  packet: fix bitfield update race
  team: fix netconsole setup over team
  team: avoid adding twice the same option to the event list
  tcp: don't read out-of-bounds opsize
  llc: delete timers synchronously in llc_sk_free()
  net: validate attribute sizes in neigh_dump_table()
  l2tp: check sockaddr length in pppol2tp_connect()
  KEYS: DNS: limit the length of option strings
  bonding: do not set slave_dev npinfo before slave_enable_netpoll in bond_enslave
  s390: correct module section names for expoline code revert
  s390: correct nospec auto detection init order
  s390: add sysfs attributes for spectre
  s390: report spectre mitigation via syslog
  s390: add automatic detection of the spectre defense
  s390: move nobp parameter functions to nospec-branch.c
  s390/entry.S: fix spurious zeroing of r0
  s390: do not bypass BPENTER for interrupt system calls
  s390: Replace IS_ENABLED(EXPOLINE_*) with IS_ENABLED(CONFIG_EXPOLINE_*)
  KVM: s390: force bp isolation for VSIE
  s390: introduce execute-trampolines for branches
  s390: run user space and KVM guests with modified branch prediction
  s390: add options to change branch prediction behaviour for the kernel
  s390/alternative: use a copy of the facility bit mask
  s390: add optimized array_index_mask_nospec
  s390: scrub registers on kernel entry and KVM exit
  KVM: s390: wire up bpb feature
  s390: enable CPU alternatives unconditionally
  s390: introduce CPU alternatives
  PCI: Wait up to 60 seconds for device to become ready after FLR
  Revert "ath10k: send (re)assoc peer command when NSS changed"
  Revert "pinctrl: intel: Initialize GPIO properly when used through irqchip"
  r8152: add Linksys USB3GIGV1 id
  mac80211_hwsim: fix use-after-free bug in hwsim_exit_net
  drm/i915/bxt, glk: Increase PCODE timeouts during CDCLK freq changing
  RDMA/mlx5: Fix NULL dereference while accessing XRC_TGT QPs
  perf: Return proper values for user stack errors
  perf: Fix sample_max_stack maximum check
  Revert "perf tools: Decompress kernel module when reading DSO data"
  jbd2: fix use after free in kjournald2()
  ath9k_hw: check if the chip failed to wake up
  OF: Prevent unaligned access in of_alias_scan()
  stk-webcam: fix an endian bug in stk_camera_read_reg()
  power: supply: bq2415x: check for NULL acpi_id to avoid null pointer dereference
  Input: drv260x - fix initializing overdrive voltage
  MIPS: Generic: Fix big endian CPUs on generic machine
  usb: musb: Fix external abort in musb_remove on omap2430
  usb: musb: call pm_runtime_{get,put}_sync before reading vbus registers
  usb: musb: fix enumeration after resume
  i2c: i801: Restore configuration at shutdown
  i2c: i801: Save register SMBSLVCMD value only once
  i2c: i801: store and restore the SLVCMD register at load and unload
  drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state
  drm/vc4: Fix memory leak during BO teardown
  x86/tsc: Prevent 32bit truncation in calc_hpet_ref()
  cifs: do not allow creating sockets except with SMB1 posix exensions
  UPSTREAM: tracing: always define trace_{irq,preempt}_{enable_disable}
  ANDROID: staging: ion: Obey kptr_restrict
  ANDROID: sdcardfs: Set s_root to NULL after putting
  ANDROID: sdcardfs: d_make_root calls iput
  ANDROID: sdcardfs: Check for private data earlier
  UPSTREAM: arm64: restore get_current() optimisation
  Revert "ANDROID: arm64: temporarily mark ARM64_SW_TTBR0_PAN as BROKEN"
  ANDROID: arm64: fix ARM64_SW_TTBR0_PAN backport
  BACKPORT: arm64: split thread_info from task stack
  UPSTREAM: arm64: assembler: introduce ldr_this_cpu
  UPSTREAM: arm64: smp: Prevent raw_smp_processor_id() recursion
  UPSTREAM: arm64: make cpu number a percpu variable
  UPSTREAM: arm64: smp: prepare for smp_processor_id() rework
  UPSTREAM: arm64: move sp_el0 and tpidr_el1 into cpu_suspend_ctx
  UPSTREAM: arm64: prep stack walkers for THREAD_INFO_IN_TASK
  UPSTREAM: arm64: unexport walk_stackframe
  UPSTREAM: arm64: traps: simplify die() and __die()
  UPSTREAM: arm64: factor out current_stack_pointer
  BACKPORT: arm64: asm-offsets: remove unused definitions
  UPSTREAM: arm64: thread_info remove stale items
  ANDROID: arm64: temporarily mark ARM64_SW_TTBR0_PAN as BROKEN
  UPSTREAM: thread_info: include <current.h> for THREAD_INFO_IN_TASK
  UPSTREAM: thread_info: factor out restart_block

Conflicts:
	arch/arm64/include/asm/thread_info.h
	arch/arm64/kernel/smp.c
	arch/arm64/kernel/stacktrace.c
	arch/arm64/kernel/traps.c
	drivers/staging/android/ion/ion.c
	drivers/staging/android/ion/ion_cma_heap.c

Change-Id: I061294a8cf11b1a77edbcf54b64802cba387d41e
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>