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


Groups > linux.kernel > #1381185 > unrolled thread

[PATCH 4.5 000/124] 4.5.2-stable review

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2016-04-18 05:40 +0200
Last post2016-04-19 08:00 +0200
Articles 20 on this page of 25 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 4.5 000/124] 4.5.2-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 045/124] mlx4: add missing braces in verify_qp_parameters Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 007/124] parisc: Unbreak handling exceptions from kernel modules Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 047/124] ath9k: fix buffer overrun for ar9287 Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 024/124] drm/radeon: add another R7 370 quirk Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 043/124] ipv4: Dont do expensive useless work during inetdev destroy. Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 041/124] rocker: set FDB cleanup timer according to lowest ageing time Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 054/124] ipv4: fix broadcast packets reception Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 052/124] net: bcmgenet: fix dma api length mismatch Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 035/124] sh_eth: fix NULL pointer dereference in sh_eth_ring_format() Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:40 +0200
    [PATCH 4.5 011/124] ALSA: hda - Apply fix for white noise on Asus N550JV, too Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 013/124] mm: fix invalid node in alloc_migrate_target() Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 020/124] arm64: opcodes.h: Add arm big-endian config options before including arm header Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 010/124] ALSA: hda - Fix white noise on Asus N750JV headphone Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 015/124] s390/mm: handle PTE-mapped tail pages in fast gup Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 018/124] powerpc/process: Fix altivec SPR not being saved Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 003/124] parisc: Fix SIGSYS signals in compat case Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 006/124] parisc: Fix kernel crash with reversed copy_from_user() Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 019/124] compiler-gcc: disable -ftracer for __noclone functions Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    [PATCH 4.5 016/124] libnvdimm: fix smart data retrieval Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-18 05:50 +0200
    Re: [PATCH 4.5 000/124] 4.5.2-stable review Guenter Roeck <linux@roeck-us.net> - 2016-04-18 18:40 +0200
      Re: [PATCH 4.5 000/124] 4.5.2-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-19 08:00 +0200
    Re: [PATCH 4.5 000/124] 4.5.2-stable review Shuah Khan <shuahkh@osg.samsung.com> - 2016-04-18 18:40 +0200
      Re: [PATCH 4.5 000/124] 4.5.2-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-19 08:00 +0200
    Re: [PATCH 4.5 000/124] 4.5.2-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-19 08:00 +0200

Page 1 of 2  [1] 2  Next page →


#1381185 — [PATCH 4.5 000/124] 4.5.2-stable review

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 000/124] 4.5.2-stable review
Message-ID<rp7gt-6ho-3@gated-at.bofh.it>
This is the start of the stable review cycle for the 4.5.2 release.
There are 124 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 Apr 20 02:25:31 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.5.2-rc1.gz
and the diffstat can be found below.

thanks,

greg k-h

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

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

Liviu Dudau <Liviu.Dudau@arm.com>
    staging: android: ion: Set the length of the DMA sg entries in buffer

Alan Stern <stern@rowland.harvard.edu>
    HID: usbhid: fix inconsistent reset/resume/reset-resume behavior

Benjamin Tissoires <benjamin.tissoires@redhat.com>
    HID: wacom: fix Bamboo ONE oops

Kailang Yang <kailang@realtek.com>
    ALSA: usb-audio: Skip volume controls triggers hangup on Dell USB Dock

Dennis Kadioglu <denk@post.com>
    ALSA: usb-audio: Add a quirk for Plantronics BT300

Takashi Iwai <tiwai@suse.de>
    ALSA: usb-audio: Add a sample rate quirk for Phoenix Audio TMX320

Sven Eckelmann <sven@narfation.org>
    ALSA: hda/realtek - Enable the ALC292 dock fixup on the Thinkpad T460s

Hyungwon Hwang <hyungwon.hwang7@gmail.com>
    ALSA: hda - Fix regression of monitor_present flag in eld proc file

Adrian Hunter <adrian.hunter@intel.com>
    mmc: sdhci-pci: Add support and PCI IDs for more Broxton host controllers

Adrian Hunter <adrian.hunter@intel.com>
    mmc: sdhci: Fix regression setting power on Trats2 board

Yang Shi <yang.shi@linaro.org>
    arm64: replace read_lock to rcu lock in call_step_hook

Filipe Manana <fdmanana@suse.com>
    Btrfs: fix file/data loss caused by fsync after rename and new inode

Joerg Roedel <jroedel@suse.de>
    iommu: Don't overwrite domain pointer when there is no default_domain

Theodore Ts'o <tytso@mit.edu>
    ext4: ignore quota mount options if the quota feature is enabled

Theodore Ts'o <tytso@mit.edu>
    ext4: add lockdep annotations for i_data_sem

Filipe Manana <fdmanana@suse.com>
    btrfs: fix crash/invalid memory access on fsync when using overlayfs

Miklos Szeredi <mszeredi@redhat.com>
    ext4: use file_dentry()

Miklos Szeredi <mszeredi@redhat.com>
    ext4: use dget_parent() in ext4_file_open()

Theodore Ts'o <tytso@mit.edu>
    ext4 crypto: use dget_parent() in ext4_d_revalidate()

Miklos Szeredi <mszeredi@redhat.com>
    nfs: use file_dentry()

Miklos Szeredi <miklos@szeredi.hu>
    fs: add file_dentry()

Martin K. Petersen <martin.petersen@oracle.com>
    sd: Fix excessive capacity printing on devices with blocks bigger than 512 bytes

Irina Tirdea <irina.tirdea@intel.com>
    iio: gyro: bmg160: fix endianness when reading axes

Irina Tirdea <irina.tirdea@intel.com>
    iio: gyro: bmg160: fix buffer read values

Irina Tirdea <irina.tirdea@intel.com>
    iio: accel: bmc150: fix endianness when reading axes

Arnd Bergmann <arnd@arndb.de>
    iio: st_magn: always define ST_MAGN_TRIGGER_SET_STATE

Irina Tirdea <irina.tirdea@intel.com>
    iio: fix config watermark initial value

Nicolas Pitre <nicolas.pitre@linaro.org>
    ARM: 8550/1: protect idiv patching against undefined gcc behavior

Hannes Reinecke <hare@suse.de>
    scsi: Do not attach VPD to devices that don't support it

Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    usb: renesas_usbhs: fix to avoid using a disabled ep in usbhsg_queue_done()

Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    usb: renesas_usbhs: disable TX IRQ before starting TX DMAC transfer

Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    usb: renesas_usbhs: avoid NULL pointer derefernce in usbhsf_pkt_handler()

Yong Li <sdliyong@gmail.com>
    gpio: pca953x: Use correct u16 value for register word write

Michal Kazior <michal.kazior@tieto.com>
    mac80211: fix txq queue related crashes

Michal Kazior <michal.kazior@tieto.com>
    mac80211: fix unnecessary frame drops in mesh fwding

Sara Sharon <sara.sharon@intel.com>
    mac80211: fix ibss scan parameters

Arnd Bergmann <arnd@arndb.de>
    mac80211: avoid excessive stack usage in sta_info

Johannes Berg <johannes.berg@intel.com>
    mac80211: properly deal with station hashtable insert errors

Michael S. Tsirkin <mst@redhat.com>
    virtio: virtio 1.0 cs04 spec compliance for reset

David Disseldorp <ddiss@suse.de>
    rbd: use GFP_NOIO consistently for request allocations

Manuel Lauss <manuel.lauss@gmail.com>
    pcmcia: db1xxx_ss: fix last irq_to_gpio user

Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
    v4l: vsp1: Set the SRU CTRL0 register when starting the stream

Philipp Zabel <p.zabel@pengutronix.de>
    coda: fix error path in case of missing pdata on non-DT platform

Mauro Carvalho Chehab <mchehab@osg.samsung.com>
    au0828: Fix dev_state handling

Shuah Khan <shuahkh@osg.samsung.com>
    au0828: fix au0828_v4l2_close() dev_state race condition

Robert Jarzmik <robert.jarzmik@free.fr>
    gpio: pxa: fix legacy non pinctrl aware builds

Vladimir Zapolskiy <vz@mleia.com>
    pinctrl: freescale: imx: fix bogus check of of_iomap() return value

