Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1476852 > unrolled thread

[PATCH 4.4 000/113] 4.4.20-stable review

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2016-09-05 19:40 +0200
Last post2016-09-06 20:10 +0200
Articles 7 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 4.4 000/113] 4.4.20-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-09-05 19:40 +0200
    [PATCH 4.4 010/113] arm64: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-09-05 19:40 +0200
    [PATCH 4.4 003/113] uprobes/x86: Fix RIP-relative handling of EVEX-encoded instructions Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-09-05 19:50 +0200
    [PATCH 4.4 001/113] hugetlb: fix nr_pmds accounting with shared page tables Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-09-05 19:50 +0200
    [PATCH 4.4 004/113] tools/testing/nvdimm: fix SIGTERM vs hotplug crash Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-09-05 19:50 +0200
    Re: [PATCH 4.4 000/113] 4.4.20-stable review Guenter Roeck <linux@roeck-us.net> - 2016-09-06 19:10 +0200
    Re: [PATCH 4.4 000/113] 4.4.20-stable review Shuah Khan <shuah.kh@samsung.com> - 2016-09-06 20:10 +0200

#1476852 — [PATCH 4.4 000/113] 4.4.20-stable review

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-09-05 19:40 +0200
Subject[PATCH 4.4 000/113] 4.4.20-stable review
Message-ID<se5fP-6h4-7@gated-at.bofh.it>
This is the start of the stable review cycle for the 4.4.20 release.
There are 113 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 Sep  7 16:43:32 UTC 2016.
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.4.20-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.4.y
and the diffstat can be found below.

thanks,

greg k-h

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

Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Linux 4.4.20-rc1

Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
    sysfs: correctly handle read offset on PREALLOC attrs

Quentin Schulz <quentin.schulz@free-electrons.com>
    hwmon: (iio_hwmon) fix memory leak in name attribute

Andrej Krutak <dev@andree.sk>
    ALSA: line6: Fix POD sysfs attributes segfault

Andrej Krutak <dev@andree.sk>
    ALSA: line6: Give up on the lock while URBs are released.

Andrej Krutak <dev@andree.sk>
    ALSA: line6: Remove double line6_pcm_release() after failed acquire.

Lukasz Anaczkowski <lukasz.anaczkowski@intel.com>
    ACPI / SRAT: fix SRAT parsing order with both LAPIC and X2APIC present

Dan Carpenter <dan.carpenter@oracle.com>
    ACPI / sysfs: fix error code in get_status()

Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    ACPI / drivers: replace acpi_probe_lock spinlock with mutex

Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    ACPI / drivers: fix typo in ACPI_DECLARE_PROBE_ENTRY macro

Ian Abbott <abbotti@mev.co.uk>
    staging: comedi: ni_mio_common: fix wrong insn_write handler

Ian Abbott <abbotti@mev.co.uk>
    staging: comedi: ni_mio_common: fix AO inttrig backwards compatibility

Ian Abbott <abbotti@mev.co.uk>
    staging: comedi: comedi_test: fix timer race conditions

Ian Abbott <abbotti@mev.co.uk>
    staging: comedi: daqboard2000: bug fix board type matching code

Aleksandr Makarov <aleksandr.o.makarov@gmail.com>
    USB: serial: option: add WeTelecom 0x6802 and 0x6803 products

Aleksandr Makarov <aleksandr.o.makarov@gmail.com>
    USB: serial: option: add WeTelecom WM-D200

Alexey Khoroshilov <khoroshilov@ispras.ru>
    USB: serial: mos7840: fix non-atomic allocation in write path

Alexey Khoroshilov <khoroshilov@ispras.ru>
    USB: serial: mos7720: fix non-atomic allocation in write path

Alan Stern <stern@rowland.harvard.edu>
    USB: fix typo in wMaxPacketSize validation

Li Jun <jun.li@nxp.com>
    usb: chipidea: udc: don't touch DP when controller is in host mode

Alan Stern <stern@rowland.harvard.edu>
    USB: avoid left shift by -1

Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    dmaengine: usb-dmac: check CHCR.DE bit in usb_dmac_isr_channel()

Giovanni Cabiddu <giovanni.cabiddu@intel.com>
    crypto: qat - fix aes-xts key sizes

Dan Carpenter <dan.carpenter@oracle.com>
    crypto: nx - off by one bug in nx_of_update_msc()

Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Input: i8042 - set up shared ps2_cmd_mutex for AUX ports

Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Input: i8042 - break load dependency between atkbd/psmouse and i8042

