tree 087a76a7a30c07e1b8e98865d484432342c4e04f
parent 4613f61ad5b42cb6f803aada4d33419a9c9077eb
parent 0eed54bdbd1b922004fe05dc8bf3815f2e5723d7
author Greg Kroah-Hartman <gregkh@google.com> 1504099499 +0200
committer Greg Kroah-Hartman <gregkh@google.com> 1504099499 +0200
mergetag object 0eed54bdbd1b922004fe05dc8bf3815f2e5723d7
 type commit
 tag v4.9.46
 tagger Greg Kroah-Hartman <gregkh@linuxfoundation.org> 1504081489 +0200
 
 This is the 4.9.46 stable release
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAlmmdlEACgkQONu9yGCS
 aT7d7g/+O4JE8XMSF9PAOHQMk8ILsN1NCEZoer2HcqBYNavcRfAE70fwt92Rly34
 46mPD2JTeZbr9JDGKRTnIPnfG8yJnzIhjl86jwqTxiS3YdUWOLrW7OYmDWCI0FxT
 0t14DsKCoF9+DtSXIwEfjlZTqj82X8hEq2HjEJ514IDeTwzk4ftAeyu916EAt5MC
 h1LJwWq4nYYTGAtgBQimeN6lk4oMXnJzVigYEDRQvPGHxAkQ5ImcfwpZFjUwrT8F
 YsW9OFVw6dOEHIBkn059R18VI56sy6d0lyNFcB9n2W9n8IgB6HIwrpoDM2M7tYB1
 vzIX3xlR/oH45faiTdtnlDfox3aFbXZ2NUT1q1TDv5ITTfsstFz+ZoFL7KcLF3KQ
 iEyhVukI2YAqdLBLnSZy2+HHCP1ocfJT8nYqi0C2LsDapeLQ1m5MqxKO6wFIDx/e
 HK0oJxNnYg3X856ZejFvShV+t3mTwAWNSkiUQYlo3HlT/5hcxnhybYpGDOjVjgar
 15HAoRVp/2pZVlWriYS3edEuHwt3lcPGnp/EGDqHjZjA/qX2FYRDG/ybIrZ+j58J
 m0N0MoqGs3yEp5NxTFu89y2XhvxN4sZCAnu/KmE/hNRMqwblf4fV6ZQRdhzDc9qj
 MTCGThgaSFW09R+Zi3h1chi/x5p82Z0k/iEMBnFNQbad4tNQ7BA=
 =BrvC
 -----END PGP SIGNATURE-----

Merge 4.9.46 into android-4.9-o