Linus Walleij <linus.walleij@linaro.org>
    pinctrl: nomadik: fix pull debug print inversion

Hans de Goede <hdegoede@redhat.com>
    pinctrl: sunxi: Fix A33 external interrupts not working

Wolfram Sang <wsa+renesas@sang-engineering.com>
    pinctrl: sh-pfc: only use dummy states for non-DT platforms

Govindraj Raja <Govindraj.Raja@imgtec.com>
    pinctrl: pistachio: fix mfio84-89 function description and pinmux.

Paul Burton <paul.burton@imgtec.com>
    MIPS: Fix MSA ld unaligned failure cases

Paolo Bonzini <pbonzini@redhat.com>
    KVM: x86: reduce default value of halt_poll_ns parameter

Yuki Shibuya <shibuya.yk@ncos.nec.co.jp>
    KVM: x86: Inject pending interrupt even if pending nmi exist

Hans de Goede <hdegoede@redhat.com>
    USB: uas: Add a new NO_REPORT_LUNS quirk

Hans de Goede <hdegoede@redhat.com>
    USB: uas: Limit qdepth at the scsi-host level

Roopa Prabhu <roopa@cumulusnetworks.com>
    mpls: find_outdev: check for err ptr in addition to NULL check

Jakub Sitnicki <jkbs@redhat.com>
    ipv6: Count in extension headers in skb->network_header

Thadeu Lima de Souza Cascardo <cascardo@redhat.com>
    ip6_tunnel: set rtnl_link_ops before calling register_netdevice

Haishuang Yan <yanhaishuang@cmss.chinamobile.com>
    ipv6: l2tp: fix a potential issue in l2tp_ip6_recv

Haishuang Yan <yanhaishuang@cmss.chinamobile.com>
    ipv4: l2tp: fix a potential issue in l2tp_ip_recv

Jason Wang <jasowang@redhat.com>
    tuntap: restore default qdisc

Daniel Borkmann <daniel@iogearbox.net>
    tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter

Nicolas Dichtel <nicolas.dichtel@6wind.com>
    rtnl: fix msg size calculation in if_nlmsg_size()

Haishuang Yan <yanhaishuang@cmss.chinamobile.com>
    bridge: Allow set bridge ageing time when switchdev disabled

Eric Dumazet <edumazet@google.com>
    ipv6: udp: fix UDP_MIB_IGNOREDMULTI updates

Bjørn Mork <bjorn@mork.no>
    qmi_wwan: add "D-Link DWM-221 B1" device id

subashab@codeaurora.org <subashab@codeaurora.org>
    xfrm: Fix crash observed during device unregistration and decryption

Guillaume Nault <g.nault@alphalink.fr>
    ppp: take reference on channels netns

Lance Richardson <lrichard@redhat.com>
    ipv4: initialize flowi4_flags before calling fib_lookup()

Paolo Abeni <pabeni@redhat.com>
    ipv4: fix broadcast packets reception

Eric Dumazet <edumazet@google.com>
    bonding: fix bond_get_stats()

Eric Dumazet <edumazet@google.com>
    net: bcmgenet: fix dma api length mismatch

Manish Chopra <manish.chopra@qlogic.com>
    qlge: Fix receive packets drop.

Eric Dumazet <edumazet@google.com>
    tcp/dccp: remove obsolete WARN_ON() in icmp handlers

Guillaume Nault <g.nault@alphalink.fr>
    ppp: ensure file->private_data can't be overridden

Gregory CLEMENT <gregory.clement@free-electrons.com>
    net: mvneta: Fix spinlock usage

Arnd Bergmann <arnd@arndb.de>
    ath9k: fix buffer overrun for ar9287

Arnd Bergmann <arnd@arndb.de>
    farsync: fix off-by-one bug in fst_add_one

Arnd Bergmann <arnd@arndb.de>
    mlx4: add missing braces in verify_qp_parameters

Arnaldo Carvalho de Melo <acme@redhat.com>
    net: Fix use after free in the recvmmsg exit path

David S. Miller <davem@davemloft.net>
    ipv4: Don't do expensive useless work during inetdev destroy.

Stephen Hemminger <shemming@brocade.com>
    bridge: allow zero ageing time

Ido Schimmel <idosch@mellanox.com>
    rocker: set FDB cleanup timer according to lowest ageing time

Ido Schimmel <idosch@mellanox.com>
    mlxsw: spectrum: Check requested ageing time is valid

Willem de Bruijn <willemb@google.com>
    macvtap: always pass ethernet header in linear

Rajesh Borundia <rajesh.borundia@qlogic.com>
    qlcnic: Fix mailbox completion handling during spurious interrupt

Rajesh Borundia <rajesh.borundia@qlogic.com>
    qlcnic: Remove unnecessary usage of atomic_t

Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
    sh_eth: advance 'rxdesc' later in sh_eth_ring_format()

Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
    sh_eth: fix NULL pointer dereference in sh_eth_ring_format()

Neil Armstrong <narmstrong@baylibre.com>
    net: dsa: Fix cleanup resources upon module removal

Alexei Starovoitov <ast@fb.com>
    bpf: avoid copying junk bytes in bpf_get_current_comm()

Willem de Bruijn <willemb@google.com>
    packet: validate variable length ll headers

Willem de Bruijn <willemb@google.com>
    ax25: add link layer header validation function

Willem de Bruijn <willemb@google.com>
    net: validate variable length ll headers

Boris Ostrovsky <boris.ostrovsky@oracle.com>
    xen/events: Mask a moving irq

Alex Deucher <alexander.deucher@amd.com>
    drm/amdgpu/gmc: use proper register for vram type on Fiji

Alex Deucher <alexander.deucher@amd.com>
    drm/amdgpu/gmc: move vram type fetching into sw_init

Rex Zhu <Rex.Zhu@amd.com>
    drm/amd/powerplay: fix segment fault issue in multi-display case.

Alex Deucher <alexander.deucher@amd.com>
    drm/radeon: add a dpm quirk for all R7 370 parts

Alex Deucher <alexander.deucher@amd.com>
    drm/radeon: add another R7 370 quirk

Alex Deucher <alexander.deucher@amd.com>
    drm/radeon: add a dpm quirk for sapphire Dual-X R7 370 2G D5

Daniel Vetter <daniel.vetter@ffwll.ch>
    drm/udl: Use unlocked gem unreferencing

Rob Clark <robdclark@gmail.com>
    drm/dp: move hw_mutex up the call stack

James Morse <james.morse@arm.com>
    arm64: opcodes.h: Add arm big-endian config options before including arm header

Paolo Bonzini <pbonzini@redhat.com>
    compiler-gcc: disable -ftracer for __noclone functions

Oliver O'Halloran <oohall@gmail.com>
    powerpc/process: Fix altivec SPR not being saved

Dan Williams <dan.j.williams@intel.com>
    libnvdimm, pfn: fix uuid validation

Dan Williams <dan.j.williams@intel.com>
    libnvdimm: fix smart data retrieval

Gerald Schaefer <gerald.schaefer@de.ibm.com>
    s390/mm: handle PTE-mapped tail pages in fast gup

Sebastian Siewior <bigeasy@linutronix.de>
    powerpc/mm: Fixup preempt underflow with huge pages

Xishi Qiu <qiuxishi@huawei.com>
    mm: fix invalid node in alloc_migrate_target()

Hui Wang <hui.wang@canonical.com>
    ALSA: hda - fix front mic problem for a HP desktop

Bobi Mihalca <bobbymihalca@touchtech.ro>
    ALSA: hda - Apply fix for white noise on Asus N550JV, too

Bobi Mihalca <bobbymihalca@touchtech.ro>
    ALSA: hda - Fix white noise on Asus N750JV headphone

Bobi Mihalca <bobbymihalca@touchtech.ro>
    ALSA: hda - Asus N750JV external subwoofer fixup

Takashi Iwai <tiwai@suse.de>
    ALSA: timer: Use mod_timer() for rearming the system timer

Helge Deller <deller@gmx.de>
    parisc: Unbreak handling exceptions from kernel modules

Helge Deller <deller@gmx.de>
    parisc: Fix kernel crash with reversed copy_from_user()