Masahiro Yamada <yamada.masahiro@socionext.com>
    Input: tegra-kbc - fix inverted reset logic

Jeff Mahoney <jeffm@suse.com>
    btrfs: properly track when rescan worker is running

Jeff Mahoney <jeffm@suse.com>
    btrfs: waiting on qgroup rescan should not always be interruptible

Vegard Nossum <vegard.nossum@oracle.com>
    fs/seq_file: fix out-of-bounds read

Linus Walleij <linus.walleij@linaro.org>
    gpio: Fix OF build problem on UM

Wei Yongjun <weiyj.lk@gmail.com>
    usb: renesas_usbhs: gadget: fix return value check in usbhs_mod_gadget_probe()

Yinghai Lu <yinghai@kernel.org>
    megaraid_sas: Fix probing cards without io port

Greg Edwards <gedwards@fireweed.org>
    mpt3sas: Fix resume on WarpDrive flash cards

Gavin Li <git@thegavinli.com>
    cdc-acm: fix wrong pipe type on rx interrupt xfers

Brian Norris <briannorris@chromium.org>
    i2c: cros-ec-tunnel: Fix usage of cros_ec_cmd_xfer()

Tomeu Vizoso <tomeu.vizoso@collabora.com>
    mfd: cros_ec: Add cros_ec_cmd_xfer_status() helper

Dave Carroll <david.carroll@microsemi.com>
    aacraid: Check size values after double-fetch from user

Vineet Gupta <vgupta@synopsys.com>
    ARC: Elide redundant setup of DMA callbacks

Daniel Mentz <danielmentz@google.com>
    ARC: Call trace_hardirqs_on() before enabling irqs

Liav Rehana <liavr@mellanox.com>
    ARC: use correct offset in pt_regs for saving/restoring user mode r25

Vineet Gupta <vgupta@synopsys.com>
    ARC: build: Better way to detect ISA compatible toolchain

Matthew Auld <matthew.auld@intel.com>
    drm/i915: fix aliasing_ppgtt leak

Chunming Zhou <David1.Zhou@amd.com>
    drm/amdgpu: record error code when ring test failed

jimqu <Jim.Qu@amd.com>
    drm/amd/amdgpu: sdma resume fail during S4 on CI

Alex Deucher <alexander.deucher@amd.com>
    drm/amdgpu: skip TV/CV in display parsing

Alex Deucher <alexander.deucher@amd.com>
    drm/amdgpu: avoid a possible array overflow

Christian König <christian.koenig@amd.com>
    drm/amdgpu: fix amdgpu_move_blit on 32bit systems

Felix Kuehling <Felix.Kuehling@amd.com>
    drm/amdgpu: Change GART offset to 64-bit

Brian Norris <briannorris@chromium.org>
    iio: fix sched WARNING "do not call blocking ops when !TASK_RUNNING"

Wanpeng Li <wanpeng.li@hotmail.com>
    sched/nohz: Fix affine unpinned timers mess

Peter Zijlstra <peterz@infradead.org>
    sched/cputime: Fix NO_HZ_FULL getrusage() monotonicity regression

Lucas Stach <l.stach@pengutronix.de>
    of: fix reference counting in of_graph_get_endpoint_by_regs

Caesar Wang <wxt@rock-chips.com>
    arm64: dts: rockchip: add reset saradc node for rk3368 SoCs

Felix Fietkau <nbd@nbd.name>
    mac80211: fix purging multicast PS buffer queue

Stefan Haberland <sth@linux.vnet.ibm.com>
    s390/dasd: fix hanging device after clear subchannel

Emmanouil Maroudas <emmanouil.maroudas@gmail.com>
    EDAC: Increment correct counter in edac_inc_ue_error()

Agrawal, Nitesh-kumar <Nitesh-kumar.Agrawal@amd.com>
    pinctrl/amd: Remove the default de-bounce time

Will Deacon <will.deacon@arm.com>
    iommu/arm-smmu: Don't BUG() if we find aborting STEs with disable_bypass

Will Deacon <will.deacon@arm.com>
    iommu/arm-smmu: Fix CMDQ error handling

Robin Murphy <robin.murphy@arm.com>
    iommu/dma: Don't put uninitialised IOVA domains

Mathias Nyman <mathias.nyman@linux.intel.com>
    xhci: Make sure xhci handles USB_SPEED_SUPER_PLUS devices.

Robert Deliën <robert@delien.nl>
    USB: serial: ftdi_sio: add PIDs for Ivium Technologies devices

