Merge 4.9.247 into android-4.9-q

Changes in 4.9.247
	perf event: Check ref_reloc_sym before using it
	mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault()
	btrfs: fix lockdep splat when reading qgroup config on mount
	PCI: Add device even if driver attach failed
	btrfs: tree-checker: Enhance chunk checker to validate chunk profile
	btrfs: inode: Verify inode mode to avoid NULL pointer dereference
	arm64: pgtable: Fix pte_accessible()
	ALSA: hda/hdmi: Use single mutex unlock in error paths
	ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close
	HID: cypress: Support Varmilo Keyboards' media hotkeys
	Input: i8042 - allow insmod to succeed on devices without an i8042 controller
	HID: hid-sensor-hub: Fix issue with devices with no report ID
	dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant
	x86/xen: don't unbind uninitialized lock_kicker_irq
	proc: don't allow async path resolution of /proc/self components
	dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
	scsi: libiscsi: Fix NOP race condition
	scsi: target: iscsi: Fix cmd abort fabric stop race
	perf/x86: fix sysfs type mismatches
	phy: tegra: xusb: Fix dangling pointer on probe failure
	batman-adv: set .owner to THIS_MODULE
	scsi: ufs: Fix race between shutdown and runtime resume flow
	bnxt_en: fix error return code in bnxt_init_board()
	video: hyperv_fb: Fix the cache type when mapping the VRAM
	bnxt_en: Release PCI regions when DMA mask setup fails during probe.
	IB/mthca: fix return value of error branch in mthca_init_cq()
	nfc: s3fwrn5: use signed integer for parsing GPIO numbers
	net: ena: set initial DMA width to avoid intel iommu issue
	ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq
	efivarfs: revert "fix memory leak in efivarfs_create()"
	can: gs_usb: fix endianess problem with candleLight firmware
	platform/x86: toshiba_acpi: Fix the wrong variable assignment
	perf probe: Fix to die_entrypc() returns error correctly
	USB: core: Change %pK for __user pointers to %px
	usb: gadget: f_midi: Fix memleak in f_midi_alloc
	usb: gadget: Fix memleak in gadgetfs_fill_super
	x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb
	regulator: avoid resolve_supply() infinite recursion
	regulator: workaround self-referent regulators
	USB: core: add endpoint-blacklist quirk
	USB: core: Fix regression in Hercules audio card
	Linux 4.9.247

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I077a342073700f16f0d902b10597b7a3ded56914