Helge Deller <deller@gmx.de>
    parisc: Avoid function pointers for kernel exception routines

Helge Deller <deller@gmx.de>
    parisc: Fix and enable seccomp filter support

Helge Deller <deller@gmx.de>
    parisc: Fix SIGSYS signals in compat case

Nicolai Stange <nicstange@gmail.com>
    PKCS#7: pkcs7_validate_trust(): initialize the _trusted output argument

Guenter Roeck <linux@roeck-us.net>
    hwmon: (max1111) Return -ENODEV from max1111_read_channel if not instantiated


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

Diffstat:

 .../bindings/pinctrl/img,pistachio-pinctrl.txt     |  12 +-
 Documentation/kernel-parameters.txt                |   2 +
 Makefile                                           |   4 +-
 arch/arm/kernel/setup.c                            |   2 +
 arch/arm64/include/asm/opcodes.h                   |   4 +
 arch/arm64/kernel/debug-monitors.c                 |  21 ++--
 arch/mips/alchemy/devboards/db1000.c               |  18 ++-
 arch/mips/alchemy/devboards/db1550.c               |   4 +-
 arch/mips/kernel/unaligned.c                       |  51 ++++----
 arch/parisc/Kconfig                                |   1 +
 arch/parisc/include/asm/compat.h                   |   7 ++
 arch/parisc/include/asm/syscall.h                  |  13 ++
 arch/parisc/include/asm/uaccess.h                  |   1 +
 arch/parisc/kernel/asm-offsets.c                   |   1 +
 arch/parisc/kernel/parisc_ksyms.c                  |  10 +-
 arch/parisc/kernel/ptrace.c                        |   9 +-
 arch/parisc/kernel/signal32.c                      |   5 +
 arch/parisc/kernel/syscall.S                       |   2 +
 arch/parisc/kernel/traps.c                         |   3 +
 arch/parisc/lib/fixup.S                            |   6 +
 arch/parisc/mm/fault.c                             |   1 +
 arch/powerpc/kernel/process.c                      |   2 +-
 arch/powerpc/mm/hugetlbpage.c                      |   4 +-
 arch/s390/mm/gup.c                                 |   8 +-
 arch/x86/include/asm/kvm_host.h                    |   2 +-
 arch/x86/kvm/x86.c                                 |  20 +--
 crypto/asymmetric_keys/pkcs7_trust.c               |   2 +
 drivers/block/rbd.c                                |   6 +-
 drivers/gpio/gpio-pca953x.c                        |   3 +-
 drivers/gpio/gpio-pxa.c                            |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c            |  13 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c              |  16 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c              |  23 ++--
 drivers/gpu/drm/drm_dp_helper.c                    |  27 ++--
 drivers/gpu/drm/radeon/si_dpm.c                    |   6 +
 drivers/gpu/drm/udl/udl_fb.c                       |   2 +-
 drivers/gpu/drm/udl/udl_gem.c                      |   2 +-
 drivers/hid/usbhid/hid-core.c                      |  73 +++++------
 drivers/hid/wacom_wac.c                            |  11 ++
 drivers/hwmon/max1111.c                            |   6 +
 drivers/iio/accel/bmc150-accel-core.c              |   7 +-
 drivers/iio/gyro/bmg160_core.c                     |   9 +-
 drivers/iio/industrialio-buffer.c                  |   1 +
 drivers/iio/magnetometer/st_magn.h                 |   1 +
 drivers/iommu/iommu.c                              |   3 +-
 drivers/media/platform/coda/coda-common.c          |  10 +-
 drivers/media/platform/vsp1/vsp1_sru.c             |   1 +
 drivers/media/usb/au0828/au0828-core.c             |   2 +-
 drivers/media/usb/au0828/au0828-input.c            |   4 +-
 drivers/media/usb/au0828/au0828-video.c            |  63 +++++-----
 drivers/media/usb/au0828/au0828.h                  |   9 +-
 drivers/mmc/host/sdhci-pci-core.c                  |  25 ++++
 drivers/mmc/host/sdhci-pci.h                       |   3 +
 drivers/mmc/host/sdhci-pxav3.c                     |  22 ++++
 drivers/mmc/host/sdhci.c                           |  39 ++++--
 drivers/mmc/host/sdhci.h                           |   4 +
 drivers/net/bonding/bond_main.c                    |  65 +++++-----
 drivers/net/ethernet/broadcom/genet/bcmgenet.c     |   4 +-
 drivers/net/ethernet/marvell/mvneta.c              |  11 +-
 .../net/ethernet/mellanox/mlx4/resource_tracker.c  |   3 +-
 drivers/net/ethernet/mellanox/mlxsw/spectrum.h     |   2 +
 .../ethernet/mellanox/mlxsw/spectrum_switchdev.c   |   9 +-
 drivers/net/ethernet/qlogic/qlcnic/qlcnic.h        |   3 +-
 .../net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c    |  24 ++--
 .../net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c    |   3 +-
 drivers/net/ethernet/qlogic/qlge/qlge_main.c       |  11 ++
 drivers/net/ethernet/renesas/sh_eth.c              |  10 +-
 drivers/net/ethernet/rocker/rocker.c               |  10 +-
 drivers/net/macvtap.c                              |   9 +-
 drivers/net/ppp/ppp_generic.c                      |  35 +++---
 drivers/net/tun.c                                  |  12 +-
 drivers/net/usb/qmi_wwan.c                         |   1 +
 drivers/net/wan/farsync.c                          |   2 +-
 drivers/net/wireless/ath/ath9k/eeprom.c            |   7 +-
 drivers/nvdimm/bus.c                               |   2 +-
 drivers/nvdimm/pfn_devs.c                          |   2 +-
 drivers/pcmcia/db1xxx_ss.c                         |  11 +-
 drivers/pinctrl/freescale/pinctrl-imx.c            |  17 ++-
 drivers/pinctrl/nomadik/pinctrl-nomadik.c          |   2 +-
 drivers/pinctrl/pinctrl-pistachio.c                |  24 ++--
 drivers/pinctrl/sh-pfc/core.c                      |   4 +-
 drivers/pinctrl/sunxi/pinctrl-sun8i-a33.c          |   1 +
 drivers/pinctrl/sunxi/pinctrl-sunxi.c              |  17 +--
 drivers/pinctrl/sunxi/pinctrl-sunxi.h              |  21 ++--
 drivers/scsi/scsi.c                                |   3 +-
 drivers/scsi/sd.c                                  |  47 ++-----
 drivers/scsi/sd.h                                  |   7 +-
 drivers/staging/android/ion/ion.c                  |   4 +-
 drivers/usb/renesas_usbhs/fifo.c                   |   4 +-
 drivers/usb/renesas_usbhs/mod_gadget.c             |   6 +-
 drivers/usb/storage/uas.c                          |  21 +++-
 drivers/usb/storage/unusual_uas.h                  |   7 ++
 drivers/usb/storage/usb.c                          |   5 +-
 drivers/virtio/virtio_pci_modern.c                 |  11 +-
 drivers/xen/events/events_base.c                   |  28 ++++-
 fs/btrfs/file.c                                    |   2 +-
 fs/btrfs/tree-log.c                                | 137 +++++++++++++++++++++
 fs/dcache.c                                        |   5 +-
 fs/ext4/crypto.c                                   |  12 +-
 fs/ext4/ext4.h                                     |  23 ++++
 fs/ext4/file.c                                     |  12 +-
 fs/ext4/move_extent.c                              |  11 +-
 fs/ext4/super.c                                    |  47 +++++--
 fs/nfs/dir.c                                       |   6 +-
 fs/nfs/inode.c                                     |   2 +-
 fs/nfs/nfs4file.c                                  |   4 +-
 fs/overlayfs/super.c                               |  33 +++++
 include/linux/compiler-gcc.h                       |   2 +-
 include/linux/dcache.h                             |  10 ++
 include/linux/filter.h                             |   4 +
 include/linux/fs.h                                 |  10 ++
 include/linux/if_bridge.h                          |   4 -
 include/linux/netdevice.h                          |  22 +++-
 include/linux/usb_usual.h                          |   2 +
 include/net/bonding.h                              |   1 +
 include/scsi/scsi_device.h                         |  25 ++++
 kernel/bpf/helpers.c                               |   2 +-
 mm/page_isolation.c                                |   8 +-
 net/ax25/ax25_ip.c                                 |  15 +++
 net/bridge/br_stp.c                                |  13 +-
 net/core/filter.c                                  |  33 +++--
 net/core/rtnetlink.c                               |   1 +
 net/dccp/ipv4.c                                    |   2 -
 net/dsa/dsa.c                                      |  16 +--
 net/ipv4/devinet.c                                 |   4 +
 net/ipv4/fib_frontend.c                            |  20 +--
 net/ipv4/netfilter/nf_nat_masquerade_ipv4.c        |  12 +-
 net/ipv4/tcp_ipv4.c                                |   2 -
 net/ipv4/udp.c                                     |  12 +-
 net/ipv6/ip6_output.c                              |   8 +-
 net/ipv6/ip6_tunnel.c                              |   2 +-
 net/ipv6/udp.c                                     |   4 +-
 net/l2tp/l2tp_ip.c                                 |   8 +-
 net/l2tp/l2tp_ip6.c                                |   8 +-
 net/mac80211/ibss.c                                |  22 ++--
 net/mac80211/iface.c                               |   3 +
 net/mac80211/rx.c                                  |   5 +-
 net/mac80211/sta_info.c                            |  37 ++++--
 net/mpls/af_mpls.c                                 |   3 +
 net/packet/af_packet.c                             |  37 +++---
 net/socket.c                                       |  38 +++---
 net/xfrm/xfrm_input.c                              |   3 +
 sound/core/timer.c                                 |   4 +-
 sound/pci/hda/patch_hdmi.c                         |   2 +
 sound/pci/hda/patch_realtek.c                      |  29 ++++-
 sound/usb/mixer_maps.c                             |  14 +++
 sound/usb/quirks.c                                 |   2 +
 147 files changed, 1260 insertions(+), 558 deletions(-)