Sheng-Hui J. Chu <s.jeffrey.chu@gmail.com>
    USB: serial: ftdi_sio: add device ID for WICED USB UART dev board

Daniele Palmas <dnlplm@gmail.com>
    USB: serial: option: add support for Telit LE920A4

Lubomir Rintel <lkundrak@v3.sk>
    USB: serial: option: add D-Link DWM-156/A3

Alexey Klimov <klimov.linux@gmail.com>
    USB: serial: fix memleak in driver-registration error path

Mathias Nyman <mathias.nyman@linux.intel.com>
    xhci: don't dereference a xhci member after removing xhci

Jim Lin <jilin@nvidia.com>
    usb: xhci: Fix panic if disconnect

Mathias Nyman <mathias.nyman@linux.intel.com>
    xhci: always handle "Command Ring Stopped" events

Mathieu Laurendeau <mat.lau@laposte.net>
    usb/gadget: fix gadgetfs aio support.

Dan Carpenter <dan.carpenter@oracle.com>
    usb: gadget: fsl_qe_udc: off by one in setup_received_handle()

Alan Stern <stern@rowland.harvard.edu>
    USB: validate wMaxPacketValue entries in endpoint descriptors

Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    usb: renesas_usbhs: Use dmac only if the pipe type is bulk

Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    usb: renesas_usbhs: clear the BRDYSTS in usbhsg_ep_enable()

Alan Stern <stern@rowland.harvard.edu>
    USB: hub: change the locking in hub_activate

Alan Stern <stern@rowland.harvard.edu>
    USB: hub: fix up early-exit pathway in hub_activate

Viresh Kumar <viresh.kumar@linaro.org>
    usb: hub: Fix unbalanced reference count/memory leak/deadlocks

Mathias Nyman <mathias.nyman@linux.intel.com>
    usb: define USB_SPEED_SUPER_PLUS speed for SuperSpeedPlus USB3.1 devices

Felipe Balbi <felipe.balbi@linux.intel.com>
    usb: dwc3: gadget: increment request->actual once

Heikki Krogerus <heikki.krogerus@linux.intel.com>
    usb: dwc3: pci: add Intel Kabylake PCI ID

Lu Baolu <baolu.lu@linux.intel.com>
    usb: misc: usbtest: add fix for driver hang

Marc Ohlf <ohlf@mkt-sys.de>
    usb: ehci: change order of register cleanup during shutdown

Horia Geantă <horia.geanta@nxp.com>
    crypto: caam - defer aead_set_sh_desc in case of zero authsize

Horia Geantă <horia.geanta@nxp.com>
    crypto: caam - fix echainiv(authenc) encrypt shared descriptor

Russell King <rmk+kernel@armlinux.org.uk>
    crypto: caam - fix non-hmac hashes

Marc Zyngier <marc.zyngier@arm.com>
    genirq/msi: Make sure PCI MSIs are activated early

Thomas Gleixner <tglx@linutronix.de>
    genirq/msi: Remove unused MSI_FLAG_IDENTITY_MAP

Andrey Ryabinin <aryabinin@virtuozzo.com>
    um: Don't discard .text.exit section

Hoan Tran <hotran@apm.com>
    ACPI / CPPC: Prevent cpc_desc_ptr points to the invalid data

Hoan Tran <hotran@apm.com>
    ACPI: CPPC: Return error if _CPC is invalid on a CPU

Adrian Hunter <adrian.hunter@intel.com>
    mmc: sdhci-acpi: Reduce Baytrail eMMC/SD/SDIO hangs

Simon Horman <simon.horman@netronome.com>
    PCI: Limit config space size for Netronome NFP4000

Simon Horman <simon.horman@netronome.com>
    PCI: Add Netronome NFP4000 PF device ID

Jason S. McMullan <jason.mcmullan@netronome.com>
    PCI: Limit config space size for Netronome NFP6000 family

Jason S. McMullan <jason.mcmullan@netronome.com>
    PCI: Add Netronome vendor and device IDs

Jason S. McMullan <jason.mcmullan@netronome.com>
    PCI: Support PCIe devices with short cfg_size

Keith Busch <keith.busch@intel.com>
    NVMe: Don't unmap controller registers on reset

Takashi Iwai <tiwai@suse.de>
    ALSA: hda - Manage power well properly for resume

Ross Zwisler <ross.zwisler@linux.intel.com>
    libnvdimm, nd_blk: mask off reserved status bits

