tree e6723861c3c706b69a77052c9c1b292dd4b84343
parent 47589a56b9062b3ef5aa439f594e0ef7cf504bbf
parent d59dabdc4cb380b79c965af28cd4ba001f04834b
author Greg Kroah-Hartman <gregkh@google.com> 1506516966 +0200
committer Greg Kroah-Hartman <gregkh@google.com> 1506516966 +0200
mergetag object d59dabdc4cb380b79c965af28cd4ba001f04834b
 type commit
 tag v4.9.52
 tagger Greg Kroah-Hartman <gregkh@linuxfoundation.org> 1506516010 +0200
 
 This is the 4.9.52 stable release
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAlnLnCsACgkQONu9yGCS
 aT6NCRAArLcChCaHsfadu4cU3U+s2v9a0Jq9vdqpX954UYTTTKD7B9ZaLaMsS3bv
 y94tzydDe6AfhUy0JhpmrX/y0VIkmF1cKt3z5vzwXSqOgMdseiMEfLW+qHHPLEjF
 mPSXo88RxBad1Iyip09Olx3nL5YUXYiXHYCnbslbDlJ93FS6B+lH5T2YO9B3clyq
 SpIYI8qtUyVSlqVbYmJzDU5SqfGzKR1rJwiVUmp0xpOoZiHjWYDbc8zVKYOoebpO
 nwfmXnIwVRGuyZU927+KSX3+3vhhUIzKYpo3H/W/4MjMNtxrLpdq27AYs6YJS1BR
 5gzaQLzYKIDGtkq5OPFszCvjcDCHeh+3e59KeMp/WRHdTGYr4ayNY/FsUMtQ0vUC
 rf+kEbbLBhR/wAc0NkSLcPivmhmW0qn6EB29L4gNerkrWjyzcdxInpqEmVTc+0fU
 Z3Vc6iF28pGCTxSU7GhAYdjKgrpMK9oUqFDmg7nU1biVuYKZIPs7+2utApFtuGZI
 /sp4o4mLT7bxwn9qZEaVsC1/Wp6ddonKG+Yj7MStNjz2b3AOh2oGz/f0YtvRM5IM
 gB6pueHLF54bxt+s9CFSGZDsXfYXERtK2kyZ1G4BifhgJVwmZUapBe/73/48vYjg
 iKYabXfUFkLgdRgGP0FNgOmLKUxexId7AKJCQY9AenkthoMjhco=
 =zMgQ
 -----END PGP SIGNATURE-----

Merge 4.9.52 into android-4.9