[toc] | [next] | [standalone]


#1381186 — [PATCH 4.5 045/124] mlx4: add missing braces in verify_qp_parameters

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 045/124] mlx4: add missing braces in verify_qp_parameters
Message-ID<rp8cz-78k-29@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Arnd Bergmann <arnd@arndb.de>

[ Upstream commit baefd7015cdb304ce6c94f9679d0486c71954766 ]

The implementation of QP paravirtualization back in linux-3.7 included
some code that looks very dubious, and gcc-6 has grown smart enough
to warn about it:

drivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function 'verify_qp_parameters':
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c:3154:5: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
     if (optpar & MLX4_QP_OPTPAR_ALT_ADDR_PATH) {
     ^~
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c:3144:4: note: ...this 'if' clause, but it is not
    if (slave != mlx4_master_func_num(dev))

>From looking at the context, I'm reasonably sure that the indentation
is correct but that it should have contained curly braces from the
start, as the update_gid() function in the same patch correctly does.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 54679e148287 ("mlx4: Implement QP paravirtualization and maintain phys_pkey_cache for smp_snoop")
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c
+++ b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c
@@ -3141,7 +3141,7 @@ static int verify_qp_parameters(struct m
 		case QP_TRANS_RTS2RTS:
 		case QP_TRANS_SQD2SQD:
 		case QP_TRANS_SQD2RTS:
-			if (slave != mlx4_master_func_num(dev))
+			if (slave != mlx4_master_func_num(dev)) {
 				if (optpar & MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH) {
 					port = (qp_ctx->pri_path.sched_queue >> 6 & 1) + 1;
 					if (dev->caps.port_mask[port] != MLX4_PORT_TYPE_IB)
@@ -3160,6 +3160,7 @@ static int verify_qp_parameters(struct m
 					if (qp_ctx->alt_path.mgid_index >= num_gids)
 						return -EINVAL;
 				}
+			}
 			break;
 		default:
 			break;

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


#1381188 — [PATCH 4.5 007/124] parisc: Unbreak handling exceptions from kernel modules

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 007/124] parisc: Unbreak handling exceptions from kernel modules
Message-ID<rp8cz-78k-33@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Helge Deller <deller@gmx.de>

commit 2ef4dfd9d9f288943e249b78365a69e3ea3ec072 upstream.

Handling exceptions from modules never worked on parisc.
It was just masked by the fact that exceptions from modules
don't happen during normal use.

When a module triggers an exception in get_user() we need to load the
main kernel dp value before accessing the exception_data structure, and
afterwards restore the original dp value of the module on exit.

Noticed-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/parisc/include/asm/uaccess.h |    1 +
 arch/parisc/kernel/asm-offsets.c  |    1 +
 arch/parisc/lib/fixup.S           |    6 ++++++
 arch/parisc/mm/fault.c            |    1 +
 4 files changed, 9 insertions(+)

--- a/arch/parisc/include/asm/uaccess.h
+++ b/arch/parisc/include/asm/uaccess.h
@@ -76,6 +76,7 @@ struct exception_table_entry {
  */
 struct exception_data {
 	unsigned long fault_ip;
+	unsigned long fault_gp;
 	unsigned long fault_space;
 	unsigned long fault_addr;
 };
--- a/arch/parisc/kernel/asm-offsets.c
+++ b/arch/parisc/kernel/asm-offsets.c
@@ -299,6 +299,7 @@ int main(void)
 #endif
 	BLANK();
 	DEFINE(EXCDATA_IP, offsetof(struct exception_data, fault_ip));
+	DEFINE(EXCDATA_GP, offsetof(struct exception_data, fault_gp));
 	DEFINE(EXCDATA_SPACE, offsetof(struct exception_data, fault_space));
 	DEFINE(EXCDATA_ADDR, offsetof(struct exception_data, fault_addr));
 	BLANK();
--- a/arch/parisc/lib/fixup.S
+++ b/arch/parisc/lib/fixup.S
@@ -26,6 +26,7 @@
 
 #ifdef CONFIG_SMP
 	.macro  get_fault_ip t1 t2
+	loadgp
 	addil LT%__per_cpu_offset,%r27
 	LDREG RT%__per_cpu_offset(%r1),\t1
 	/* t2 = smp_processor_id() */
@@ -40,14 +41,19 @@
 	LDREG RT%exception_data(%r1),\t1
 	/* t1 = this_cpu_ptr(&exception_data) */
 	add,l \t1,\t2,\t1
+	/* %r27 = t1->fault_gp - restore gp */
+	LDREG EXCDATA_GP(\t1), %r27
 	/* t1 = t1->fault_ip */
 	LDREG EXCDATA_IP(\t1), \t1
 	.endm
 #else
 	.macro  get_fault_ip t1 t2
+	loadgp
 	/* t1 = this_cpu_ptr(&exception_data) */
 	addil LT%exception_data,%r27
 	LDREG RT%exception_data(%r1),\t2
+	/* %r27 = t2->fault_gp - restore gp */
+	LDREG EXCDATA_GP(\t2), %r27
 	/* t1 = t2->fault_ip */
 	LDREG EXCDATA_IP(\t2), \t1
 	.endm
--- a/arch/parisc/mm/fault.c
+++ b/arch/parisc/mm/fault.c
@@ -151,6 +151,7 @@ int fixup_exception(struct pt_regs *regs
 		struct exception_data *d;
 		d = this_cpu_ptr(&exception_data);
 		d->fault_ip = regs->iaoq[0];
+		d->fault_gp = regs->gr[27];
 		d->fault_space = regs->isr;
 		d->fault_addr = regs->ior;
 

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


#1381190 — [PATCH 4.5 047/124] ath9k: fix buffer overrun for ar9287

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 047/124] ath9k: fix buffer overrun for ar9287
Message-ID<rp8cz-78k-37@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Arnd Bergmann <arnd@arndb.de>

[ Upstream commit 83d6f1f15f8cce844b0a131cbc63e444620e48b5 ]

Code that was added back in 2.6.38 has an obvious overflow
when accessing a static array, and at the time it was added
only a code comment was put in front of it as a reminder
to have it reviewed properly.

This has not happened, but gcc-6 now points to the specific
overflow:

drivers/net/wireless/ath/ath9k/eeprom.c: In function 'ath9k_hw_get_gain_boundaries_pdadcs':
drivers/net/wireless/ath/ath9k/eeprom.c:483:44: error: array subscript is above array bounds [-Werror=array-bounds]
     maxPwrT4[i] = data_9287[idxL].pwrPdg[i][4];
                   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~

It turns out that the correct array length exists in the local
'intercepts' variable of this function, so we can just use that
instead of hardcoding '4', so this patch changes all three
instances to use that variable. The other two instances were
already correct, but it's more consistent this way.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 940cd2c12ebf ("ath9k_hw: merge the ar9287 version of ath9k_hw_get_gain_boundaries_pdadcs")
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/wireless/ath/ath9k/eeprom.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

--- a/drivers/net/wireless/ath/ath9k/eeprom.c
+++ b/drivers/net/wireless/ath/ath9k/eeprom.c
@@ -477,10 +477,9 @@ void ath9k_hw_get_gain_boundaries_pdadcs
 
 	if (match) {
 		if (AR_SREV_9287(ah)) {
-			/* FIXME: array overrun? */
 			for (i = 0; i < numXpdGains; i++) {
 				minPwrT4[i] = data_9287[idxL].pwrPdg[i][0];
-				maxPwrT4[i] = data_9287[idxL].pwrPdg[i][4];
+				maxPwrT4[i] = data_9287[idxL].pwrPdg[i][intercepts - 1];
 				ath9k_hw_fill_vpd_table(minPwrT4[i], maxPwrT4[i],
 						data_9287[idxL].pwrPdg[i],
 						data_9287[idxL].vpdPdg[i],
@@ -490,7 +489,7 @@ void ath9k_hw_get_gain_boundaries_pdadcs
 		} else if (eeprom_4k) {
 			for (i = 0; i < numXpdGains; i++) {
 				minPwrT4[i] = data_4k[idxL].pwrPdg[i][0];
-				maxPwrT4[i] = data_4k[idxL].pwrPdg[i][4];
+				maxPwrT4[i] = data_4k[idxL].pwrPdg[i][intercepts - 1];
 				ath9k_hw_fill_vpd_table(minPwrT4[i], maxPwrT4[i],
 						data_4k[idxL].pwrPdg[i],
 						data_4k[idxL].vpdPdg[i],
@@ -500,7 +499,7 @@ void ath9k_hw_get_gain_boundaries_pdadcs
 		} else {
 			for (i = 0; i < numXpdGains; i++) {
 				minPwrT4[i] = data_def[idxL].pwrPdg[i][0];
-				maxPwrT4[i] = data_def[idxL].pwrPdg[i][4];
+				maxPwrT4[i] = data_def[idxL].pwrPdg[i][intercepts - 1];
 				ath9k_hw_fill_vpd_table(minPwrT4[i], maxPwrT4[i],
 						data_def[idxL].pwrPdg[i],
 						data_def[idxL].vpdPdg[i],

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


#1381191 — [PATCH 4.5 024/124] drm/radeon: add another R7 370 quirk

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 024/124] drm/radeon: add another R7 370 quirk
Message-ID<rp8cz-78k-39@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Alex Deucher <alexander.deucher@amd.com>

commit a64663d9870364bd2a2df62bf0d3a9fbe5ea62a8 upstream.

bug:
https://bugzilla.kernel.org/show_bug.cgi?id=115291

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/gpu/drm/radeon/si_dpm.c |    1 +
 1 file changed, 1 insertion(+)

--- a/drivers/gpu/drm/radeon/si_dpm.c
+++ b/drivers/gpu/drm/radeon/si_dpm.c
@@ -2930,6 +2930,7 @@ static struct si_dpm_quirk si_dpm_quirk_
 	{ PCI_VENDOR_ID_ATI, 0x6810, 0x174b, 0xe271, 85000, 90000 },
 	{ PCI_VENDOR_ID_ATI, 0x6811, 0x1462, 0x2015, 0, 120000 },
 	{ PCI_VENDOR_ID_ATI, 0x6811, 0x1043, 0x2015, 0, 120000 },
+	{ PCI_VENDOR_ID_ATI, 0x6811, 0x148c, 0x2015, 0, 120000 },
 	{ 0, 0, 0, 0 },
 };
 

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


#1381192 — [PATCH 4.5 043/124] ipv4: Dont do expensive useless work during inetdev destroy.

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 043/124] ipv4: Dont do expensive useless work during inetdev destroy.
Message-ID<rp8cz-78k-41@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: "David S. Miller" <davem@davemloft.net>

[ Upstream commit fbd40ea0180a2d328c5adc61414dc8bab9335ce2 ]

When an inetdev is destroyed, every address assigned to the interface
is removed.  And in this scenerio we do two pointless things which can
be very expensive if the number of assigned interfaces is large:

1) Address promotion.  We are deleting all addresses, so there is no
   point in doing this.

2) A full nf conntrack table purge for every address.  We only need to
   do this once, as is already caught by the existing
   masq_dev_notifier so masq_inet_event() can skip this.

Reported-by: Solar Designer <solar@openwall.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Tested-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 net/ipv4/devinet.c                          |    4 ++++
 net/ipv4/fib_frontend.c                     |    4 ++++
 net/ipv4/netfilter/nf_nat_masquerade_ipv4.c |   12 ++++++++++--
 3 files changed, 18 insertions(+), 2 deletions(-)

--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -334,6 +334,9 @@ static void __inet_del_ifa(struct in_dev
 
 	ASSERT_RTNL();
 
+	if (in_dev->dead)
+		goto no_promotions;
+
 	/* 1. Deleting primary ifaddr forces deletion all secondaries
 	 * unless alias promotion is set
 	 **/
@@ -380,6 +383,7 @@ static void __inet_del_ifa(struct in_dev
 			fib_del_ifaddr(ifa, ifa1);
 	}
 
+no_promotions:
 	/* 2. Unlink it */
 
 	*ifap = ifa1->ifa_next;
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
@@ -922,6 +922,9 @@ void fib_del_ifaddr(struct in_ifaddr *if
 		subnet = 1;
 	}
 
+	if (in_dev->dead)
+		goto no_promotions;
+
 	/* Deletion is more complicated than add.
 	 * We should take care of not to delete too much :-)
 	 *
@@ -997,6 +1000,7 @@ void fib_del_ifaddr(struct in_ifaddr *if
 		}
 	}
 
+no_promotions:
 	if (!(ok & BRD_OK))
 		fib_magic(RTM_DELROUTE, RTN_BROADCAST, ifa->ifa_broadcast, 32, prim);
 	if (subnet && ifa->ifa_prefixlen < 31) {
--- a/net/ipv4/netfilter/nf_nat_masquerade_ipv4.c
+++ b/net/ipv4/netfilter/nf_nat_masquerade_ipv4.c
@@ -108,10 +108,18 @@ static int masq_inet_event(struct notifi
 			   unsigned long event,
 			   void *ptr)
 {
-	struct net_device *dev = ((struct in_ifaddr *)ptr)->ifa_dev->dev;
+	struct in_device *idev = ((struct in_ifaddr *)ptr)->ifa_dev;
 	struct netdev_notifier_info info;
 
-	netdev_notifier_info_init(&info, dev);
+	/* The masq_dev_notifier will catch the case of the device going
+	 * down.  So if the inetdev is dead and being destroyed we have
+	 * no work to do.  Otherwise this is an individual address removal
+	 * and we have to perform the flush.
+	 */
+	if (idev->dead)
+		return NOTIFY_DONE;
+
+	netdev_notifier_info_init(&info, idev->dev);
 	return masq_device_event(this, event, &info);
 }
 

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


#1381193 — [PATCH 4.5 041/124] rocker: set FDB cleanup timer according to lowest ageing time

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 041/124] rocker: set FDB cleanup timer according to lowest ageing time
Message-ID<rp8cz-78k-45@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Ido Schimmel <idosch@mellanox.com>

[ Upstream commit 88de1cd457e5cb664d6d437e2ea4750d089165f5 ]

In rocker, ageing time is a per-port attribute, so the next time the FDB
cleanup timer fires should be set according to the lowest ageing time.

This will later allow us to delete the BR_MIN_AGEING_TIME macro, which was
added to guarantee minimum ageing time in the bridge layer, thereby breaking
existing behavior.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/ethernet/rocker/rocker.c |   10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

--- a/drivers/net/ethernet/rocker/rocker.c
+++ b/drivers/net/ethernet/rocker/rocker.c
@@ -239,6 +239,7 @@ struct rocker {
 	struct {
 		u64 id;
 	} hw;
+	unsigned long ageing_time;
 	spinlock_t cmd_ring_lock;		/* for cmd ring accesses */
 	struct rocker_dma_ring_info cmd_ring;
 	struct rocker_dma_ring_info event_ring;
@@ -3704,7 +3705,7 @@ static void rocker_fdb_cleanup(unsigned
 	struct rocker_port *rocker_port;
 	struct rocker_fdb_tbl_entry *entry;
 	struct hlist_node *tmp;
-	unsigned long next_timer = jiffies + BR_MIN_AGEING_TIME;
+	unsigned long next_timer = jiffies + rocker->ageing_time;
 	unsigned long expires;
 	unsigned long lock_flags;
 	int flags = ROCKER_OP_FLAG_NOWAIT | ROCKER_OP_FLAG_REMOVE |
@@ -4367,8 +4368,12 @@ static int rocker_port_bridge_ageing_tim
 					  struct switchdev_trans *trans,
 					  u32 ageing_time)
 {
+	struct rocker *rocker = rocker_port->rocker;
+
 	if (!switchdev_trans_ph_prepare(trans)) {
 		rocker_port->ageing_time = clock_t_to_jiffies(ageing_time);
+		if (rocker_port->ageing_time < rocker->ageing_time)
+			rocker->ageing_time = rocker_port->ageing_time;
 		mod_timer(&rocker_port->rocker->fdb_cleanup_timer, jiffies);
 	}
 
@@ -5206,10 +5211,13 @@ static int rocker_probe(struct pci_dev *
 		goto err_init_tbls;
 	}
 
+	rocker->ageing_time = BR_DEFAULT_AGEING_TIME;
 	setup_timer(&rocker->fdb_cleanup_timer, rocker_fdb_cleanup,
 		    (unsigned long) rocker);
 	mod_timer(&rocker->fdb_cleanup_timer, jiffies);
 
+	rocker->ageing_time = BR_DEFAULT_AGEING_TIME;
+
 	err = rocker_probe_ports(rocker);
 	if (err) {
 		dev_err(&pdev->dev, "failed to probe ports\n");

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


#1381196 — [PATCH 4.5 054/124] ipv4: fix broadcast packets reception

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 054/124] ipv4: fix broadcast packets reception
Message-ID<rp8cz-78k-47@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Paolo Abeni <pabeni@redhat.com>

[ Upstream commit ad0ea1989cc4d5905941d0a9e62c63ad6d859cef ]

Currently, ingress ipv4 broadcast datagrams are dropped since,
in udp_v4_early_demux(), ip_check_mc_rcu() is invoked even on
bcast packets.

This patch addresses the issue, invoking ip_check_mc_rcu()
only for mcast packets.

Fixes: 6e5403093261 ("ipv4/udp: Verify multicast group is ours in upd_v4_early_demux()")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 net/ipv4/udp.c |   12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -2082,10 +2082,14 @@ void udp_v4_early_demux(struct sk_buff *
 		if (!in_dev)
 			return;
 
-		ours = ip_check_mc_rcu(in_dev, iph->daddr, iph->saddr,
-				       iph->protocol);
-		if (!ours)
-			return;
+		/* we are supposed to accept bcast packets */
+		if (skb->pkt_type == PACKET_MULTICAST) {
+			ours = ip_check_mc_rcu(in_dev, iph->daddr, iph->saddr,
+					       iph->protocol);
+			if (!ours)
+				return;
+		}
+
 		sk = __udp4_lib_mcast_demux_lookup(net, uh->dest, iph->daddr,
 						   uh->source, iph->saddr, dif);
 	} else if (skb->pkt_type == PACKET_HOST) {

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


#1381199 — [PATCH 4.5 052/124] net: bcmgenet: fix dma api length mismatch

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 052/124] net: bcmgenet: fix dma api length mismatch
Message-ID<rp8cA-78k-53@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Eric Dumazet <edumazet@google.com>

[ Upstream commit eee577232203842b4dcadb7ab477a298479633ed ]

When un-mapping skb->data in __bcmgenet_tx_reclaim(),
we must use the length that was used in original dma_map_single(),
instead of skb->len that might be bigger (includes the frags)

We simply can store skb_len into tx_cb_ptr->dma_len and use it
at unmap time.

Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/ethernet/broadcom/genet/bcmgenet.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -1197,7 +1197,7 @@ static unsigned int __bcmgenet_tx_reclai
 			dev->stats.tx_bytes += tx_cb_ptr->skb->len;
 			dma_unmap_single(&dev->dev,
 					 dma_unmap_addr(tx_cb_ptr, dma_addr),
-					 tx_cb_ptr->skb->len,
+					 dma_unmap_len(tx_cb_ptr, dma_len),
 					 DMA_TO_DEVICE);
 			bcmgenet_free_cb(tx_cb_ptr);
 		} else if (dma_unmap_addr(tx_cb_ptr, dma_addr)) {
@@ -1308,7 +1308,7 @@ static int bcmgenet_xmit_single(struct n
 	}
 
 	dma_unmap_addr_set(tx_cb_ptr, dma_addr, mapping);
-	dma_unmap_len_set(tx_cb_ptr, dma_len, skb->len);
+	dma_unmap_len_set(tx_cb_ptr, dma_len, skb_len);
 	length_status = (skb_len << DMA_BUFLENGTH_SHIFT) | dma_desc_flags |
 			(priv->hw_params->qtag_mask << DMA_TX_QTAG_SHIFT) |
 			DMA_TX_APPEND_CRC;

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


#1381200 — [PATCH 4.5 035/124] sh_eth: fix NULL pointer dereference in sh_eth_ring_format()

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:40 +0200
Subject[PATCH 4.5 035/124] sh_eth: fix NULL pointer dereference in sh_eth_ring_format()
Message-ID<rp8cA-78k-59@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

[ Upstream commit c1b7fca65070bfadca94dd53a4e6b71cd4f69715 ]

In a low memory situation, if netdev_alloc_skb() fails on a first RX ring
loop iteration  in sh_eth_ring_format(), 'rxdesc' is still NULL.  Avoid
kernel oops by adding the 'rxdesc' check after the loop.

Reported-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/ethernet/renesas/sh_eth.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- a/drivers/net/ethernet/renesas/sh_eth.c
+++ b/drivers/net/ethernet/renesas/sh_eth.c
@@ -1163,7 +1163,8 @@ static void sh_eth_ring_format(struct ne
 	mdp->dirty_rx = (u32) (i - mdp->num_rx_ring);
 
 	/* Mark the last entry as wrapping the ring. */
-	rxdesc->status |= cpu_to_le32(RD_RDLE);
+	if (rxdesc)
+		rxdesc->status |= cpu_to_le32(RD_RDLE);
 
 	memset(mdp->tx_ring, 0, tx_ringsize);
 

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


#1381204 — [PATCH 4.5 011/124] ALSA: hda - Apply fix for white noise on Asus N550JV, too

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 011/124] ALSA: hda - Apply fix for white noise on Asus N550JV, too
Message-ID<rp8me-7cT-5@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Bobi Mihalca <bobbymihalca@touchtech.ro>

commit 83a9efb5b8170b7cffef4f62656656e1d8ad2ccd upstream.

Apply the new fixup that is used for ASUS N750JV to another similar
model, N500JV, too, for reducing the headphone noise.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=115181
Signed-off-by: Bobi Mihalca <bobbymihalca@touchtech.ro>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 sound/pci/hda/patch_realtek.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -6675,7 +6675,7 @@ static const struct snd_pci_quirk alc662
 	SND_PCI_QUIRK(0x1028, 0x0698, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
 	SND_PCI_QUIRK(0x1028, 0x069f, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
 	SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800),
-	SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_BASS_1A),
+	SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_ASUS_Nx50),
 	SND_PCI_QUIRK(0x1043, 0x13df, "Asus N550JX", ALC662_FIXUP_BASS_1A),
 	SND_PCI_QUIRK(0x1043, 0x129d, "Asus N750", ALC662_FIXUP_ASUS_Nx50),
 	SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ", ALC662_FIXUP_BASS_MODE4_CHMAP),

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


#1381207 — [PATCH 4.5 013/124] mm: fix invalid node in alloc_migrate_target()

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 013/124] mm: fix invalid node in alloc_migrate_target()
Message-ID<rp8me-7cT-11@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Xishi Qiu <qiuxishi@huawei.com>

commit 6f25a14a7053b69917e2ebea0d31dd444cd31fd5 upstream.

It is incorrect to use next_node to find a target node, it will return
MAX_NUMNODES or invalid node.  This will lead to crash in buddy system
allocation.

Fixes: c8721bbbdd36 ("mm: memory-hotplug: enable memory hotplug to handle hugepage")
Signed-off-by: Xishi Qiu <qiuxishi@huawei.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Cc: Joonsoo Kim <js1304@gmail.com>
Cc: David Rientjes <rientjes@google.com>
Cc: "Laura Abbott" <lauraa@codeaurora.org>
Cc: Hui Zhu <zhuhui@xiaomi.com>
Cc: Wang Xiaoqiang <wangxq10@lzu.edu.cn>
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/page_isolation.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- a/mm/page_isolation.c
+++ b/mm/page_isolation.c
@@ -289,11 +289,11 @@ struct page *alloc_migrate_target(struct
 	 * now as a simple work-around, we use the next node for destination.
 	 */
 	if (PageHuge(page)) {
-		nodemask_t src = nodemask_of_node(page_to_nid(page));
-		nodemask_t dst;
-		nodes_complement(dst, src);
+		int node = next_online_node(page_to_nid(page));
+		if (node == MAX_NUMNODES)
+			node = first_online_node;
 		return alloc_huge_page_node(page_hstate(compound_head(page)),
-					    next_node(page_to_nid(page), dst));
+					    node);
 	}
 
 	if (PageHighMem(page))

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


#1381208 — [PATCH 4.5 020/124] arm64: opcodes.h: Add arm big-endian config options before including arm header

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 020/124] arm64: opcodes.h: Add arm big-endian config options before including arm header
Message-ID<rp8me-7cT-15@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: James Morse <james.morse@arm.com>

commit a6002ec5a8c68e69706b2efd6db6d682d0ab672c upstream.

arm and arm64 use different config options to specify big endian. This
needs taking into account when including code/headers between the two
architectures.

A case in point is PAN, which uses the __instr_arm() macro to output
instructions. The macro comes from opcodes.h, which lives under arch/arm.
On a big-endian build the mismatched config options mean the instruction
isn't byte swapped correctly, resulting in undefined instruction exceptions
during boot:

| alternatives: patching kernel code
| kdevtmpfs[87]: undefined instruction: pc=ffffffc0004505b4
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| kdevtmpfs[87]: undefined instruction: pc=ffffffc00076231c
| Internal error: Oops - undefined instruction: 0 [#1] SMP
| Modules linked in:
| CPU: 0 PID: 87 Comm: kdevtmpfs Not tainted 4.1.16+ #5
| Hardware name: Hisilicon PhosphorHi1382 EVB (DT)
| task: ffffffc336591700 ti: ffffffc3365a4000 task.ti: ffffffc3365a4000
| PC is at dump_instr+0x68/0x100
| LR is at do_undefinstr+0x1d4/0x2a4
| pc : [<ffffffc00076231c>] lr : [<ffffffc0000811d4>] pstate: 604001c5
| sp : ffffffc3365a6450

Reported-by: Hanjun Guo <guohanjun@huawei.com>
Tested-by: Xuefeng Wang <wxf.wang@hisilicon.com>
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/arm64/include/asm/opcodes.h |    4 ++++
 1 file changed, 4 insertions(+)

--- a/arch/arm64/include/asm/opcodes.h
+++ b/arch/arm64/include/asm/opcodes.h
@@ -1 +1,5 @@
+#ifdef CONFIG_CPU_BIG_ENDIAN
+#define CONFIG_CPU_ENDIAN_BE8 CONFIG_CPU_BIG_ENDIAN
+#endif
+
 #include <../../arm/include/asm/opcodes.h>

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


#1381209 — [PATCH 4.5 010/124] ALSA: hda - Fix white noise on Asus N750JV headphone

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 010/124] ALSA: hda - Fix white noise on Asus N750JV headphone
Message-ID<rp8me-7cT-13@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Bobi Mihalca <bobbymihalca@touchtech.ro>

commit 9d4dc5840f93bcb002fa311693349deae7702bc5 upstream.

For reducing the noise from the headphone output on ASUS N750JV,
call the existing fixup, alc_fixup_auto_mute_via_amp(), additionally.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=115181
Signed-off-by: Bobi Mihalca <bobbymihalca@touchtech.ro>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 sound/pci/hda/patch_realtek.c |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -6406,6 +6406,7 @@ enum {
 	ALC668_FIXUP_AUTO_MUTE,
 	ALC668_FIXUP_DELL_DISABLE_AAMIX,
 	ALC668_FIXUP_DELL_XPS13,
+	ALC662_FIXUP_ASUS_Nx50,
 };
 
 static const struct hda_fixup alc662_fixups[] = {
@@ -6646,6 +6647,12 @@ static const struct hda_fixup alc662_fix
 		.type = HDA_FIXUP_FUNC,
 		.v.func = alc_fixup_bass_chmap,
 	},
+	[ALC662_FIXUP_ASUS_Nx50] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = alc_fixup_auto_mute_via_amp,
+		.chained = true,
+		.chain_id = ALC662_FIXUP_BASS_1A
+	},
 };
 
 static const struct snd_pci_quirk alc662_fixup_tbl[] = {
@@ -6670,7 +6677,7 @@ static const struct snd_pci_quirk alc662
 	SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800),
 	SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_BASS_1A),
 	SND_PCI_QUIRK(0x1043, 0x13df, "Asus N550JX", ALC662_FIXUP_BASS_1A),
-	SND_PCI_QUIRK(0x1043, 0x129d, "Asus N750", ALC662_FIXUP_BASS_1A),
+	SND_PCI_QUIRK(0x1043, 0x129d, "Asus N750", ALC662_FIXUP_ASUS_Nx50),
 	SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ", ALC662_FIXUP_BASS_MODE4_CHMAP),
 	SND_PCI_QUIRK(0x1043, 0x15a7, "ASUS UX51VZH", ALC662_FIXUP_BASS_16),
 	SND_PCI_QUIRK(0x1043, 0x1b73, "ASUS N55SF", ALC662_FIXUP_BASS_16),

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


#1381210 — [PATCH 4.5 015/124] s390/mm: handle PTE-mapped tail pages in fast gup

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 015/124] s390/mm: handle PTE-mapped tail pages in fast gup
Message-ID<rp8me-7cT-17@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Gerald Schaefer <gerald.schaefer@de.ibm.com>