Adrian Hunter <adrian.hunter@intel.com>
    perf intel-pt: Fix occasional decoding errors when tracing system-wide

Alex Williamson <alex.williamson@redhat.com>
    vfio/pci: Fix NULL pointer oops in error interrupt setup handling

Wei Yongjun <weiyj.lk@gmail.com>
    virtio: fix memory leak in virtqueue_add()

Helge Deller <deller@gmx.de>
    parisc: Fix order of EREFUSED define in errno.h

James Hogan <james.hogan@imgtec.com>
    arm64: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO

Vittorio Gambaletta (VittGam) <linuxbugs@vittgam.net>
    ALSA: usb-audio: Add quirk for ELP HD USB Camera

Piotr Karasinski <peter.karasinski@gmail.com>
    ALSA: usb-audio: Add a sample rate quirk for Creative Live! Cam Socialize HD (VF0610)

Andrew Donnellan <andrew.donnellan@au1.ibm.com>
    powerpc/eeh: eeh_pci_enable(): fix checking of post-request state

Olga Kornievskaia <kolga@netapp.com>
    SUNRPC: allow for upcalls for same uid but different gss service

Trond Myklebust <trond.myklebust@primarydata.com>
    SUNRPC: Handle EADDRNOTAVAIL on connection failures

Dan Williams <dan.j.williams@intel.com>
    tools/testing/nvdimm: fix SIGTERM vs hotplug crash

Denys Vlasenko <dvlasenk@redhat.com>
    uprobes/x86: Fix RIP-relative handling of EVEX-encoded instructions

Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    x86/mm: Disable preemption during CR3 read+write

Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
    hugetlb: fix nr_pmds accounting with shared page tables


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

