[PATCH 4.9 00/93] 4.9.17-stable review

From: Greg Kroah-Hartman
Date: Mon Mar 20 2017 - 14:35:13 EST


This is the start of the stable review cycle for the 4.9.17 release.
There are 93 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.

Responses should be made by Wed Mar 22 17:47:16 UTC 2017.
Anything received after that time might be too late.

The whole patch series can be found in one patch at:
kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.17-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y
and the diffstat can be found below.

thanks,

greg k-h

-------------
Pseudo-Shortlog of commits:

Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Linux 4.9.17-rc1

Daniel Axtens <dja@xxxxxxxxxx>
crypto: powerpc - Fix initialisation of crc32c context

Niklas Cassel <niklas.cassel@xxxxxxxx>
locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y

Peter Zijlstra <peterz@xxxxxxxxxxxxx>
futex: Add missing error handling to FUTEX_REQUEUE_PI

Peter Zijlstra <peterz@xxxxxxxxxxxxx>
futex: Fix potential use-after-free in FUTEX_REQUEUE_PI

Andy Lutomirski <luto@xxxxxxxxxx>
x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm

Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>
x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y

Peter Zijlstra <peterz@xxxxxxxxxxxxx>
x86/tsc: Fix ART for TSC_KNOWN_FREQ

Shanker Donthineni <shankerd@xxxxxxxxxxxxxx>
irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065

Marc Zyngier <marc.zyngier@xxxxxxx>
arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs

Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
drm/vc4: Fix ->clock_select setting for the VEC encoder

Derek Foreman <derekf@xxxxxxxxxxxxxxx>
drm/vc4: Fix race between page flip completion event and clean-up

Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
clk: bcm2835: Fix ->fixed_divider of pllh_aux

Michael Ellerman <mpe@xxxxxxxxxxxxxx>
powerpc/mm: Fix build break when CMA=n && SPAPR_TCE_IOMMU=y

Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
usb: gadget: udc: atmel: remove memory leak

Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxxxxxxx>
serial: 8250_pci: Detach low-level driver during PCI error recovery

Michael Pobega <mpobega@xxxxxxxxxxxxx>
ACPI / blacklist: Make Dell Latitude 3350 ethernet work

Alex Hung <alex.hung@xxxxxxxxxxxxx>
ACPI / blacklist: add _REV quirks for Dell Precision 5520 and 3520

Vladimir Davydov <vdavydov.dev@xxxxxxxxx>
slub: move synchronize_sched out of slab_mutex on shrink

Henrik Ingo <henrik.ingo@xxxxxxxxxxxxx>
uvcvideo: uvc_scan_fallback() for webcams with broken chain

Harald Freudenberger <freude@xxxxxxxxxxxxxxxxxx>
s390/zcrypt: Introduce CEX6 toleration

Mauricio Faria de Oliveira <mauricfo@xxxxxxxxxxxxxxxxxx>
block: allow WRITE_SAME commands with the SG_IO ioctl

Ben Skeggs <bskeggs@xxxxxxxxxx>
drm/nouveau/disp/nv50-: specify ctrl/user separately when constructing classes

Ben Skeggs <bskeggs@xxxxxxxxxx>
drm/nouveau/disp/nv50-: split chid into chid.ctrl and chid.user

Ben Skeggs <bskeggs@xxxxxxxxxx>
drm/nouveau/disp/gp102: fix cursor/overlay immediate channel indices

Alexey Kardashevskiy <aik@xxxxxxxxx>
vfio/spapr: Postpone default window creation

Alexey Kardashevskiy <aik@xxxxxxxxx>
vfio/spapr: Add a helper to create default DMA window

Alexey Kardashevskiy <aik@xxxxxxxxx>
powerpc/mm/iommu, vfio/spapr: Put pages on VFIO container shutdown

Alexey Kardashevskiy <aik@xxxxxxxxx>
vfio/spapr: Reference mm in tce_container

Alexey Kardashevskiy <aik@xxxxxxxxx>
powerpc/iommu: Stop using @current in mm_iommu_xxx

Alexey Kardashevskiy <aik@xxxxxxxxx>
powerpc/iommu: Pass mm_struct to init/cleanup helpers

Alexey Kardashevskiy <aik@xxxxxxxxx>
vfio/spapr: Postpone allocation of userspace version of TCE table

Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
Drivers: hv: ring_buffer: count on wrap around mappings in get_next_pkt_raw() (v2)