commit fc897c95e91451271cd707ee0f71022b9b201ce9 upstream.

With the THP refcounting rework it is possible to see THP compound tail
pages mapped with PTEs during a THP split. This needs to be considered
when using page_cache_get_speculative(), which will always fail on tail
pages because ->_count is always zero. commit 7aef4172 "mm: handle
PTE-mapped tail pages in gerneric fast gup implementaiton" fixed it for
the generic fast gup code by using compound_head(page) instead of page,
but not for s390.

This patch is a 1:1 adaption of commit 7aef4172 for the s390 fast gup
code. Without this fix, gup will fall back to the slow path or fail
in the unlikely scenario that we hit a THP under splitting in-between
the page table split and the compound page split.

Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/s390/mm/gup.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

--- a/arch/s390/mm/gup.c
+++ b/arch/s390/mm/gup.c
@@ -20,9 +20,9 @@
 static inline int gup_pte_range(pmd_t *pmdp, pmd_t pmd, unsigned long addr,
 		unsigned long end, int write, struct page **pages, int *nr)
 {
+	struct page *head, *page;
 	unsigned long mask;
 	pte_t *ptep, pte;
-	struct page *page;
 
 	mask = (write ? _PAGE_PROTECT : 0) | _PAGE_INVALID | _PAGE_SPECIAL;
 
@@ -37,12 +37,14 @@ static inline int gup_pte_range(pmd_t *p
 			return 0;
 		VM_BUG_ON(!pfn_valid(pte_pfn(pte)));
 		page = pte_page(pte);
-		if (!page_cache_get_speculative(page))
+		head = compound_head(page);
+		if (!page_cache_get_speculative(head))
 			return 0;
 		if (unlikely(pte_val(pte) != pte_val(*ptep))) {
-			put_page(page);
+			put_page(head);
 			return 0;
 		}
+		VM_BUG_ON_PAGE(compound_head(page) != head, page);
 		pages[*nr] = page;
 		(*nr)++;
 

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


#1381213 — [PATCH 4.5 018/124] powerpc/process: Fix altivec SPR not being saved

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 018/124] powerpc/process: Fix altivec SPR not being saved
Message-ID<rp8mf-7cT-33@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Oliver O'Halloran <oohall@gmail.com>

commit 01d7c2a2de47890934faba91a71d183795e4348d upstream.

In save_sprs() in process.c contains the following test:

	if (cpu_has_feature(cpu_has_feature(CPU_FTR_ALTIVEC)))
		t->vrsave = mfspr(SPRN_VRSAVE);

CPU feature with the mask 0x1 is CPU_FTR_COHERENT_ICACHE so the test
is equivilent to:

	if (cpu_has_feature(CPU_FTR_ALTIVEC) &&
		cpu_has_feature(CPU_FTR_COHERENT_ICACHE))

On CPUs without support for both (i.e G5) this results in vrsave not
being saved between context switches. The vector register save/restore
code doesn't use VRSAVE to determine which registers to save/restore,
but the value of VRSAVE is used to determine if altivec is being used
in several code paths.

Fixes: 152d523e6307 ("powerpc: Create context switch helpers save_sprs() and restore_sprs()")
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/powerpc/kernel/process.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
@@ -854,7 +854,7 @@ void restore_tm_state(struct pt_regs *re
 static inline void save_sprs(struct thread_struct *t)
 {
 #ifdef CONFIG_ALTIVEC
-	if (cpu_has_feature(cpu_has_feature(CPU_FTR_ALTIVEC)))
+	if (cpu_has_feature(CPU_FTR_ALTIVEC))
 		t->vrsave = mfspr(SPRN_VRSAVE);
 #endif
 #ifdef CONFIG_PPC_BOOK3S_64

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


#1381216 — [PATCH 4.5 003/124] parisc: Fix SIGSYS signals in compat case

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 003/124] parisc: Fix SIGSYS signals in compat case
Message-ID<rp8mf-7cT-43@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Helge Deller <deller@gmx.de>

commit 4f4acc9472e54ce702f1d85fc9e6d57767dec91f upstream.

Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/parisc/include/asm/compat.h |    7 +++++++
 arch/parisc/kernel/signal32.c    |    5 +++++
 2 files changed, 12 insertions(+)

--- a/arch/parisc/include/asm/compat.h
+++ b/arch/parisc/include/asm/compat.h
@@ -183,6 +183,13 @@ typedef struct compat_siginfo {
 			int _band;      /* POLL_IN, POLL_OUT, POLL_MSG */
 			int _fd;
 		} _sigpoll;
+
+		/* SIGSYS */
+		struct {
+			compat_uptr_t _call_addr; /* calling user insn */
+			int _syscall;	/* triggering system call number */
+			compat_uint_t _arch;	/* AUDIT_ARCH_* of syscall */
+		} _sigsys;
 	} _sifields;
 } compat_siginfo_t;
 