Diffstat:

 Makefile                                       |  4 +-
 arch/arc/Makefile                              | 14 +++++
 arch/arc/include/asm/arcregs.h                 |  6 --
 arch/arc/include/asm/entry.h                   |  4 +-
 arch/arc/include/asm/irqflags-compact.h        |  2 +-
 arch/arc/mm/cache.c                            |  9 +++
 arch/arm64/boot/dts/rockchip/rk3368.dtsi       |  2 +
 arch/arm64/include/asm/elf.h                   |  1 +
 arch/arm64/include/uapi/asm/auxvec.h           |  2 +
 arch/parisc/include/uapi/asm/errno.h           |  4 +-
 arch/powerpc/kernel/eeh.c                      |  2 +-
 arch/um/include/asm/common.lds.S               |  2 +-
 arch/x86/include/asm/tlbflush.h                |  7 +++
 arch/x86/kernel/uprobes.c                      | 22 +++----
 drivers/acpi/cppc_acpi.c                       | 24 +++++---
 drivers/acpi/nfit.c                            |  3 +-
 drivers/acpi/numa.c                            | 16 +++--
 drivers/acpi/scan.c                            |  6 +-
 drivers/acpi/sysfs.c                           |  7 +--
 drivers/crypto/caam/caamalg.c                  | 13 ++--
 drivers/crypto/caam/caamhash.c                 |  1 +
 drivers/crypto/nx/nx.c                         |  2 +-
 drivers/crypto/qat/qat_common/qat_algs.c       |  4 +-
 drivers/dma/sh/usb-dmac.c                      | 19 +++---
 drivers/edac/edac_mc.c                         |  2 +-
 drivers/gpio/Kconfig                           |  1 +
 drivers/gpu/drm/amd/amdgpu/amdgpu.h            |  4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c   | 13 ++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c       |  4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c         |  5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c        |  4 +-
 drivers/gpu/drm/amd/amdgpu/cik_sdma.c          |  3 +
 drivers/gpu/drm/i915/i915_gem_gtt.c            |  1 +
 drivers/hwmon/iio_hwmon.c                      | 24 ++++----
 drivers/i2c/busses/i2c-cros-ec-tunnel.c        |  2 +-
 drivers/iio/industrialio-buffer.c              | 23 +++++--
 drivers/input/keyboard/tegra-kbc.c             |  2 +-
 drivers/input/serio/i8042.c                    | 17 +-----
 drivers/input/serio/libps2.c                   | 10 ++-
 drivers/iommu/arm-smmu-v3.c                    |  7 ++-
 drivers/iommu/dma-iommu.c                      |  3 +-
 drivers/mmc/host/Kconfig                       |  1 +
 drivers/mmc/host/sdhci-acpi.c                  | 81 ++++++++++++++++++++++++
 drivers/nvme/host/pci.c                        | 71 ++++++++++++---------
 drivers/of/base.c                              | 11 +---
 drivers/pci/msi.c                              |  2 +
 drivers/pci/pci-sysfs.c                        | 18 +++---
 drivers/pci/quirks.c                           | 12 ++++
 drivers/pinctrl/pinctrl-amd.c                  | 20 ------
 drivers/platform/chrome/cros_ec_proto.c        | 17 ++++++
 drivers/s390/block/dasd.c                      | 10 ++-
 drivers/scsi/aacraid/commctrl.c                | 13 +++-
 drivers/scsi/megaraid/megaraid_sas_base.c      |  6 +-
 drivers/scsi/megaraid/megaraid_sas_fusion.c    |  2 +-
 drivers/scsi/mpt3sas/mpt3sas_base.c            | 22 +++----
 drivers/staging/comedi/drivers/comedi_test.c   | 46 ++++----------
 drivers/staging/comedi/drivers/daqboard2000.c  |  2 +-
 drivers/staging/comedi/drivers/ni_mio_common.c | 12 +++-
 drivers/usb/chipidea/udc.c                     |  7 ++-
 drivers/usb/class/cdc-acm.c                    |  5 +-
 drivers/usb/class/cdc-acm.h                    |  1 -
 drivers/usb/common/common.c                    |  1 +
 drivers/usb/core/config.c                      | 69 +++++++++++++++++++--
 drivers/usb/core/devices.c                     | 10 +--
 drivers/usb/core/devio.c                       | 16 +++--
 drivers/usb/core/hcd-pci.c                     |  2 +-
 drivers/usb/core/hcd.c                         |  6 +-
 drivers/usb/core/hub.c                         | 49 ++++++++-------
 drivers/usb/core/urb.c                         |  3 +-
 drivers/usb/core/usb.h                         |  2 +-
 drivers/usb/dwc3/dwc3-pci.c                    |  2 +
 drivers/usb/dwc3/gadget.c                      | 19 +++---
 drivers/usb/gadget/legacy/inode.c              |  2 +-
 drivers/usb/gadget/udc/fsl_qe_udc.c            |  2 +-
 drivers/usb/host/ehci-hcd.c                    |  4 +-
 drivers/usb/host/xhci-hub.c                    |  3 +
 drivers/usb/host/xhci-mem.c                    |  9 ++-
 drivers/usb/host/xhci-pci.c                    |  3 +-
 drivers/usb/host/xhci-ring.c                   | 16 ++---
 drivers/usb/host/xhci.c                        |  7 ++-
 drivers/usb/misc/usbtest.c                     |  7 ++-
 drivers/usb/renesas_usbhs/fifo.c               |  4 +-
 drivers/usb/renesas_usbhs/mod_gadget.c         |  9 ++-
 drivers/usb/serial/ftdi_sio.c                  |  3 +
 drivers/usb/serial/ftdi_sio_ids.h              | 12 ++++
 drivers/usb/serial/mos7720.c                   |  2 +-
 drivers/usb/serial/mos7840.c                   |  4 +-
 drivers/usb/serial/option.c                    | 31 ++++++++++
 drivers/usb/serial/usb-serial.c                |  4 +-
 drivers/vfio/pci/vfio_pci_intrs.c              | 85 +++++++++++++++-----------
 drivers/virtio/virtio_ring.c                   |  2 +
 fs/btrfs/ctree.h                               |  1 +
 fs/btrfs/disk-io.c                             |  3 +-
 fs/btrfs/ioctl.c                               |  2 +-
 fs/btrfs/qgroup.c                              | 21 +++++--
 fs/btrfs/qgroup.h                              |  3 +-
 fs/seq_file.c                                  |  4 +-
 fs/sysfs/file.c                                |  8 ++-
 include/linux/acpi.h                           |  2 +-
 include/linux/i8042.h                          |  6 --
 include/linux/mfd/cros_ec.h                    | 15 +++++
 include/linux/msi.h                            |  8 +--
 include/linux/pci_ids.h                        |  7 +++
 include/linux/serio.h                          | 24 ++++++--
 include/uapi/linux/usb/ch9.h                   |  1 +
 kernel/irq/msi.c                               | 19 ++++--
 kernel/sched/core.c                            |  5 +-
 kernel/sched/cputime.c                         | 15 +++--
 mm/hugetlb.c                                   |  3 +-
 net/mac80211/cfg.c                             |  2 +-
 net/mac80211/tx.c                              |  6 +-
 net/sunrpc/auth_gss/auth_gss.c                 |  8 ++-
 net/sunrpc/xprtsock.c                          |  4 ++
 sound/pci/hda/hda_intel.c                      | 32 ++++++----
 sound/usb/line6/pcm.c                          |  3 +-
 sound/usb/line6/pod.c                          | 12 ++--
 sound/usb/quirks.c                             |  2 +
 tools/perf/arch/x86/util/intel-pt.c            |  6 +-
 tools/testing/nvdimm/test/nfit.c               |  2 +
 119 files changed, 846 insertions(+), 426 deletions(-)

