Merge android-4.9.225(ca8aaf9) into msm-4.9

* refs/heads/tmp-ca8aaf9:
  Linux 4.9.225
  iio: sca3000: Remove an erroneous 'get_device()'
  rapidio: fix an error in get_user_pages_fast() error handling
  mei: release me_cl object reference
  iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()'
  staging: greybus: Fix uninitialized scalar variable
  staging: iio: ad2s1210: Fix SPI reading
  Revert "gfs2: Don't demote a glock until its revokes are written"
  cxgb4/cxgb4vf: Fix mac_hlist initialization and free
  cxgb4: free mac_hlist properly
  libnvdimm/btt: Remove unnecessary code in btt_freelist_init
  platform/x86: alienware-wmi: fix kfree on potentially uninitialized pointer
  ubsan: build ubsan.c more conservatively
  x86/uaccess, ubsan: Fix UBSAN vs. SMAP
  l2tp: device MTU setup, tunnel socket needs a lock
  dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'
  ALSA: pcm: fix incorrect hw_base increase
  l2tp: initialise PPP sessions before registering them
  l2tp: protect sock pointer of struct pppol2tp_session with RCU
  l2tp: initialise l2tp_eth sessions before registering them
  l2tp: don't register sessions in l2tp_session_create()
  l2tp: fix l2tp_eth module loading
  l2tp: pass tunnel pointer to ->session_create()
  l2tp: prevent creation of sessions on terminated tunnels
  l2tp: hold tunnel used while creating sessions with netlink
  l2tp: hold tunnel while handling genl TUNNEL_GET commands
  l2tp: hold tunnel while handling genl tunnel updates
  l2tp: hold tunnel while processing genl delete command
  l2tp: hold tunnel while looking up sessions in l2tp_netlink
  l2tp: initialise session's refcount before making it reachable
  l2tp: define parameters of l2tp_tunnel_find*() as "const"
  l2tp: define parameters of l2tp_session_get*() as "const"
  l2tp: remove l2tp_session_find()
  l2tp: remove useless duplicate session detection in l2tp_netlink
  L2TP:Adjust intf MTU, add underlay L3, L2 hdrs.
  New kernel function to get IP overhead on a socket.
  net: l2tp: ppp: change PPPOL2TP_MSG_* => L2TP_MSG_*
  net: l2tp: deprecate PPPOL2TP_MSG_* in favour of L2TP_MSG_*
  net: l2tp: export debug flags to UAPI
  watchdog: Fix the race between the release of watchdog_core_data and cdev
  arm64: fix the flush_icache_range arguments in machine_kexec
  padata: purge get_cpu and reorder_via_wq from padata_do_serial
  padata: initialize pd->cpu with effective cpumask
  padata: Replace delayed timer with immediate workqueue in padata_reorder
  padata: set cpu_index of unused CPUs to -1
  i2c: dev: Fix the race between the release of i2c_dev and cdev
  ARM: futex: Address build warning
  platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA
  USB: core: Fix misleading driver bug report
  ceph: fix double unlock in handle_cap_export()
  gtp: set NLM_F_MULTI flag in gtp_genl_dump_pdp()
  component: Silence bind error on -EPROBE_DEFER
  configfs: fix config_item refcnt leak in configfs_rmdir()
  HID: multitouch: add eGalaxTouch P80H84 support
  gcc-common.h: Update for GCC 10
  i2c: mux: demux-pinctrl: Fix an error handling path in 'i2c_demux_pinctrl_probe()'
  iommu/amd: Fix over-read of ACPI UID from IVRS table
  fix multiplication overflow in copy_fdtable()
  ima: Fix return value of ima_write_policy()
  evm: Check also if *tfm is an error pointer in init_desc()
  padata: ensure padata_do_serial() runs on the correct CPU
  padata: ensure the reorder timer callback runs on the correct CPU
  padata: get_next is never NULL
  padata: Remove unused but set variables
  igb: use igb_adapter->io_addr instead of e1000_hw->hw_addr

 Conflicts:
	net/socket.c

Change-Id: I953dac94cda3ec8a988b8a8f8492cea47c5dcf7c
Signed-off-by: jianzhou <jianzhou@codeaurora.org>