Thomas Falcon <tlfalcon@xxxxxxxxxxxxxxxxxx>
ibmveth: calculate gso_segs for large packets

Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
PCI: Do any VF BAR updates before enabling the BARs

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Ignore BAR updates on virtual functions

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Update BARs using property bits appropriate for type

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Don't update VF BARs while VF memory space is enabled

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Decouple IORESOURCE_ROM_ENABLE and PCI_ROM_ADDRESS_ENABLE

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Add comments about ROM BAR updating

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Remove pci_resource_bar() and pci_iov_resource_bar()

Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
PCI: Separate VF BAR updates from standard BAR updates

Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
x86/hyperv: Handle unknown NMIs on one CPU when unknown_nmi_panic

Michael Cyr <mikecyr@xxxxxxxxxx>
scsi: ibmvscsis: Synchronize cmds at remove time

Michael Cyr <mikecyr@xxxxxxxxxx>
scsi: ibmvscsis: Synchronize cmds at tpg_enable_store time

Michael Cyr <mikecyr@xxxxxxxxxx>
scsi: ibmvscsis: Rearrange functions for future patches

Michael Cyr <mikecyr@xxxxxxxxxx>
scsi: ibmvscsis: Clean up properly if target_submit_cmd/tmr fails

Michael Cyr <mikecyr@xxxxxxxxxx>
scsi: ibmvscsis: Return correct partition name/# to client

Michael Cyr <mikecyr@xxxxxxxxxx>
scsi: ibmvscsis: Issues from Dan Carpenter/Smatch

Todd Fujinaka <todd.fujinaka@xxxxxxxxx>
igb: add i211 to i210 PHY workaround

Chris J Arges <christopherarges@xxxxxxxxx>
igb: Workaround for igb i210 firmware issue

Dan Streetman <ddstreet@xxxxxxxx>
xen: do not re-use pirq number cached in pci device msi msg data

Krister Johansen <kjlx@xxxxxxxxxxxxxxxxxx>
dmaengine: iota: ioat_alloc_chan_resources should not perform sleeping allocations.

Daniel Borkmann <daniel@xxxxxxxxxxxxx>
bpf: fix mark_reg_unknown_value for spilled regs on map value marking

Daniel Borkmann <daniel@xxxxxxxxxxxxx>
bpf: fix regression on verifier pruning wrt map lookups

Alexei Starovoitov <ast@xxxxxx>
bpf: fix state equivalence

Thomas Graf <tgraf@xxxxxxx>
bpf: Detect identical PTR_TO_MAP_VALUE_OR_NULL registers

Hannes Frederic Sowa <hannes@xxxxxxxxxxxxxxxxxxx>
dccp: fix memory leak during tear-down of unsuccessful connection request

Hannes Frederic Sowa <hannes@xxxxxxxxxxxxxxxxxxx>
tun: fix premature POLLOUT notification on tun devices

Jon Maxwell <jmaxwell37@xxxxxxxxx>
dccp/tcp: fix routing redirect race

Florian Westphal <fw@xxxxxxxxx>
bridge: drop netfilter fake rtable unconditionally

Florian Westphal <fw@xxxxxxxxx>
ipv6: avoid write to a possibly cloned skb

Sabrina Dubroca <sd@xxxxxxxxxxxxxxx>
ipv6: make ECMP route replacement less greedy

David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
mpls: Do not decrement alive counter for unregister events

David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
mpls: Send route delete notifications when router module is unloaded

Etienne Noss <etienne.noss@xxxxxxxxxx>
act_connmark: avoid crashing on malformed nlattrs with null parms

Dmitry V. Levin <ldv@xxxxxxxxxxxx>
uapi: fix linux/packet_diag.h userspace compilation error

Paolo Abeni <pabeni@xxxxxxxxxx>
net/tunnel: set inner protocol in network gro hooks

David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
vrf: Fix use-after-free in vrf_xmit

Eric Dumazet <edumazet@xxxxxxxxxx>
dccp: fix use-after-free in dccp_feat_activate_values

Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump

Eric Dumazet <edumazet@xxxxxxxxxx>
net: fix socket refcounting in skb_complete_tx_timestamp()

Eric Dumazet <edumazet@xxxxxxxxxx>
net: fix socket refcounting in skb_complete_wifi_ack()