Changes in 4.9.52
	SUNRPC: Refactor svc_set_num_threads()
	NFSv4: Fix callback server shutdown
	mm: prevent double decrease of nr_reserved_highatomic
	orangefs: Don't clear SGID when inheriting ACLs
	IB/{qib, hfi1}: Avoid flow control testing for RDMA write operation
	drm/sun4i: Implement drm_driver lastclose to restore fbdev console
	IB/addr: Fix setting source address in addr6_resolve()
	tty: improve tty_insert_flip_char() fast path
	tty: improve tty_insert_flip_char() slow path
	tty: fix __tty_insert_flip_char regression
	pinctrl/amd: save pin registers over suspend/resume
	Input: i8042 - add Gigabyte P57 to the keyboard reset table
	MIPS: math-emu: <MAX|MAXA|MIN|MINA>.<D|S>: Fix quiet NaN propagation
	MIPS: math-emu: <MAX|MAXA|MIN|MINA>.<D|S>: Fix cases of both inputs zero
	MIPS: math-emu: <MAX|MIN>.<D|S>: Fix cases of both inputs negative
	MIPS: math-emu: <MAXA|MINA>.<D|S>: Fix cases of input values with opposite signs
	MIPS: math-emu: <MAXA|MINA>.<D|S>: Fix cases of both infinite inputs
	MIPS: math-emu: MINA.<D|S>: Fix some cases of infinity and zero inputs
	MIPS: math-emu: Handle zero accumulator case in MADDF and MSUBF separately
	MIPS: math-emu: <MADDF|MSUBF>.<D|S>: Fix NaN propagation
	MIPS: math-emu: <MADDF|MSUBF>.<D|S>: Fix some cases of infinite inputs
	MIPS: math-emu: <MADDF|MSUBF>.<D|S>: Fix some cases of zero inputs
	MIPS: math-emu: <MADDF|MSUBF>.<D|S>: Clean up "maddf_flags" enumeration
	MIPS: math-emu: <MADDF|MSUBF>.S: Fix accuracy (32-bit case)
	MIPS: math-emu: <MADDF|MSUBF>.D: Fix accuracy (64-bit case)
	crypto: ccp - Fix XTS-AES-128 support on v5 CCPs
	crypto: AF_ALG - remove SGL terminator indicator when chaining
	ext4: fix incorrect quotaoff if the quota feature is enabled
	ext4: fix quota inconsistency during orphan cleanup for read-only mounts
	powerpc: Fix DAR reporting when alignment handler faults
	block: Relax a check in blk_start_queue()
	md/bitmap: disable bitmap_resize for file-backed bitmaps.
	skd: Avoid that module unloading triggers a use-after-free
	skd: Submit requests to firmware before triggering the doorbell
	scsi: zfcp: fix queuecommand for scsi_eh commands when DIX enabled
	scsi: zfcp: add handling for FCP_RESID_OVER to the fcp ingress path
	scsi: zfcp: fix capping of unsuccessful GPN_FT SAN response trace records
	scsi: zfcp: fix passing fsf_req to SCSI trace on TMF to correlate with HBA
	scsi: zfcp: fix missing trace records for early returns in TMF eh handlers
	scsi: zfcp: fix payload with full FCP_RSP IU in SCSI trace records
	scsi: zfcp: trace HBA FSF response by default on dismiss or timedout late response
	scsi: zfcp: trace high part of "new" 64 bit SCSI LUN
	scsi: megaraid_sas: set minimum value of resetwaittime to be 1 secs
	scsi: megaraid_sas: Check valid aen class range to avoid kernel panic
	scsi: megaraid_sas: Return pended IOCTLs with cmd_status MFI_STAT_WRONG_STATE in case adapter is dead
	scsi: storvsc: fix memory leak on ring buffer busy
	scsi: sg: remove 'save_scat_len'
	scsi: sg: use standard lists for sg_requests
	scsi: sg: off by one in sg_ioctl()
	scsi: sg: factor out sg_fill_request_table()
	scsi: sg: fixup infoleak when using SG_GET_REQUEST_TABLE
	scsi: qla2xxx: Correction to vha->vref_count timeout
	scsi: qla2xxx: Fix an integer overflow in sysfs code
	ftrace: Fix selftest goto location on error
	ftrace: Fix memleak when unregistering dynamic ops when tracing disabled
	tracing: Add barrier to trace_printk() buffer nesting modification
	tracing: Apply trace_clock changes to instance max buffer
	ARC: Re-enable MMU upon Machine Check exception
	PCI: shpchp: Enable bridge bus mastering if MSI is enabled
	PCI: pciehp: Report power fault only once until we clear it
	net/netfilter/nf_conntrack_core: Fix net_conntrack_lock()
	s390/mm: fix local TLB flushing vs. detach of an mm address space
	s390/mm: fix race on mm->context.flush_mm
	media: v4l2-compat-ioctl32: Fix timespec conversion
	media: uvcvideo: Prevent heap overflow when accessing mapped controls
	PM / devfreq: Fix memory leak when fail to register device
	bcache: initialize dirty stripes in flash_dev_run()
	bcache: Fix leak of bdev reference
	bcache: do not subtract sectors_to_gc for bypassed IO
	bcache: correct cache_dirty_target in __update_writeback_rate()
	bcache: Correct return value for sysfs attach errors
	bcache: fix for gc and write-back race
	bcache: fix bch_hprint crash and improve output
	Linux 4.9.52

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