--- a/arch/parisc/kernel/signal32.c
+++ b/arch/parisc/kernel/signal32.c
@@ -371,6 +371,11 @@ copy_siginfo_to_user32 (compat_siginfo_t
 			val = (compat_int_t)from->si_int;
 			err |= __put_user(val, &to->si_int);
 			break;
+		case __SI_SYS >> 16:
+			err |= __put_user(ptr_to_compat(from->si_call_addr), &to->si_call_addr);
+			err |= __put_user(from->si_syscall, &to->si_syscall);
+			err |= __put_user(from->si_arch, &to->si_arch);
+			break;
 		}
 	}
 	return err;

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


#1381219 — [PATCH 4.5 006/124] parisc: Fix kernel crash with reversed copy_from_user()

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 006/124] parisc: Fix kernel crash with reversed copy_from_user()
Message-ID<rp8mf-7cT-47@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Helge Deller <deller@gmx.de>

commit ef72f3110d8b19f4c098a0bff7ed7d11945e70c6 upstream.

The kernel module testcase (lib/test_user_copy.c) exhibited a kernel
crash on parisc if the parameters for copy_from_user were reversed
("illegal reversed copy_to_user" testcase).

Fix this potential crash by checking the fault handler if the faulting
address is in the exception table.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/parisc/kernel/traps.c |    3 +++
 1 file changed, 3 insertions(+)

