Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1381185 > unrolled thread
| Started by | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| First post | 2016-04-18 05:40 +0200 |
| Last post | 2016-04-19 08:00 +0200 |
| Articles | 20 on this page of 25 — 3 participants |
Back to article view | Back to linux.kernel
[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 →
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-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