Changes in 4.9.46
	sparc64: remove unnecessary log message
	af_key: do not use GFP_KERNEL in atomic contexts
	dccp: purge write queue in dccp_destroy_sock()
	dccp: defer ccid_hc_tx_delete() at dismantle time
	ipv4: fix NULL dereference in free_fib_info_rcu()
	net_sched/sfq: update hierarchical backlog when drop packet
	net_sched: remove warning from qdisc_hash_add
	bpf: fix bpf_trace_printk on 32 bit archs
	openvswitch: fix skb_panic due to the incorrect actions attrlen
	ptr_ring: use kmalloc_array()
	ipv4: better IP_MAX_MTU enforcement
	nfp: fix infinite loop on umapping cleanup
	sctp: fully initialize the IPv6 address in sctp_v6_to_addr()
	tipc: fix use-after-free
	ipv6: reset fn->rr_ptr when replacing route
	ipv6: repair fib6 tree in failure case
	tcp: when rearming RTO, if RTO time is in past then fire RTO ASAP
	net/mlx4_core: Enable 4K UAR if SRIOV module parameter is not enabled
	irda: do not leak initialized list.dev to userspace
	net: sched: fix NULL pointer dereference when action calls some targets
	net_sched: fix order of queue length updates in qdisc_replace()
	bpf, verifier: add additional patterns to evaluate_reg_imm_alu
	bpf: adjust verifier heuristics
	bpf, verifier: fix alu ops against map_value{, _adj} register types
	bpf: fix mixed signed/unsigned derived min/max value bounds
	bpf/verifier: fix min/max handling in BPF_SUB
	Input: trackpoint - add new trackpoint firmware ID
	Input: elan_i2c - add ELAN0602 ACPI ID to support Lenovo Yoga310
	Input: ALPS - fix two-finger scroll breakage in right side on ALPS touchpad
	KVM: s390: sthyi: fix sthyi inline assembly
	KVM: s390: sthyi: fix specification exception detection
	KVM: x86: block guest protection keys unless the host has them enabled
	ALSA: usb-audio: Add delay quirk for H650e/Jabra 550a USB headsets
	ALSA: core: Fix unexpected error at replacing user TLV
	ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978)
	ALSA: firewire: fix NULL pointer dereference when releasing uninitialized data of iso-resource
	ARCv2: PAE40: Explicitly set MSB counterpart of SLC region ops addresses
	mm, shmem: fix handling /sys/kernel/mm/transparent_hugepage/shmem_enabled
	i2c: designware: Fix system suspend
	mm/madvise.c: fix freeing of locked page with MADV_FREE
	fork: fix incorrect fput of ->exe_file causing use-after-free
	mm/memblock.c: reversed logic in memblock_discard()
	drm: Release driver tracking before making the object available again
	drm/atomic: If the atomic check fails, return its value first
	drm: rcar-du: Fix crash in encoder failure error path
	drm: rcar-du: Fix display timing controller parameter
	drm: rcar-du: Fix H/V sync signal polarity configuration
	tracing: Call clear_boot_tracer() at lateinit_sync
	tracing: Fix kmemleak in tracing_map_array_free()
	tracing: Fix freeing of filter in create_filter() when set_str is false
	kbuild: linker script do not match C names unless LD_DEAD_CODE_DATA_ELIMINATION is configured
	cifs: Fix df output for users with quota limits
	cifs: return ENAMETOOLONG for overlong names in cifs_open()/cifs_lookup()
	nfsd: Limit end of page list when decoding NFSv4 WRITE
	ftrace: Check for null ret_stack on profile function graph entry function
	perf/core: Fix group {cpu,task} validation
	perf probe: Fix --funcs to show correct symbols for offline module
	perf/x86/intel/rapl: Make package handling more robust
	timers: Fix excessive granularity of new timers after a nohz idle
	x86/mm: Fix use-after-free of ldt_struct
	net: sunrpc: svcsock: fix NULL-pointer exception
	Revert "leds: handle suspend/resume in heartbeat trigger"
	netfilter: nat: fix src map lookup
	Bluetooth: hidp: fix possible might sleep error in hidp_session_thread
	Bluetooth: cmtp: fix possible might sleep error in cmtp_session
	Bluetooth: bnep: fix possible might sleep error in bnep_session
	Revert "android: binder: Sanity check at binder ioctl"
	binder: use group leader instead of open thread
	binder: Use wake up hint for synchronous transactions.
	ANDROID: binder: fix proc->tsk check.
	iio: imu: adis16480: Fix acceleration scale factor for adis16480
	iio: hid-sensor-trigger: Fix the race with user space powering up sensors
	staging: rtl8188eu: add RNX-N150NUB support
	Clarify (and fix) MAX_LFS_FILESIZE macros
	ntb_transport: fix qp count bug
	ntb_transport: fix bug calculating num_qps_mw
	NTB: ntb_test: fix bug printing ntb_perf results
	ntb: no sleep in ntb_async_tx_submit
	ntb: ntb_test: ensure the link is up before trying to configure the mws
	ntb: transport shouldn't disable link due to bogus values in SPADs
	ACPI: ioapic: Clear on-stack resource before using it
	ACPI / APEI: Add missing synchronize_rcu() on NOTIFY_SCI removal
	ACPI: EC: Fix regression related to wrong ECDT initialization order
	powerpc/mm: Ensure cpumask update is ordered
	Linux 4.9.46

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