--- a/arch/parisc/kernel/traps.c
+++ b/arch/parisc/kernel/traps.c
@@ -798,6 +798,9 @@ void notrace handle_interruption(int cod
 
 	    if (fault_space == 0 && !faulthandler_disabled())
 	    {
+		/* Clean up and return if in exception table. */
+		if (fixup_exception(regs))
+			return;
 		pdc_chassis_send_status(PDC_CHASSIS_DIRECT_PANIC);
 		parisc_terminate("Kernel Fault", regs, code, fault_address);
 	    }

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


#1381221 — [PATCH 4.5 019/124] compiler-gcc: disable -ftracer for __noclone functions

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 019/124] compiler-gcc: disable -ftracer for __noclone functions
Message-ID<rp8mf-7cT-35@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

From: Paolo Bonzini <pbonzini@redhat.com>

commit 95272c29378ee7dc15f43fa2758cb28a5913a06d upstream.

-ftracer can duplicate asm blocks causing compilation to fail in
noclone functions.  For example, KVM declares a global variable
in an asm like

    asm("2: ... \n
         .pushsection data \n
         .global vmx_return \n
         vmx_return: .long 2b");

and -ftracer causes a double declaration.

Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Michal Marek <mmarek@suse.cz>
Cc: kvm@vger.kernel.org
Reported-by: Linda Walsh <lkml@tlinx.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 include/linux/compiler-gcc.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/include/linux/compiler-gcc.h
+++ b/include/linux/compiler-gcc.h
@@ -199,7 +199,7 @@
 #define unreachable() __builtin_unreachable()
 
 /* Mark a function definition as prohibited from being cloned. */
-#define __noclone	__attribute__((__noclone__))
+#define __noclone	__attribute__((__noclone__, __optimize__("no-tracer")))
 
 #endif /* GCC_VERSION >= 40500 */
 

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


#1381227 — [PATCH 4.5 016/124] libnvdimm: fix smart data retrieval

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-18 05:50 +0200
Subject[PATCH 4.5 016/124] libnvdimm: fix smart data retrieval
Message-ID<rp8mg-7cT-57@gated-at.bofh.it>
In reply to#1381185
4.5-stable review patch.  If anyone has any objections, please let me know.

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

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

commit 211291126698c8f047617565b2e2e7f822f86354 upstream.

It appears that smart data retrieval has been broken the since the
initial implementation.  Fix the payload size to be 128-bytes per the
specification.

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

---
 drivers/nvdimm/bus.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/nvdimm/bus.c
+++ b/drivers/nvdimm/bus.c
@@ -335,7 +335,7 @@ static const struct nd_cmd_desc __nd_cmd
 	[ND_CMD_IMPLEMENTED] = { },
 	[ND_CMD_SMART] = {
 		.out_num = 2,
-		.out_sizes = { 4, 8, },
+		.out_sizes = { 4, 128, },
 	},
 	[ND_CMD_SMART_THRESHOLD] = {
 		.out_num = 2,

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


Page 1 of 2  [1] 2  Next page →

Back to top | Article view | linux.kernel


csiph-web