[toc] | [next] | [standalone]


#1476853 — [PATCH 4.4 010/113] arm64: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-09-05 19:40 +0200
Subject[PATCH 4.4 010/113] arm64: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO
Message-ID<se62f-6Q9-73@gated-at.bofh.it>
In reply to#1476852
4.4-stable review patch.  If anyone has any objections, please let me know.

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

From: James Hogan <james.hogan@imgtec.com>

commit 3146bc64d12377a74dbda12b96ea32da3774ae07 upstream.

AT_VECTOR_SIZE_ARCH should be defined with the maximum number of
NEW_AUX_ENT entries that ARCH_DLINFO can contain, but it wasn't defined
for arm64 at all even though ARCH_DLINFO will contain one NEW_AUX_ENT
for the VDSO address.

This shouldn't be a problem as AT_VECTOR_SIZE_BASE includes space for
AT_BASE_PLATFORM which arm64 doesn't use, but lets define it now and add
the comment above ARCH_DLINFO as found in several other architectures to
remind future modifiers of ARCH_DLINFO to keep AT_VECTOR_SIZE_ARCH up to
date.

Fixes: f668cd1673aa ("arm64: ELF definitions")
Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/arm64/include/asm/elf.h         |    1 +
 arch/arm64/include/uapi/asm/auxvec.h |    2 ++
 2 files changed, 3 insertions(+)

--- a/arch/arm64/include/asm/elf.h
+++ b/arch/arm64/include/asm/elf.h
@@ -136,6 +136,7 @@ typedef struct user_fpsimd_state elf_fpr
 
 #define SET_PERSONALITY(ex)		clear_thread_flag(TIF_32BIT);
 