Eric Dumazet <edumazet@xxxxxxxxxx>
tcp: fix various issues for sockets morphing to listen state

WANG Cong <xiyou.wangcong@xxxxxxxxx>
strparser: destroy workqueue on module exit

Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
dccp: Unlock sock before calling sk_free()

Eric Dumazet <edumazet@xxxxxxxxxx>
ipv6: orphan skbs in reassembly unit

Eric Dumazet <edumazet@xxxxxxxxxx>
net: net_enable_timestamp() can be called from irq contexts

Alexander Potapenko <glider@xxxxxxxxxx>
net: don't call strlen() on the user buffer in packet_bind_spkt()

Mike Manning <mmanning@xxxxxxxxxxx>
net: bridge: allow IPv6 when multicast flood is disabled

Eric Dumazet <edumazet@xxxxxxxxxx>
tcp/dccp: block BH for SYN processing

Ido Schimmel <idosch@xxxxxxxxxxxx>
mlxsw: spectrum_router: Avoid potential packets loss

Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx>
geneve: lock RCU on TX path

Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx>
vxlan: lock RCU on TX path

Florian Fainelli <f.fainelli@xxxxxxxxx>
net: phy: Avoid deadlock during phy_error()

Paul HÃber <phueber@xxxxxxxxx>
l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv

Roman Mashak <mrv@xxxxxxxxxxxx>
net sched actions: decrement module reference count after table flush.

Julian Anastasov <ja@xxxxxx>
ipv4: mask tos for input route

Brian Russell <brussell@xxxxxxxxxxx>
vxlan: don't allow overwrite of config src addr

David Forster <dforster@xxxxxxxxxxx>
vti6: return GRE_KEY for vti6

Matthias Schiffer <mschiffer@xxxxxxxxxxxxxxxxxxxx>
vxlan: correctly validate VXLAN ID against VXLAN_N_VID

Tariq Toukan <tariqt@xxxxxxxxxxxx>
net/mlx5e: Fix wrong CQE decompression

Tariq Toukan <tariqt@xxxxxxxxxxxx>
net/mlx5e: Do not reduce LRO WQE size when not using build_skb

Saeed Mahameed <saeedm@xxxxxxxxxxxx>
net/mlx5e: Register/unregister vport representors on interface attach/detach


-------------

Diffstat:

Documentation/arm64/silicon-errata.txt | 44 +-
Makefile | 4 +-
arch/arm64/Kconfig | 10 +
arch/arm64/kvm/hyp/tlb.c | 64 +-
arch/powerpc/crypto/crc32c-vpmsum_glue.c | 2 +-
arch/powerpc/include/asm/mmu_context.h | 20 +-
arch/powerpc/kernel/setup-common.c | 2 +-
arch/powerpc/mm/mmu_context_book3s64.c | 6 +-
arch/powerpc/mm/mmu_context_iommu.c | 62 +-
arch/x86/events/core.c | 4 +-
arch/x86/kernel/cpu/mshyperv.c | 24 +
arch/x86/kernel/head64.c | 1 +
arch/x86/kernel/tsc.c | 2 +
arch/x86/mm/kasan_init_64.c | 1 +
arch/x86/pci/xen.c | 23 +-
block/scsi_ioctl.c | 3 +
drivers/acpi/blacklist.c | 28 +
drivers/clk/bcm/clk-bcm2835.c | 2 +-
drivers/dma/ioat/init.c | 4 +-
drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild | 2 +
.../gpu/drm/nouveau/nvkm/engine/disp/channv50.c | 30 +-
.../gpu/drm/nouveau/nvkm/engine/disp/channv50.h | 23 +-
drivers/gpu/drm/nouveau/nvkm/engine/disp/cursg84.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/cursgf119.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/cursgk104.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/cursgp102.c | 37 +
.../gpu/drm/nouveau/nvkm/engine/disp/cursgt215.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/cursnv50.c | 6 +-
.../gpu/drm/nouveau/nvkm/engine/disp/dmacgf119.c | 44 +-
.../gpu/drm/nouveau/nvkm/engine/disp/dmacgp104.c | 23 +-
.../gpu/drm/nouveau/nvkm/engine/disp/dmacnv50.c | 46 +-
drivers/gpu/drm/nouveau/nvkm/engine/disp/oimmg84.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/oimmgf119.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/oimmgk104.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/oimmgp102.c | 37 +
.../gpu/drm/nouveau/nvkm/engine/disp/oimmgt215.c | 2 +-
.../gpu/drm/nouveau/nvkm/engine/disp/oimmnv50.c | 6 +-
.../gpu/drm/nouveau/nvkm/engine/disp/piocgf119.c | 28 +-
.../gpu/drm/nouveau/nvkm/engine/disp/piocnv50.c | 30 +-
.../gpu/drm/nouveau/nvkm/engine/disp/rootgp104.c | 4 +-
.../gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c | 4 +-
drivers/gpu/drm/vc4/vc4_crtc.c | 46 +-
drivers/gpu/drm/vc4/vc4_drv.h | 2 +
drivers/gpu/drm/vc4/vc4_kms.c | 33 +-
drivers/gpu/drm/vc4/vc4_regs.h | 3 +-
drivers/irqchip/irq-gic-v3-its.c | 16 +
drivers/media/usb/uvc/uvc_driver.c | 118 ++-
drivers/net/ethernet/ibm/ibmveth.c | 12 +-
drivers/net/ethernet/intel/igb/e1000_phy.c | 4 +
drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 34 +-
drivers/net/ethernet/mellanox/mlx5/core/en_rx.c | 13 +-
.../net/ethernet/mellanox/mlxsw/spectrum_router.c | 30 +-
drivers/net/geneve.c | 10 +-
drivers/net/phy/phy.c | 14 +-
drivers/net/tun.c | 18 +-
drivers/net/vrf.c | 3 +-
drivers/net/vxlan.c | 27 +-
drivers/pci/iov.c | 70 +-
drivers/pci/pci.c | 34 -
drivers/pci/pci.h | 7 +-
drivers/pci/probe.c | 3 +-
drivers/pci/rom.c | 5 +
drivers/pci/setup-res.c | 48 +-
drivers/s390/crypto/ap_bus.c | 3 +
drivers/s390/crypto/ap_bus.h | 1 +
drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c | 1096 +++++++++-----------
drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.h | 5 +-
drivers/tty/serial/8250/8250_pci.c | 23 +-
drivers/usb/gadget/udc/atmel_usba_udc.c | 3 +-
drivers/usb/gadget/udc/atmel_usba_udc.h | 1 +
drivers/vfio/vfio_iommu_spapr_tce.c | 328 ++++--
include/linux/bpf_verifier.h | 14 +-
include/linux/dccp.h | 1 +
include/linux/hyperv.h | 32 +-
include/uapi/linux/packet_diag.h | 2 +-
kernel/bpf/verifier.c | 77 +-
kernel/futex.c | 22 +-
kernel/locking/rwsem-spinlock.c | 15 +-
mm/slab.c | 4 +-
mm/slab.h | 2 +-
mm/slab_common.c | 27 +-
mm/slob.c | 2 +-
mm/slub.c | 19 +-
net/bridge/br_forward.c | 3 +-
net/bridge/br_input.c | 1 +
net/bridge/br_netfilter_hooks.c | 21 -
net/core/dev.c | 35 +-
net/core/skbuff.c | 30 +-
net/dccp/ccids/ccid2.c | 1 +
net/dccp/input.c | 10 +-
net/dccp/ipv4.c | 3 +-
net/dccp/ipv6.c | 8 +-
net/dccp/minisocks.c | 25 +-
net/ipv4/af_inet.c | 4 +-
net/ipv4/route.c | 1 +
net/ipv4/tcp_input.c | 10 +-
net/ipv4/tcp_ipv4.c | 10 +-
net/ipv4/tcp_timer.c | 6 +-
net/ipv6/ip6_fib.c | 2 +
net/ipv6/ip6_offload.c | 4 +-
net/ipv6/ip6_output.c | 7 +-
net/ipv6/ip6_vti.c | 4 +
net/ipv6/netfilter/nf_conntrack_reasm.c | 1 +
net/ipv6/tcp_ipv6.c | 8 +-
net/l2tp/l2tp_ip.c | 2 +-
net/mpls/af_mpls.c | 4 +-
net/openvswitch/conntrack.c | 1 -
net/packet/af_packet.c | 8 +-
net/sched/act_api.c | 5 +-
net/sched/act_connmark.c | 3 +
net/sched/act_skbmod.c | 1 -
net/strparser/strparser.c | 1 +
112 files changed, 1816 insertions(+), 1272 deletions(-)