+/* update AT_VECTOR_SIZE_ARCH if the number of NEW_AUX_ENT entries changes */
 #define ARCH_DLINFO							\
 do {									\
 	NEW_AUX_ENT(AT_SYSINFO_EHDR,					\
--- a/arch/arm64/include/uapi/asm/auxvec.h
+++ b/arch/arm64/include/uapi/asm/auxvec.h
@@ -19,4 +19,6 @@
 /* vDSO location */
 #define AT_SYSINFO_EHDR	33
 
+#define AT_VECTOR_SIZE_ARCH 1 /* entries in ARCH_DLINFO */
+
 #endif

[toc] | [prev] | [next] | [standalone]


#1476860 — [PATCH 4.4 003/113] uprobes/x86: Fix RIP-relative handling of EVEX-encoded instructions

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-09-05 19:50 +0200
Subject[PATCH 4.4 003/113] uprobes/x86: Fix RIP-relative handling of EVEX-encoded instructions
Message-ID<se6bU-6U4-9@gated-at.bofh.it>
In reply to#1476852
4.4-stable review patch.  If anyone has any objections, please let me know.

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

From: Denys Vlasenko <dvlasenk@redhat.com>

commit 68187872c76a96ed4db7bfb064272591f02e208b upstream.

Since instruction decoder now supports EVEX-encoded instructions, two fixes
are needed to correctly handle them in uprobes.

Extended bits for MODRM.rm field need to be sanitized just like we do it
for VEX3, to avoid encoding wrong register for register-relative access.

EVEX has _two_ extended bits: b and x. Theoretically, EVEX.x should be
ignored by the CPU (since GPRs go only up to 15, not 31), but let's be
paranoid here: proper encoding for register-relative access
should have EVEX.x = 1.

Secondly, we should fetch vex.vvvv for EVEX too.
This is now super easy because instruction decoder populates
vex_prefix.bytes[2] for all flavors of (e)vex encodings, even for VEX2.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Acked-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jim Keniston <jkenisto@us.ibm.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: linux-kernel@vger.kernel.org
Fixes: 8a764a875fe3 ("x86/asm/decoder: Create artificial 3rd byte for 2-byte VEX")
Link: http://lkml.kernel.org/r/20160811154521.20469-1-dvlasenk@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/x86/kernel/uprobes.c |   22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

--- a/arch/x86/kernel/uprobes.c
+++ b/arch/x86/kernel/uprobes.c
@@ -357,20 +357,22 @@ static void riprel_analyze(struct arch_u
 		*cursor &= 0xfe;
 	}
 	/*
-	 * Similar treatment for VEX3 prefix.
-	 * TODO: add XOP/EVEX treatment when insn decoder supports them
+	 * Similar treatment for VEX3/EVEX prefix.
+	 * TODO: add XOP treatment when insn decoder supports them
 	 */
-	if (insn->vex_prefix.nbytes == 3) {
+	if (insn->vex_prefix.nbytes >= 3) {
 		/*
 		 * vex2:     c5    rvvvvLpp   (has no b bit)
 		 * vex3/xop: c4/8f rxbmmmmm wvvvvLpp
 		 * evex:     62    rxbR00mm wvvvv1pp zllBVaaa
-		 *   (evex will need setting of both b and x since
-		 *   in non-sib encoding evex.x is 4th bit of MODRM.rm)
-		 * Setting VEX3.b (setting because it has inverted meaning):
+		 * Setting VEX3.b (setting because it has inverted meaning).
+		 * Setting EVEX.x since (in non-SIB encoding) EVEX.x
+		 * is the 4th bit of MODRM.rm, and needs the same treatment.
+		 * For VEX3-encoded insns, VEX3.x value has no effect in
+		 * non-SIB encoding, the change is superfluous but harmless.
 		 */
 		cursor = auprobe->insn + insn_offset_vex_prefix(insn) + 1;
-		*cursor |= 0x20;
+		*cursor |= 0x60;
 	}
 
 	/*
@@ -415,12 +417,10 @@ static void riprel_analyze(struct arch_u
 
 	reg = MODRM_REG(insn);	/* Fetch modrm.reg */
 	reg2 = 0xff;		/* Fetch vex.vvvv */
-	if (insn->vex_prefix.nbytes == 2)
-		reg2 = insn->vex_prefix.bytes[1];
-	else if (insn->vex_prefix.nbytes == 3)
+	if (insn->vex_prefix.nbytes)
 		reg2 = insn->vex_prefix.bytes[2];
 	/*
-	 * TODO: add XOP, EXEV vvvv reading.
+	 * TODO: add XOP vvvv reading.
 	 *
 	 * vex.vvvv field is in bits 6-3, bits are inverted.
 	 * But in 32-bit mode, high-order bit may be ignored.

[toc] | [prev] | [next] | [standalone]


#1476863 — [PATCH 4.4 001/113] hugetlb: fix nr_pmds accounting with shared page tables

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-09-05 19:50 +0200
Subject[PATCH 4.4 001/113] hugetlb: fix nr_pmds accounting with shared page tables
Message-ID<se6bU-6U4-27@gated-at.bofh.it>
In reply to#1476852
4.4-stable review patch.  If anyone has any objections, please let me know.

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

From: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>

commit c17b1f42594eb71b8d3eb5a6dfc907a7eb88a51d upstream.

We account HugeTLB's shared page table to all processes who share it.
The accounting happens during huge_pmd_share().

If somebody populates pud entry under us, we should decrease pagetable's
refcount and decrease nr_pmds of the process.

By mistake, I increase nr_pmds again in this case.  :-/ It will lead to
"BUG: non-zero nr_pmds on freeing mm: 2" on process' exit.

Let's fix this by increasing nr_pmds only when we're sure that the page
table will be used.

Link: http://lkml.kernel.org/r/20160617122506.GC6534@node.shutemov.name
Fixes: dc6c9a35b66b ("mm: account pmd page tables to the process")
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reported-by: zhongjiang <zhongjiang@huawei.com>
Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 mm/hugetlb.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -4213,7 +4213,6 @@ pte_t *huge_pmd_share(struct mm_struct *
 		if (saddr) {
 			spte = huge_pte_offset(svma->vm_mm, saddr);
 			if (spte) {
-				mm_inc_nr_pmds(mm);
 				get_page(virt_to_page(spte));
 				break;
 			}
@@ -4228,9 +4227,9 @@ pte_t *huge_pmd_share(struct mm_struct *
 	if (pud_none(*pud)) {
 		pud_populate(mm, pud,
 				(pmd_t *)((unsigned long)spte & PAGE_MASK));
+		mm_inc_nr_pmds(mm);
 	} else {
 		put_page(virt_to_page(spte));
-		mm_inc_nr_pmds(mm);
 	}
 	spin_unlock(ptl);
 out:

[toc] | [prev] | [next] | [standalone]


#1476868 — [PATCH 4.4 004/113] tools/testing/nvdimm: fix SIGTERM vs hotplug crash

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-09-05 19:50 +0200
Subject[PATCH 4.4 004/113] tools/testing/nvdimm: fix SIGTERM vs hotplug crash
Message-ID<se6bV-6U4-51@gated-at.bofh.it>
In reply to#1476852
4.4-stable review patch.  If anyone has any objections, please let me know.

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

From: Dan Williams <dan.j.williams@intel.com>

commit d8d378fa1a0c98ecb50ca52c9bf3bc14e25aa2d2 upstream.

The unit tests crash when hotplug races the previous probe. This race
requires that the loading of the nfit_test module be terminated with
SIGTERM, and the module to be unloaded while the ars scan is still
running.

In contrast to the normal nfit driver, the unit test calls
acpi_nfit_init() twice to simulate hotplug, whereas the nominal case
goes through the acpi_nfit_notify() event handler.  The
acpi_nfit_notify() path is careful to flush the previous region
registration before servicing the hotplug event. The unit test was
missing this guarantee.

 BUG: unable to handle kernel NULL pointer dereference at           (null)
 IP: [<ffffffff810cdce7>] pwq_activate_delayed_work+0x47/0x170
 [..]
 Call Trace:
  [<ffffffff810ce186>] pwq_dec_nr_in_flight+0x66/0xa0
  [<ffffffff810ce490>] process_one_work+0x2d0/0x680
  [<ffffffff810ce331>] ? process_one_work+0x171/0x680
  [<ffffffff810ce88e>] worker_thread+0x4e/0x480
  [<ffffffff810ce840>] ? process_one_work+0x680/0x680
  [<ffffffff810ce840>] ? process_one_work+0x680/0x680
  [<ffffffff810d5343>] kthread+0xf3/0x110
  [<ffffffff8199846f>] ret_from_fork+0x1f/0x40
  [<ffffffff810d5250>] ? kthread_create_on_node+0x230/0x230

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 tools/testing/nvdimm/test/nfit.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/tools/testing/nvdimm/test/nfit.c
+++ b/tools/testing/nvdimm/test/nfit.c
@@ -13,6 +13,7 @@
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 #include <linux/platform_device.h>
 #include <linux/dma-mapping.h>
+#include <linux/workqueue.h>
 #include <linux/libnvdimm.h>
 #include <linux/vmalloc.h>
 #include <linux/device.h>
@@ -1246,6 +1247,7 @@ static int nfit_test_probe(struct platfo
 	if (nfit_test->setup != nfit_test0_setup)
 		return 0;
 
+	flush_work(&acpi_desc->work);
 	nfit_test->setup_hotplug = 1;
 	nfit_test->setup(nfit_test);
 

[toc] | [prev] | [next] | [standalone]


#1477669

FromGuenter Roeck <linux@roeck-us.net>
Date2016-09-06 19:10 +0200
Message-ID<ses2L-4Ps-53@gated-at.bofh.it>
In reply to#1476852
On Mon, Sep 05, 2016 at 06:43:23PM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.4.20 release.
> There are 113 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 Sep  7 16:43:32 UTC 2016.
> Anything received after that time might be too late.
> 
Build results:
	total: 148 pass: 148 fail: 0
Qemu test results:
	total: 101 pass: 101 fail: 0

Details are available at http://kerneltests.org/builders.

Guenter

[toc] | [prev] | [next] | [standalone]


#1477716

FromShuah Khan <shuah.kh@samsung.com>
Date2016-09-06 20:10 +0200
Message-ID<sesYN-5oF-7@gated-at.bofh.it>
In reply to#1476852
On 09/05/2016 10:43 AM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.4.20 release.
> There are 113 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 Sep  7 16:43:32 UTC 2016.
> 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.4.20-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.4.y
> and the diffstat can be found below.
> 
> thanks,
> 
> greg k-h
> 

Compiled and booted on my test system. No dmesg regressions.

thanks,
-- Shuah


-- 
Shuah Khan
Sr. Linux Kernel Developer
Open Source Innovation Group
Samsung Research America(Silicon Valley)
shuah.kh@samsung.com

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web