Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1233453 > unrolled thread
| Started by | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| First post | 2015-09-26 23:50 +0200 |
| Last post | 2015-09-29 03:00 +0200 |
| Articles | 20 on this page of 52 — 6 participants |
Back to article view | Back to linux.kernel
[PATCH 4.1 000/159] 4.1.9-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 087/159] md/raid10: always set reshape_safe when initializing reshape_position. Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 090/159] iommu/io-pgtable-arm: Unmap and free table when overwriting with block Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 042/159] powerpc/mm: Recompute hash value after a failed update Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 040/159] crypto: vmx - Adding enable_kernel_vsx() to access VSX instructions Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 044/159] Add radeon suspend/resume quirk for HP Compaq dc5750. Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 078/159] parisc: Filter out spurious interrupts in PA-RISC irq handler Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 037/159] powerpc/mm: Fix pte_pagesize_index() crash on 4K w/64K hash Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 062/159] NFS41/flexfiles: update inode after write finishes Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 038/159] powerpc/rtas: Introduce rtas_get_sensor_fast() for IRQ handlers Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 021/159] arm64: head.S: initialise mdcr_el2 in el2_setup Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 015/159] Revert "ext4: remove block_device_ejected" Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 066/159] NFSv4.1: Fix a protocol issue with CLOSE stateids Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 031/159] ALSA: hda - Add some FIXUP quirks for white noise on Dell laptop. Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 029/159] ALSA: hda - Enable headphone jack detect on old Fujitsu laptops Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 065/159] NFSv4.1/flexfiles: Fix a protocol error in layoutreturn Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 020/159] arm64: compat: fix vfp save/restore across signal handlers in big-endian Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 064/159] NFS41/flexfiles: zero out DS write wcc Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 039/159] powerpc: Uncomment and make enable_kernel_vsx() routine available Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 067/159] Revert "NFSv4: Remove incorrect check in can_open_delegated()" Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 035/159] powerpc/eeh: Probe after unbalanced kref check Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 030/159] ALSA: hda - Use ALC880_FIXUP_FUJITSU for FSC Amilo M1437 Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 089/159] iommu/fsl: Really fix init section(s) content Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 041/159] powerpc/boot: Specify ABI v2 when building an LE boot wrapper Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 012/159] cxl: Remove racy attempt to force EEH invocation in reset Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 063/159] NFSv4: Force a post-op attribute update when holding a delegation Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 036/159] powerpc/eeh: Fix fenced PHB caused by eeh_slot_error_detail() Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-26 23:50 +0200
[PATCH 4.1 011/159] mac80211: enable assoc check for mesh interfaces Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 005/159] rtlwifi: rtl8192cu: Add new device ID Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 013/159] cxl: Fix unbalanced pci_dev_get in cxl_probe Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 008/159] tg3: Fix temperature reporting Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 010/159] MIPS: math-emu: Emulate missing BC1{EQ,NE}Z instructions Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 007/159] igb: Fix oops caused by missing queue pairing Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 001/159] NFC: st21nfca: fix use of uninitialized variables in error path Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 018/159] of/fdt: make memblock maximum physical address arch configurable Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 014/159] ext4: dont manipulate recovery flag when freezing no-journal fs Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 006/159] rtlwifi: rtl8821ae: Fix an expression that is always false Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 004/159] unshare: Unsharing a thread does not require unsharing a vm Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 017/159] arm64: flush FP/SIMD state correctly after execve() Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 003/159] blk-mq: fix buffer overflow when reading sysfs file of pending Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
[PATCH 4.1 002/159] nfc: nci: hci: Add check on skb nci_hci_send_cmd parameter Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 00:00 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review (build error) Guenter Roeck <linux@roeck-us.net> - 2015-09-27 02:40 +0200
[PATCH] cxl: Don't remove AFUs/vPHBs in cxl_reset Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-27 08:50 +0200
Re: [PATCH] cxl: Don't remove AFUs/vPHBs in cxl_reset Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 17:40 +0200
Re: [PATCH] cxl: Don't remove AFUs/vPHBs in cxl_reset Daniel Axtens <dja@axtens.net> - 2015-09-29 07:30 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review Guenter Roeck <linux@roeck-us.net> - 2015-09-27 21:20 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-27 21:40 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-28 07:10 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-28 16:30 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review Shuah Khan <shuahkh@osg.samsung.com> - 2015-09-28 19:40 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-28 23:40 +0200
Re: [PATCH 4.1 000/159] 4.1.9-stable review "Andre Tomt (LKML)" <lkml@tomt.net> - 2015-09-29 03:00 +0200
Page 1 of 3 [1] 2 3 Next page →
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 000/159] 4.1.9-stable review |
| Message-ID | <qd4Tf-384-5@gated-at.bofh.it> |
This is the start of the stable review cycle for the 4.1.9 release.
There are 159 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 Mon Sep 28 20:51:39 UTC 2015.
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.1.9-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.1.9-rc1
Andy Whitcroft <apw@canonical.com>
ipv4: off-by-one in continuation handling in /proc/net/route
Florian Fainelli <f.fainelli@gmail.com>
net: dsa: Do not override PHY interface if already configured
Eric Dumazet <edumazet@google.com>
inet: fix races with reqsk timers
Eric Dumazet <edumazet@google.com>
inet: fix possible request socket leak
Daniel Borkmann <daniel@iogearbox.net>
netlink: make sure -EBUSY won't escape from netlink_insert
Ivan Vecera <ivecera@redhat.com>
bna: fix interrupts storm caused by erroneous packets
Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
bridge: netlink: account for the IFLA_BRPORT_PROXYARP_WIFI attribute size and policy
Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
bridge: netlink: account for the IFLA_BRPORT_PROXYARP attribute size and policy
Eric Dumazet <edumazet@google.com>
udp: fix dst races with multicast early demux
Dan Carpenter <dan.carpenter@oracle.com>
rds: fix an integer overflow test in rds_info_getsockopt()
Ido Schimmel <idosch@mellanox.com>
rocker: free netdevice during netdevice removal
Daniel Borkmann <daniel@iogearbox.net>
net: sched: fix refcount imbalance in actions
Daniel Borkmann <daniel@iogearbox.net>
act_bpf: fix memory leaks when replacing bpf programs
Alexander Drozdov <al.drozdov@gmail.com>
packet: tpacket_snd(): fix signed/unsigned comparison
Lars Westerhoff <lars.westerhoff@newtec.eu>
packet: missing dev_put() in packet_do_bind()
Alexander Duyck <alexander.h.duyck@redhat.com>
fib_trie: Drop unnecessary calls to leaf_pull_suffix
Jack Morgenstein <jackm@dev.mellanox.co.il>
net/mlx4_core: Fix wrong index in propagating port change event to VFs
Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
bridge: netlink: fix slave_changelink/br_setport race conditions
Michael S. Tsirkin <mst@redhat.com>
virtio_net: don't require ANY_LAYOUT with VERSION_1
Florian Westphal <fw@strlen.de>
netlink: don't hold mutex in rcu callback when releasing mmapd ring
Edward Hyunkoo Jee <edjee@google.com>
inet: frags: fix defragmented packet's IP header for af_packet
Daniel Borkmann <daniel@iogearbox.net>
sched: cls_flow: fix panic on filter replace
Daniel Borkmann <daniel@iogearbox.net>
sched: cls_bpf: fix panic on filter replace
dingtianhong <dingtianhong@huawei.com>
bonding: correct the MAC address for "follow" fail_over_mac policy
Herbert Xu <herbert@gondor.apana.org.au>
Revert "sit: Add gro callbacks to sit_offload"
Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
bonding: fix destruction of bond with devices different from arphrd_ether
Eric Dumazet <edumazet@google.com>
ipv6: lock socket in ip6_datagram_connect()
Tilman Schmidt <tilman@imap.cc>
isdn/gigaset: reset tty->receive_room when attaching ser_gigaset
WANG Cong <xiyou.wangcong@gmail.com>
fq_codel: fix a use-after-free
Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
bridge: mdb: fix double add notification
Herbert Xu <herbert@gondor.apana.org.au>
net: Fix skb_set_peeked use-after-free bug
Herbert Xu <herbert@gondor.apana.org.au>
net: Fix skb csum races when peeking
Herbert Xu <herbert@gondor.apana.org.au>
net: Clone skb before setting peeked flag
Dan Carpenter <dan.carpenter@oracle.com>
net/xen-netback: off by one in BUG_ON() condition
Julian Anastasov <ja@ssi.bg>
net: call rcu_read_lock early in process_backlog
Julian Anastasov <ja@ssi.bg>
net: do not process device backlog during unregistration
Eric Dumazet <edumazet@google.com>
bridge: fix potential crash in __netdev_pick_tx()
Oleg Nesterov <oleg@redhat.com>
net: pktgen: fix race between pktgen_thread_worker() and kthread_stop()
Nikolay Aleksandrov <razor@blackwall.org>
bridge: mdb: zero out the local br_ip variable before use
Stephen Smalley <sds@tycho.nsa.gov>
net/tipc: initialize security state for new connection socket
Timo Teräs <timo.teras@iki.fi>
ip_tunnel: fix ipv4 pmtu check to honor inner ip header df
Daniel Borkmann <daniel@iogearbox.net>
rtnetlink: verify IFLA_VF_INFO attributes before passing them to driver
Nicolas Dichtel <nicolas.dichtel@6wind.com>
Revert "dev: set iflink to 0 for virtual interfaces"
Eric Dumazet <edumazet@google.com>
net: graceful exit from netif_alloc_netdev_queues()
Phil Sutter <phil@nwl.cc>
rhashtable: fix for resize events during table walk
Angga <Hermin.Anggawijaya@alliedtelesis.co.nz>
ipv6: Make MLD packets to only be processed locally
Jan Kara <jack@suse.com>
jbd2: avoid infinite loop when destroying aborted journal
Yinghai Lu <yinghai@kernel.org>
lib/decompressors: use real out buf size for gunzip with kernel
Hin-Tak Leung <htl10@users.sourceforge.net>
hfs,hfsplus: cache pages correctly between bnode_create and bnode_free
Heiko Stübner <heiko@sntech.de>
net: stmmac: dwmac-rk: Fix clk rate when provided by soc
Alexey Brodkin <Alexey.Brodkin@synopsys.com>
stmmac: troubleshoot unexpected bits in des0 & des1
Alexey Brodkin <Alexey.Brodkin@synopsys.com>
stmmac: fix check for phydev being open
Ariel Nahum <arieln@mellanox.com>
IB/mlx4: Fix incorrect cq flushing in error state
Noa Osherovich <noaos@mellanox.com>
IB/mlx4: Use correct SL on AH query under RoCE
Jack Morgenstein <jackm@dev.mellanox.co.il>
IB/mlx4: Forbid using sysfs to change RoCE pkeys
Jack Morgenstein <jackm@dev.mellanox.co.il>
IB/mlx4: Fix potential deadlock when sending mad to wire
Haggai Eran <haggaie@mellanox.com>
IB/mlx5: avoid destroying a NULL mr in reg_user_mr error flow
Sagi Grimberg <sagig@mellanox.com>
IB/iser: Fix possible bogus DMA unmapping
Sagi Grimberg <sagig@mellanox.com>
IB/iser: Fix missing return status check in iser_send_data_out
Yishai Hadas <yishaih@mellanox.com>
IB/uverbs: Fix race between ib_uverbs_open and remove_one
Christoph Hellwig <hch@lst.de>
IB/uverbs: reject invalid or unknown opcodes
Mike Marciniszyn <mike.marciniszyn@intel.com>
IB/qib: Change lkey table allocation to support more MRs
Bart Van Assche <bart.vanassche@sandisk.com>
IB/srp: Stop the scsi_eh_<n> and scsi_tmf_<n> threads if login fails
Bart Van Assche <bart.vanassche@sandisk.com>
IB/srp: Handle partial connection success correctly
Hans de Goede <hdegoede@redhat.com>
ideapad-laptop: Add Lenovo Yoga 3 14 to no_hw_rfkill dmi list
Hin-Tak Leung <htl10@users.sourceforge.net>
hfs: fix B-tree corruption after insertion at position 0
Tyler Hicks <tyhicks@canonical.com>
eCryptfs: Invalidate dcache entries when lower i_nlink is zero
Joerg Roedel <jroedel@suse.de>
iommu/vt-d: Really use upper context table when necessary
Thierry Reding <treding@nvidia.com>
iommu/tegra-smmu: Parameterize number of TLB lines
Will Deacon <will.deacon@arm.com>
iommu/io-pgtable-arm: Unmap and free table when overwriting with block
Emil Medve <Emilian.Medve@Freescale.com>
iommu/fsl: Really fix init section(s) content
NeilBrown <neilb@suse.com>
md: flush ->event_work before stopping array.
NeilBrown <neilb@suse.com>
md/raid10: always set reshape_safe when initializing reshape_position.
NeilBrown <neilb@suse.com>
md/raid5: don't let shrink_slab shrink too far.
NeilBrown <neilb@suse.com>
md/raid5: avoid races when changing cache size.
Jialing Fu <jlfu@marvell.com>
mmc: core: fix race condition in mmc_wait_data_done
Jisheng Zhang <jszhang@marvell.com>
mmc: sdhci: also get preset value and driver type for MMC_DDR52
Adam Lee <adam.lee@canonical.com>
mmc: sdhci-pci: set the clear transfer mode register quirk for O2Micro
Jann Horn <jann@thejh.net>
fs: Don't dump core if the corefile would become world-readable.
Jann Horn <jann@thejh.net>
fs: if a coredump already exists, unlink and recreate with O_EXCL
Jaewon Kim <jaewon31.kim@samsung.com>
vmscan: fix increasing nr_isolated incurred by putback unevictable pages
Helge Deller <deller@gmx.de>
parisc: Filter out spurious interrupts in PA-RISC irq handler
John David Anglin <dave.anglin@bell.net>
parisc: Use double word condition in 64bit CAS operation
Helge Deller <deller@gmx.de>
PCI,parisc: Enable 64-bit bus addresses on PA-RISC
Mitja Spes <mitja@lxnav.com>
rtc: abx80x: fix RTC write bit
Joonyoung Shim <jy0922.shim@samsung.com>
rtc: s5m: fix to update ctrl register
Joonyoung Shim <jy0922.shim@samsung.com>
rtc: s3c: fix disabled clocks for alarm
Trond Myklebust <trond.myklebust@primarydata.com>
SUNRPC: Lock the transport layer on shutdown
Trond Myklebust <trond.myklebust@primarydata.com>
SUNRPC: Ensure that we wait for connections to complete before retrying
Trond Myklebust <trond.myklebust@primarydata.com>
SUNRPC: xs_reset_transport must mark the connection as disconnected
Trond Myklebust <trond.myklebust@primarydata.com>
SUNRPC: Fix a thinko in xs_connect()
Pratyush Anand <panand@redhat.com>
net: sunrpc: fix tracepoint Warning: unknown op '->'
Trond Myklebust <trond.myklebust@primarydata.com>
Revert "NFSv4: Remove incorrect check in can_open_delegated()"
Trond Myklebust <trond.myklebust@primarydata.com>
NFSv4.1: Fix a protocol issue with CLOSE stateids
Trond Myklebust <trond.myklebust@primarydata.com>
NFSv4.1/flexfiles: Fix a protocol error in layoutreturn
Peng Tao <tao.peng@primarydata.com>
NFS41/flexfiles: zero out DS write wcc
Trond Myklebust <trond.myklebust@primarydata.com>
NFSv4: Force a post-op attribute update when holding a delegation
Peng Tao <tao.peng@primarydata.com>
NFS41/flexfiles: update inode after write finishes
Trond Myklebust <trond.myklebust@primarydata.com>
NFS: nfs_set_pgio_error sometimes misses errors
Kinglong Mee <kinglongmee@gmail.com>
NFS: Fix a NULL pointer dereference of migration recovery ops for v4.2 client
Trond Myklebust <trond.myklebust@primarydata.com>
NFSv4.1/pNFS: Fix borken function _same_data_server_addrs_locked()
Trond Myklebust <trond.myklebust@primarydata.com>
NFS: Don't let the ctime override attribute barriers.
NeilBrown <neilb@suse.com>
NFSv4: don't set SETATTR for O_RDONLY|O_EXCL
Jeff Layton <jlayton@poochiereds.net>
nfsd: ensure that delegation stateid hash references are only put once
Jeff Layton <jlayton@poochiereds.net>
nfsd: ensure that the ol stateid hash reference is only put once
Kinglong Mee <kinglongmee@gmail.com>
nfsd: Fix an FS_LAYOUT_TYPES/LAYOUT_TYPES encode bug
Trond Myklebust <trond.myklebust@primarydata.com>
NFSv4/pnfs: Ensure we don't miss a file extension
Filipe Manana <fdmanana@suse.com>
Btrfs: check if previous transaction aborted to avoid fs corruption
Benoit Parrot <bparrot@ti.com>
media: am437x-vpfe: Fix a race condition during release
Benoit Parrot <bparrot@ti.com>
media: am437x-vpfe: Requested frame size and fmt overwritten by current sensor setting
Sakari Ailus <sakari.ailus@iki.fi>
v4l: omap3isp: Fix sub-device power management code
David Härdeman <david@hardeman.nu>
rc-core: fix remove uevent generation
Michal Hocko <mhocko@suse.com>
mm: make page pfmemalloc check more robust
Minfei Huang <mnfhuang@gmail.com>
x86/mm: Initialize pmd_idx in page_table_range_init_count()
Yinghai Lu <yinghai@kernel.org>
mm: check if section present during memory block registering
Jeffery Miller <jmiller@neverware.com>
Add radeon suspend/resume quirk for HP Compaq dc5750.
Jann Horn <jann@thejh.net>
CIFS: fix type confusion in copy offload ioctl
Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
powerpc/mm: Recompute hash value after a failed update
Benjamin Herrenschmidt <benh@kernel.crashing.org>
powerpc/boot: Specify ABI v2 when building an LE boot wrapper
Leonidas Da Silva Barbosa <leosilva@linux.vnet.ibm.com>
crypto: vmx - Adding enable_kernel_vsx() to access VSX instructions
Leonidas Da Silva Barbosa <leosilva@linux.vnet.ibm.com>
powerpc: Uncomment and make enable_kernel_vsx() routine available
Thomas Huth <thuth@redhat.com>
powerpc/rtas: Introduce rtas_get_sensor_fast() for IRQ handlers
Michael Ellerman <mpe@ellerman.id.au>
powerpc/mm: Fix pte_pagesize_index() crash on 4K w/64K hash
Gavin Shan <gwshan@linux.vnet.ibm.com>
powerpc/eeh: Fix fenced PHB caused by eeh_slot_error_detail()
Daniel Axtens <dja@axtens.net>
powerpc/eeh: Probe after unbalanced kref check
Gavin Shan <gwshan@linux.vnet.ibm.com>
powerpc/pseries: Fix corrupted pdn list
David Dueck <davidcdueck@googlemail.com>
pinctrl: at91: fix null pointer dereference
Niranjan Sivakumar <ns253@cornell.edu>
ALSA: hda - Fix white noise on Dell M3800
Woodrow Shen <woodrow.shen@canonical.com>
ALSA: hda - Add some FIXUP quirks for white noise on Dell laptop.
Takashi Iwai <tiwai@suse.de>
ALSA: hda - Use ALC880_FIXUP_FUJITSU for FSC Amilo M1437
Takashi Iwai <tiwai@suse.de>
ALSA: hda - Enable headphone jack detect on old Fujitsu laptops
Yao-Wen Mao <yaowen@google.com>
ALSA: usb-audio: correct the value cache check.
Takashi Iwai <tiwai@suse.de>
Input: evdev - do not report errors form flush()
Dmitry Torokhov <dmitry.torokhov@gmail.com>
Input: synaptics - fix handling of disabling gesture mode
Marc Zyngier <marc.zyngier@arm.com>
arm64: KVM: Disable virtual timer even if the guest is not using it
Will Deacon <will.deacon@arm.com>
KVM: arm64: add workaround for Cortex-A57 erratum #852523
Pavel Fedin <p.fedin@samsung.com>
arm/arm64: KVM: vgic: Check for !irqchip_in_kernel() when mapping resources
Will Deacon <will.deacon@arm.com>
arm64: errata: add module build workaround for erratum #843419
Will Deacon <will.deacon@arm.com>
arm64: head.S: initialise mdcr_el2 in el2_setup
Will Deacon <will.deacon@arm.com>
arm64: compat: fix vfp save/restore across signal handlers in big-endian
Ard Biesheuvel <ard.biesheuvel@linaro.org>
arm64: set MAX_MEMBLOCK_ADDR according to linear region size
Ard Biesheuvel <ard.biesheuvel@linaro.org>
of/fdt: make memblock maximum physical address arch configurable
Ard Biesheuvel <ard.biesheuvel@linaro.org>
arm64: flush FP/SIMD state correctly after execve()
Jeff Vander Stoep <jeffv@google.com>
arm64: kconfig: Move LIST_POISON to a safe value
Theodore Ts'o <tytso@mit.edu>
Revert "ext4: remove block_device_ejected"
Eric Sandeen <sandeen@redhat.com>
ext4: don't manipulate recovery flag when freezing no-journal fs
Daniel Axtens <dja@axtens.net>
cxl: Fix unbalanced pci_dev_get in cxl_probe
Daniel Axtens <dja@axtens.net>
cxl: Remove racy attempt to force EEH invocation in reset
Bob Copeland <me@bobcopeland.com>
mac80211: enable assoc check for mesh interfaces
Markos Chandras <markos.chandras@imgtec.com>
MIPS: math-emu: Emulate missing BC1{EQ,NE}Z instructions
Markos Chandras <markos.chandras@imgtec.com>
MIPS: math-emu: Allow m{f,t}hc emulation on MIPS R6
Jean Delvare <jdelvare@suse.de>
tg3: Fix temperature reporting
Shota Suzuki <suzuki_shota_t3@lab.ntt.co.jp>
igb: Fix oops caused by missing queue pairing
Larry Finger <Larry.Finger@lwfinger.net>
rtlwifi: rtl8821ae: Fix an expression that is always false
Adrien Schildknecht <adrien+dev@schischi.me>
rtlwifi: rtl8192cu: Add new device ID
Eric W. Biederman <ebiederm@xmission.com>
unshare: Unsharing a thread does not require unsharing a vm
Ming Lei <ming.lei@canonical.com>
blk-mq: fix buffer overflow when reading sysfs file of 'pending'
Christophe Ricard <christophe.ricard@gmail.com>
nfc: nci: hci: Add check on skb nci_hci_send_cmd parameter
Christophe Ricard <christophe.ricard@gmail.com>
NFC: st21nfca: fix use of uninitialized variables in error path
-------------
Diffstat:
Makefile | 4 +-
arch/arm/boot/compressed/decompress.c | 2 +-
arch/arm/kvm/arm.c | 2 +-
arch/arm64/Kconfig | 20 +++
arch/arm64/Makefile | 4 +
arch/arm64/include/asm/memory.h | 8 +
arch/arm64/kernel/fpsimd.c | 1 +
arch/arm64/kernel/head.S | 5 +
arch/arm64/kernel/module.c | 2 +
arch/arm64/kernel/signal32.c | 47 ++++--
arch/arm64/kvm/hyp.S | 9 +-
arch/m32r/boot/compressed/misc.c | 3 +-
arch/mips/boot/compressed/decompress.c | 4 +-
arch/mips/math-emu/cp1emu.c | 24 ++-
arch/parisc/kernel/irq.c | 8 +-
arch/parisc/kernel/syscall.S | 2 +-
arch/powerpc/boot/Makefile | 3 +
arch/powerpc/include/asm/pgtable-ppc64.h | 14 +-
arch/powerpc/include/asm/rtas.h | 1 +
arch/powerpc/include/asm/switch_to.h | 1 +
arch/powerpc/kernel/eeh.c | 27 +++-
arch/powerpc/kernel/process.c | 3 -
arch/powerpc/kernel/rtas.c | 17 ++
arch/powerpc/mm/hugepage-hash64.c | 3 +-
arch/powerpc/platforms/pseries/ras.c | 3 +-
arch/powerpc/platforms/pseries/setup.c | 5 +
arch/s390/boot/compressed/misc.c | 2 +-
arch/sh/boot/compressed/misc.c | 2 +-
arch/unicore32/boot/compressed/misc.c | 4 +-
arch/x86/boot/compressed/misc.c | 3 +-
arch/x86/mm/init_32.c | 1 +
block/blk-mq-sysfs.c | 25 ++-
drivers/base/node.c | 10 ++
drivers/crypto/vmx/aes.c | 3 +
drivers/crypto/vmx/aes_cbc.c | 3 +
drivers/crypto/vmx/aes_ctr.c | 3 +
drivers/crypto/vmx/ghash.c | 4 +
drivers/gpu/drm/radeon/radeon_combios.c | 8 +
drivers/infiniband/core/uverbs.h | 3 +-
drivers/infiniband/core/uverbs_cmd.c | 10 +-
drivers/infiniband/core/uverbs_main.c | 43 +++--
drivers/infiniband/hw/mlx4/ah.c | 6 +-
drivers/infiniband/hw/mlx4/cq.c | 2 +-
drivers/infiniband/hw/mlx4/mcg.c | 7 +-
drivers/infiniband/hw/mlx4/sysfs.c | 5 +-
drivers/infiniband/hw/mlx5/mr.c | 12 --
drivers/infiniband/hw/qib/qib_keys.c | 4 +
drivers/infiniband/hw/qib/qib_verbs.c | 14 +-
drivers/infiniband/hw/qib/qib_verbs.h | 2 +
drivers/infiniband/ulp/iser/iscsi_iser.c | 12 +-
drivers/infiniband/ulp/iser/iscsi_iser.h | 2 +
drivers/infiniband/ulp/iser/iser_initiator.c | 8 +-
drivers/infiniband/ulp/srp/ib_srp.c | 12 +-
drivers/input/evdev.c | 13 +-
drivers/input/mouse/synaptics.c | 12 +-
drivers/iommu/fsl_pamu.c | 26 +--
drivers/iommu/intel-iommu.c | 2 +-
drivers/iommu/io-pgtable-arm.c | 17 +-
drivers/iommu/tegra-smmu.c | 9 +-
drivers/isdn/gigaset/ser-gigaset.c | 11 +-
drivers/md/md.c | 2 +
drivers/md/raid10.c | 5 +-
drivers/md/raid5.c | 34 +++-
drivers/md/raid5.h | 3 +-
drivers/media/platform/am437x/am437x-vpfe.c | 16 +-
drivers/media/platform/omap3isp/isp.c | 4 +-
drivers/media/rc/rc-main.c | 3 -
drivers/memory/tegra/tegra114.c | 1 +
drivers/memory/tegra/tegra124.c | 1 +
drivers/memory/tegra/tegra30.c | 1 +
drivers/misc/cxl/pci.c | 18 ---
drivers/mmc/core/core.c | 6 +-
drivers/mmc/host/sdhci-pci.c | 1 +
drivers/mmc/host/sdhci.c | 4 +-
drivers/net/bonding/bond_main.c | 21 +++
drivers/net/ethernet/broadcom/tg3.c | 2 +-
drivers/net/ethernet/brocade/bna/bnad.c | 2 +-
drivers/net/ethernet/intel/fm10k/fm10k_main.c | 2 +-
drivers/net/ethernet/intel/igb/igb.h | 1 +
drivers/net/ethernet/intel/igb/igb_ethtool.c | 5 +-
drivers/net/ethernet/intel/igb/igb_main.c | 18 ++-
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 2 +-
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 2 +-
drivers/net/ethernet/mellanox/mlx4/eq.c | 4 +-
drivers/net/ethernet/rocker/rocker.c | 1 +
drivers/net/ethernet/stmicro/stmmac/descs.h | 2 +
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 3 +-
drivers/net/ethernet/stmicro/stmmac/enh_desc.c | 3 +-
drivers/net/ethernet/stmicro/stmmac/norm_desc.c | 3 +-
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 49 +++---
drivers/net/virtio_net.c | 3 +-
drivers/net/wireless/rtlwifi/rtl8192cu/sw.c | 1 +
drivers/net/wireless/rtlwifi/rtl8821ae/hw.c | 2 +-
drivers/net/wireless/rtlwifi/rtl8821ae/reg.h | 1 +
drivers/net/xen-netback/netback.c | 6 +-
drivers/nfc/st21nfca/st21nfca.c | 11 +-
drivers/of/fdt.c | 12 +-
drivers/parisc/lba_pci.c | 7 +-
drivers/pci/Kconfig | 2 +-
drivers/pinctrl/pinctrl-at91.c | 15 ++
drivers/platform/x86/ideapad-laptop.c | 7 +
drivers/rtc/rtc-abx80x.c | 2 +-
drivers/rtc/rtc-s3c.c | 24 ++-
drivers/rtc/rtc-s5m.c | 10 ++
fs/btrfs/transaction.c | 3 +
fs/cifs/ioctl.c | 6 +
fs/coredump.c | 46 +++++-
fs/ecryptfs/dentry.c | 16 +-
fs/ext4/super.c | 30 +++-
fs/hfs/bnode.c | 9 +-
fs/hfs/brec.c | 20 +--
fs/hfsplus/bnode.c | 3 -
fs/jbd2/checkpoint.c | 39 ++++-
fs/jbd2/commit.c | 2 +-
fs/jbd2/journal.c | 11 +-
fs/nfs/flexfilelayout/flexfilelayout.c | 5 +
fs/nfs/flexfilelayout/flexfilelayoutdev.c | 7 +-
fs/nfs/inode.c | 15 +-
fs/nfs/nfs4proc.c | 20 ++-
fs/nfs/pagelist.c | 4 +-
fs/nfs/pnfs_nfs.c | 33 ++--
fs/nfs/write.c | 15 +-
fs/nfsd/nfs4state.c | 84 ++++++----
fs/nfsd/nfs4xdr.c | 45 ++++--
include/linux/jbd2.h | 3 +-
include/linux/mm.h | 28 ++++
include/linux/mm_types.h | 9 --
include/linux/skbuff.h | 14 +-
include/linux/sunrpc/xprtsock.h | 3 +
include/net/act_api.h | 8 +-
include/net/ip.h | 1 +
include/soc/tegra/mc.h | 1 +
include/trace/events/sunrpc.h | 21 ++-
kernel/fork.c | 28 ++--
lib/decompress_bunzip2.c | 6 +-
lib/decompress_inflate.c | 31 +++-
lib/decompress_unlz4.c | 6 +-
lib/decompress_unlzma.c | 7 +-
lib/decompress_unlzo.c | 13 +-
lib/decompress_unxz.c | 12 +-
lib/rhashtable.c | 4 +-
mm/page_alloc.c | 7 +-
mm/slab.c | 4 +-
mm/slub.c | 2 +-
mm/vmscan.c | 2 +-
net/bridge/br_forward.c | 1 +
net/bridge/br_mdb.c | 3 +-
net/bridge/br_netlink.c | 14 +-
net/core/datagram.c | 57 +++++--
net/core/dev.c | 43 +++--
net/core/pktgen.c | 4 +-
net/core/request_sock.c | 8 +-
net/core/rtnetlink.c | 187 +++++++++++-----------
net/core/skbuff.c | 2 +-
net/dsa/slave.c | 3 +-
net/ipv4/datagram.c | 16 +-
net/ipv4/fib_trie.c | 6 +-
net/ipv4/inet_connection_sock.c | 2 +-
net/ipv4/ip_fragment.c | 7 +-
net/ipv4/ip_tunnel.c | 8 +-
net/ipv4/tcp_ipv4.c | 2 +-
net/ipv4/udp.c | 13 +-
net/ipv6/datagram.c | 20 ++-
net/ipv6/ip6_input.c | 6 +-
net/ipv6/ip6_offload.c | 2 -
net/ipv6/tcp_ipv6.c | 2 +-
net/mac80211/tx.c | 3 -
net/netlink/af_netlink.c | 84 ++++++----
net/nfc/nci/hci.c | 2 +-
net/packet/af_packet.c | 11 +-
net/rds/info.c | 2 +-
net/sched/act_api.c | 11 +-
net/sched/act_bpf.c | 50 ++++--
net/sched/cls_bpf.c | 2 +-
net/sched/cls_flow.c | 5 +-
net/sched/sch_fq_codel.c | 2 +-
net/sunrpc/xprt.c | 6 +
net/sunrpc/xprtsock.c | 21 ++-
net/tipc/socket.c | 1 +
sound/pci/hda/patch_realtek.c | 12 +-
sound/usb/mixer.c | 2 +-
181 files changed, 1431 insertions(+), 656 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 087/159] md/raid10: always set reshape_safe when initializing reshape_position. |
| Message-ID | <qd5vX-3Ss-13@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: NeilBrown <neilb@suse.com>
commit 299b0685e31c9f3dcc2d58ee3beca761a40b44b3 upstream.
'reshape_position' tracks where in the reshape we have reached.
'reshape_safe' tracks where in the reshape we have safely recorded
in the metadata.
These are compared to determine when to update the metadata.
So it is important that reshape_safe is initialised properly.
Currently it isn't. When starting a reshape from the beginning
it usually has the correct value by luck. But when reducing the
number of devices in a RAID10, it has the wrong value and this leads
to the metadata not being updated correctly.
This can lead to corruption if the reshape is not allowed to complete.
This patch is suitable for any -stable kernel which supports RAID10
reshape, which is 3.5 and later.
Fixes: 3ea7daa5d7fd ("md/raid10: add reshape support")
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/md/raid10.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -3566,6 +3566,7 @@ static struct r10conf *setup_conf(struct
/* far_copies must be 1 */
conf->prev.stride = conf->dev_sectors;
}
+ conf->reshape_safe = conf->reshape_progress;
spin_lock_init(&conf->device_lock);
INIT_LIST_HEAD(&conf->retry_list);
@@ -3770,7 +3771,6 @@ static int run(struct mddev *mddev)
}
conf->offset_diff = min_offset_diff;
- conf->reshape_safe = conf->reshape_progress;
clear_bit(MD_RECOVERY_SYNC, &mddev->recovery);
clear_bit(MD_RECOVERY_CHECK, &mddev->recovery);
set_bit(MD_RECOVERY_RESHAPE, &mddev->recovery);
@@ -4113,6 +4113,7 @@ static int raid10_start_reshape(struct m
conf->reshape_progress = size;
} else
conf->reshape_progress = 0;
+ conf->reshape_safe = conf->reshape_progress;
spin_unlock_irq(&conf->device_lock);
if (mddev->delta_disks && mddev->bitmap) {
@@ -4180,6 +4181,7 @@ abort:
rdev->new_data_offset = rdev->data_offset;
smp_wmb();
conf->reshape_progress = MaxSector;
+ conf->reshape_safe = MaxSector;
mddev->reshape_position = MaxSector;
spin_unlock_irq(&conf->device_lock);
return ret;
@@ -4534,6 +4536,7 @@ static void end_reshape(struct r10conf *
md_finish_reshape(conf->mddev);
smp_wmb();
conf->reshape_progress = MaxSector;
+ conf->reshape_safe = MaxSector;
spin_unlock_irq(&conf->device_lock);
/* read-ahead size must cover two whole stripes, which is
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 090/159] iommu/io-pgtable-arm: Unmap and free table when overwriting with block |
| Message-ID | <qd5vX-3Ss-19@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Will Deacon <will.deacon@arm.com>
commit cf27ec930be906e142c752f9161197d69ca534d7 upstream.
When installing a block mapping, we unconditionally overwrite a non-leaf
PTE if we find one. However, this can cause a problem if the following
sequence of events occur:
(1) iommu_map called for a 4k (i.e. PAGE_SIZE) mapping at some address
- We initialise the page table all the way down to a leaf entry
- No TLB maintenance is required, because we're going from invalid
to valid.
(2) iommu_unmap is called on the mapping installed in (1)
- We walk the page table to the final (leaf) entry and zero it
- We only changed a valid leaf entry, so we invalidate leaf-only
(3) iommu_map is called on the same address as (1), but this time for
a 2MB (i.e. BLOCK_SIZE) mapping)
- We walk the page table down to the penultimate level, where we
find a table entry
- We overwrite the table entry with a block mapping and return
without any TLB maintenance and without freeing the memory used
by the now-orphaned table.
This last step can lead to a walk-cache caching the overwritten table
entry, causing unexpected faults when the new mapping is accessed by a
device. One way to fix this would be to collapse the page table when
freeing the last page at a given level, but this would require expensive
iteration on every map call. Instead, this patch detects the case when
we are overwriting a table entry and explicitly unmaps the table first,
which takes care of both freeing and TLB invalidation.
Reported-by: Brian Starkey <brian.starkey@arm.com>
Tested-by: Brian Starkey <brian.starkey@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/iommu/io-pgtable-arm.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
--- a/drivers/iommu/io-pgtable-arm.c
+++ b/drivers/iommu/io-pgtable-arm.c
@@ -200,6 +200,10 @@ typedef u64 arm_lpae_iopte;
static bool selftest_running = false;
+static int __arm_lpae_unmap(struct arm_lpae_io_pgtable *data,
+ unsigned long iova, size_t size, int lvl,
+ arm_lpae_iopte *ptep);
+
static int arm_lpae_init_pte(struct arm_lpae_io_pgtable *data,
unsigned long iova, phys_addr_t paddr,
arm_lpae_iopte prot, int lvl,
@@ -207,10 +211,21 @@ static int arm_lpae_init_pte(struct arm_
{
arm_lpae_iopte pte = prot;
- /* We require an unmap first */
if (iopte_leaf(*ptep, lvl)) {
+ /* We require an unmap first */
WARN_ON(!selftest_running);
return -EEXIST;
+ } else if (iopte_type(*ptep, lvl) == ARM_LPAE_PTE_TYPE_TABLE) {
+ /*
+ * We need to unmap and free the old table before
+ * overwriting it with a block entry.
+ */
+ arm_lpae_iopte *tblp;
+ size_t sz = ARM_LPAE_BLOCK_SIZE(lvl, data);
+
+ tblp = ptep - ARM_LPAE_LVL_IDX(iova, lvl, data);
+ if (WARN_ON(__arm_lpae_unmap(data, iova, sz, lvl, tblp) != sz))
+ return -EINVAL;
}
if (data->iop.cfg.quirks & IO_PGTABLE_QUIRK_ARM_NS)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 042/159] powerpc/mm: Recompute hash value after a failed update |
| Message-ID | <qd5vX-3Ss-17@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
commit 36b35d5d807b7e57aff7d08e63de8b17731ee211 upstream.
If we had secondary hash flag set, we ended up modifying hash value in
the updatepp code path. Hence with a failed updatepp we will be using
a wrong hash value for the following hash insert. Fix this by
recomputing hash before insert.
Without this patch we can end up with using wrong slot number in linux
pte. That can result in us missing an hash pte update or invalidate
which can cause memory corruption or even machine check.
Fixes: 6d492ecc6489 ("powerpc/THP: Add code to handle HPTE faults for hugepages")
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Reviewed-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/powerpc/mm/hugepage-hash64.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/arch/powerpc/mm/hugepage-hash64.c
+++ b/arch/powerpc/mm/hugepage-hash64.c
@@ -85,7 +85,6 @@ int __hash_page_thp(unsigned long ea, un
BUG_ON(index >= 4096);
vpn = hpt_vpn(ea, vsid, ssize);
- hash = hpt_hash(vpn, shift, ssize);
hpte_slot_array = get_hpte_slot_array(pmdp);
if (psize == MMU_PAGE_4K) {
/*
@@ -101,6 +100,7 @@ int __hash_page_thp(unsigned long ea, un
valid = hpte_valid(hpte_slot_array, index);
if (valid) {
/* update the hpte bits */
+ hash = hpt_hash(vpn, shift, ssize);
hidx = hpte_hash_index(hpte_slot_array, index);
if (hidx & _PTEIDX_SECONDARY)
hash = ~hash;
@@ -126,6 +126,7 @@ int __hash_page_thp(unsigned long ea, un
if (!valid) {
unsigned long hpte_group;
+ hash = hpt_hash(vpn, shift, ssize);
/* insert new entry */
pa = pmd_pfn(__pmd(old_pmd)) << PAGE_SHIFT;
new_pmd |= _PAGE_HASHPTE;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 040/159] crypto: vmx - Adding enable_kernel_vsx() to access VSX instructions |
| Message-ID | <qd5vY-3Ss-25@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Leonidas Da Silva Barbosa <leosilva@linux.vnet.ibm.com>
commit 2d6f0600b2cd755959527230ef5a6fba97bb762a upstream.
vmx-crypto driver make use of some VSX instructions which are
only available if VSX is enabled. Running in cases where VSX
are not enabled vmx-crypto fails in a VSX exception.
In order to fix this enable_kernel_vsx() was added to turn on
VSX instructions for vmx-crypto.
Signed-off-by: Leonidas S. Barbosa <leosilva@linux.vnet.ibm.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/crypto/vmx/aes.c | 3 +++
drivers/crypto/vmx/aes_cbc.c | 3 +++
drivers/crypto/vmx/aes_ctr.c | 3 +++
drivers/crypto/vmx/ghash.c | 4 ++++
4 files changed, 13 insertions(+)
--- a/drivers/crypto/vmx/aes.c
+++ b/drivers/crypto/vmx/aes.c
@@ -80,6 +80,7 @@ static int p8_aes_setkey(struct crypto_t
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
ret = aes_p8_set_encrypt_key(key, keylen * 8, &ctx->enc_key);
ret += aes_p8_set_decrypt_key(key, keylen * 8, &ctx->dec_key);
pagefault_enable();
@@ -97,6 +98,7 @@ static void p8_aes_encrypt(struct crypto
} else {
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
aes_p8_encrypt(src, dst, &ctx->enc_key);
pagefault_enable();
}
@@ -111,6 +113,7 @@ static void p8_aes_decrypt(struct crypto
} else {
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
aes_p8_decrypt(src, dst, &ctx->dec_key);
pagefault_enable();
}
--- a/drivers/crypto/vmx/aes_cbc.c
+++ b/drivers/crypto/vmx/aes_cbc.c
@@ -81,6 +81,7 @@ static int p8_aes_cbc_setkey(struct cryp
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
ret = aes_p8_set_encrypt_key(key, keylen * 8, &ctx->enc_key);
ret += aes_p8_set_decrypt_key(key, keylen * 8, &ctx->dec_key);
pagefault_enable();
@@ -108,6 +109,7 @@ static int p8_aes_cbc_encrypt(struct blk
} else {
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
blkcipher_walk_init(&walk, dst, src, nbytes);
ret = blkcipher_walk_virt(desc, &walk);
@@ -143,6 +145,7 @@ static int p8_aes_cbc_decrypt(struct blk
} else {
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
blkcipher_walk_init(&walk, dst, src, nbytes);
ret = blkcipher_walk_virt(desc, &walk);
--- a/drivers/crypto/vmx/aes_ctr.c
+++ b/drivers/crypto/vmx/aes_ctr.c
@@ -79,6 +79,7 @@ static int p8_aes_ctr_setkey(struct cryp
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
ret = aes_p8_set_encrypt_key(key, keylen * 8, &ctx->enc_key);
pagefault_enable();
@@ -97,6 +98,7 @@ static void p8_aes_ctr_final(struct p8_a
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
aes_p8_encrypt(ctrblk, keystream, &ctx->enc_key);
pagefault_enable();
@@ -127,6 +129,7 @@ static int p8_aes_ctr_crypt(struct blkci
while ((nbytes = walk.nbytes) >= AES_BLOCK_SIZE) {
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
aes_p8_ctr32_encrypt_blocks(walk.src.virt.addr, walk.dst.virt.addr,
(nbytes & AES_BLOCK_MASK)/AES_BLOCK_SIZE, &ctx->enc_key, walk.iv);
pagefault_enable();
--- a/drivers/crypto/vmx/ghash.c
+++ b/drivers/crypto/vmx/ghash.c
@@ -116,6 +116,7 @@ static int p8_ghash_setkey(struct crypto
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
enable_kernel_fp();
gcm_init_p8(ctx->htable, (const u64 *) key);
pagefault_enable();
@@ -142,6 +143,7 @@ static int p8_ghash_update(struct shash_
GHASH_DIGEST_SIZE - dctx->bytes);
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
enable_kernel_fp();
gcm_ghash_p8(dctx->shash, ctx->htable, dctx->buffer,
GHASH_DIGEST_SIZE);
@@ -154,6 +156,7 @@ static int p8_ghash_update(struct shash_
if (len) {
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
enable_kernel_fp();
gcm_ghash_p8(dctx->shash, ctx->htable, src, len);
pagefault_enable();
@@ -182,6 +185,7 @@ static int p8_ghash_final(struct shash_d
dctx->buffer[i] = 0;
pagefault_disable();
enable_kernel_altivec();
+ enable_kernel_vsx();
enable_kernel_fp();
gcm_ghash_p8(dctx->shash, ctx->htable, dctx->buffer,
GHASH_DIGEST_SIZE);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 044/159] Add radeon suspend/resume quirk for HP Compaq dc5750. |
| Message-ID | <qd5vY-3Ss-27@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Jeffery Miller <jmiller@neverware.com> commit 09bfda10e6efd7b65bcc29237bee1765ed779657 upstream. With the radeon driver loaded the HP Compaq dc5750 Small Form Factor machine fails to resume from suspend. Adding a quirk similar to other devices avoids the problem and the system resumes properly. Signed-off-by: Jeffery Miller <jmiller@neverware.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- drivers/gpu/drm/radeon/radeon_combios.c | 8 ++++++++ 1 file changed, 8 insertions(+) --- a/drivers/gpu/drm/radeon/radeon_combios.c +++ b/drivers/gpu/drm/radeon/radeon_combios.c @@ -3387,6 +3387,14 @@ void radeon_combios_asic_init(struct drm rdev->pdev->subsystem_device == 0x30ae) return; + /* quirk for rs4xx HP Compaq dc5750 Small Form Factor to make it resume + * - it hangs on resume inside the dynclk 1 table. + */ + if (rdev->family == CHIP_RS480 && + rdev->pdev->subsystem_vendor == 0x103c && + rdev->pdev->subsystem_device == 0x280a) + return; + /* DYN CLK 1 */ table = combios_get_table_offset(dev, COMBIOS_DYN_CLK_1_TABLE); if (table) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 078/159] parisc: Filter out spurious interrupts in PA-RISC irq handler |
| Message-ID | <qd5vY-3Ss-21@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Helge Deller <deller@gmx.de>
commit b1b4e435e4ef7de77f07bf2a42c8380b960c2d44 upstream.
When detecting a serial port on newer PA-RISC machines (with iosapic) we have a
long way to go to find the right IRQ line, registering it, then registering the
serial port and the irq handler for the serial port. During this phase spurious
interrupts for the serial port may happen which then crashes the kernel because
the action handler might not have been set up yet.
So, basically it's a race condition between the serial port hardware and the
CPU which sets up the necessary fields in the irq sructs. The main reason for
this race is, that we unmask the serial port irqs too early without having set
up everything properly before (which isn't easily possible because we need the
IRQ number to register the serial ports).
This patch is a work-around for this problem. It adds checks to the CPU irq
handler to verify if the IRQ action field has been initialized already. If not,
we just skip this interrupt (which isn't critical for a serial port at bootup).
The real fix would probably involve rewriting all PA-RISC specific IRQ code
(for CPU, IOSAPIC, GSC and EISA) to use IRQ domains with proper parenting of
the irq chips and proper irq enabling along this line.
This bug has been in the PA-RISC port since the beginning, but the crashes
happened very rarely with currently used hardware. But on the latest machine
which I bought (a C8000 workstation), which uses the fastest CPUs (4 x PA8900,
1GHz) and which has the largest possible L1 cache size (64MB each), the kernel
crashed at every boot because of this race. So, without this patch the machine
would currently be unuseable.
For the record, here is the flow logic:
1. serial_init_chip() in 8250_gsc.c calls iosapic_serial_irq().
2. iosapic_serial_irq() calls txn_alloc_irq() to find the irq.
3. iosapic_serial_irq() calls cpu_claim_irq() to register the CPU irq
4. cpu_claim_irq() unmasks the CPU irq (which it shouldn't!)
5. serial_init_chip() then registers the 8250 port.
Problems:
- In step 4 the CPU irq shouldn't have been registered yet, but after step 5
- If serial irq happens between 4 and 5 have finished, the kernel will crash
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/parisc/kernel/irq.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
--- a/arch/parisc/kernel/irq.c
+++ b/arch/parisc/kernel/irq.c
@@ -507,8 +507,8 @@ void do_cpu_irq_mask(struct pt_regs *reg
struct pt_regs *old_regs;
unsigned long eirr_val;
int irq, cpu = smp_processor_id();
-#ifdef CONFIG_SMP
struct irq_desc *desc;
+#ifdef CONFIG_SMP
cpumask_t dest;
#endif
@@ -521,8 +521,12 @@ void do_cpu_irq_mask(struct pt_regs *reg
goto set_out;
irq = eirr_to_irq(eirr_val);
-#ifdef CONFIG_SMP
+ /* Filter out spurious interrupts, mostly from serial port at bootup */
desc = irq_to_desc(irq);
+ if (unlikely(!desc->action))
+ goto set_out;
+
+#ifdef CONFIG_SMP
cpumask_copy(&dest, desc->irq_data.affinity);
if (irqd_is_per_cpu(&desc->irq_data) &&
!cpumask_test_cpu(smp_processor_id(), &dest)) {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 037/159] powerpc/mm: Fix pte_pagesize_index() crash on 4K w/64K hash |
| Message-ID | <qd5vY-3Ss-29@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Michael Ellerman <mpe@ellerman.id.au>
commit 74b5037baa2011a2799e2c43adde7d171b072f9e upstream.
The powerpc kernel can be built to have either a 4K PAGE_SIZE or a 64K
PAGE_SIZE.
However when built with a 4K PAGE_SIZE there is an additional config
option which can be enabled, PPC_HAS_HASH_64K, which means the kernel
also knows how to hash a 64K page even though the base PAGE_SIZE is 4K.
This is used in one obscure configuration, to support 64K pages for SPU
local store on the Cell processor when the rest of the kernel is using
4K pages.
In this configuration, pte_pagesize_index() is defined to just pass
through its arguments to get_slice_psize(). However pte_pagesize_index()
is called for both user and kernel addresses, whereas get_slice_psize()
only knows how to handle user addresses.
This has been broken forever, however until recently it happened to
work. That was because in get_slice_psize() the large kernel address
would cause the right shift of the slice mask to return zero.
However in commit 7aa0727f3302 ("powerpc/mm: Increase the slice range to
64TB"), the get_slice_psize() code was changed so that instead of a
right shift we do an array lookup based on the address. When passed a
kernel address this means we index way off the end of the slice array
and return random junk.
That is only fatal if we happen to hit something non-zero, but when we
do return a non-zero value we confuse the MMU code and eventually cause
a check stop.
This fix is ugly, but simple. When we're called for a kernel address we
return 4K, which is always correct in this configuration, otherwise we
use the slice mask.
Fixes: 7aa0727f3302 ("powerpc/mm: Increase the slice range to 64TB")
Reported-by: Cyril Bur <cyrilbur@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/powerpc/include/asm/pgtable-ppc64.h | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
--- a/arch/powerpc/include/asm/pgtable-ppc64.h
+++ b/arch/powerpc/include/asm/pgtable-ppc64.h
@@ -135,7 +135,19 @@
#define pte_iterate_hashed_end() } while(0)
#ifdef CONFIG_PPC_HAS_HASH_64K
-#define pte_pagesize_index(mm, addr, pte) get_slice_psize(mm, addr)
+/*
+ * We expect this to be called only for user addresses or kernel virtual
+ * addresses other than the linear mapping.
+ */
+#define pte_pagesize_index(mm, addr, pte) \
+ ({ \
+ unsigned int psize; \
+ if (is_kernel_addr(addr)) \
+ psize = MMU_PAGE_4K; \
+ else \
+ psize = get_slice_psize(mm, addr); \
+ psize; \
+ })
#else
#define pte_pagesize_index(mm, addr, pte) MMU_PAGE_4K
#endif
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 062/159] NFS41/flexfiles: update inode after write finishes |
| Message-ID | <qd5vY-3Ss-31@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Peng Tao <tao.peng@primarydata.com> commit 69f230d907e8c1ca3f9bd528993eeb98f712b0dd upstream. Otherwise we break fstest case tests/read_write/mctime.t Does files layout need the same fix as well? Cc: Anna Schumaker <anna.schumaker@netapp.com> Signed-off-by: Peng Tao <tao.peng@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- fs/nfs/flexfilelayout/flexfilelayout.c | 3 +++ 1 file changed, 3 insertions(+) --- a/fs/nfs/flexfilelayout/flexfilelayout.c +++ b/fs/nfs/flexfilelayout/flexfilelayout.c @@ -1039,6 +1039,9 @@ static int ff_layout_write_done_cb(struc hdr->res.verf->committed == NFS_DATA_SYNC) ff_layout_set_layoutcommit(hdr); + if (task->tk_status >= 0) + nfs_writeback_update_inode(hdr); + return 0; } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 038/159] powerpc/rtas: Introduce rtas_get_sensor_fast() for IRQ handlers |
| Message-ID | <qd5vY-3Ss-33@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Thomas Huth <thuth@redhat.com>
commit 1c2cb594441d02815d304cccec9742ff5c707495 upstream.
The EPOW interrupt handler uses rtas_get_sensor(), which in turn
uses rtas_busy_delay() to wait for RTAS becoming ready in case it
is necessary. But rtas_busy_delay() is annotated with might_sleep()
and thus may not be used by interrupts handlers like the EPOW handler!
This leads to the following BUG when CONFIG_DEBUG_ATOMIC_SLEEP is
enabled:
BUG: sleeping function called from invalid context at arch/powerpc/kernel/rtas.c:496
in_atomic(): 1, irqs_disabled(): 1, pid: 0, name: swapper/1
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.2.0-rc2-thuth #6
Call Trace:
[c00000007ffe7b90] [c000000000807670] dump_stack+0xa0/0xdc (unreliable)
[c00000007ffe7bc0] [c0000000000e1f14] ___might_sleep+0x134/0x180
[c00000007ffe7c20] [c00000000002aec0] rtas_busy_delay+0x30/0xd0
[c00000007ffe7c50] [c00000000002bde4] rtas_get_sensor+0x74/0xe0
[c00000007ffe7ce0] [c000000000083264] ras_epow_interrupt+0x44/0x450
[c00000007ffe7d90] [c000000000120260] handle_irq_event_percpu+0xa0/0x300
[c00000007ffe7e70] [c000000000120524] handle_irq_event+0x64/0xc0
[c00000007ffe7eb0] [c000000000124dbc] handle_fasteoi_irq+0xec/0x260
[c00000007ffe7ef0] [c00000000011f4f0] generic_handle_irq+0x50/0x80
[c00000007ffe7f20] [c000000000010f3c] __do_irq+0x8c/0x200
[c00000007ffe7f90] [c0000000000236cc] call_do_irq+0x14/0x24
[c00000007e6f39e0] [c000000000011144] do_IRQ+0x94/0x110
[c00000007e6f3a30] [c000000000002594] hardware_interrupt_common+0x114/0x180
Fix this issue by introducing a new rtas_get_sensor_fast() function
that does not use rtas_busy_delay() - and thus can only be used for
sensors that do not cause a BUSY condition - known as "fast" sensors.
The EPOW sensor is defined to be "fast" in sPAPR - mpe.
Fixes: 587f83e8dd50 ("powerpc/pseries: Use rtas_get_sensor in RAS code")
Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Nathan Fontenot <nfont@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/powerpc/include/asm/rtas.h | 1 +
arch/powerpc/kernel/rtas.c | 17 +++++++++++++++++
arch/powerpc/platforms/pseries/ras.c | 3 ++-
3 files changed, 20 insertions(+), 1 deletion(-)
--- a/arch/powerpc/include/asm/rtas.h
+++ b/arch/powerpc/include/asm/rtas.h
@@ -343,6 +343,7 @@ extern void rtas_power_off(void);
extern void rtas_halt(void);
extern void rtas_os_term(char *str);
extern int rtas_get_sensor(int sensor, int index, int *state);
+extern int rtas_get_sensor_fast(int sensor, int index, int *state);
extern int rtas_get_power_level(int powerdomain, int *level);
extern int rtas_set_power_level(int powerdomain, int level, int *setlevel);
extern bool rtas_indicator_present(int token, int *maxindex);
--- a/arch/powerpc/kernel/rtas.c
+++ b/arch/powerpc/kernel/rtas.c
@@ -584,6 +584,23 @@ int rtas_get_sensor(int sensor, int inde
}
EXPORT_SYMBOL(rtas_get_sensor);
+int rtas_get_sensor_fast(int sensor, int index, int *state)
+{
+ int token = rtas_token("get-sensor-state");
+ int rc;
+
+ if (token == RTAS_UNKNOWN_SERVICE)
+ return -ENOENT;
+
+ rc = rtas_call(token, 2, 2, state, sensor, index);
+ WARN_ON(rc == RTAS_BUSY || (rc >= RTAS_EXTENDED_DELAY_MIN &&
+ rc <= RTAS_EXTENDED_DELAY_MAX));
+
+ if (rc < 0)
+ return rtas_error_rc(rc);
+ return rc;
+}
+
bool rtas_indicator_present(int token, int *maxindex)
{
int proplen, count, i;
--- a/arch/powerpc/platforms/pseries/ras.c
+++ b/arch/powerpc/platforms/pseries/ras.c
@@ -189,7 +189,8 @@ static irqreturn_t ras_epow_interrupt(in
int state;
int critical;
- status = rtas_get_sensor(EPOW_SENSOR_TOKEN, EPOW_SENSOR_INDEX, &state);
+ status = rtas_get_sensor_fast(EPOW_SENSOR_TOKEN, EPOW_SENSOR_INDEX,
+ &state);
if (state > 3)
critical = 1; /* Time Critical */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 021/159] arm64: head.S: initialise mdcr_el2 in el2_setup |
| Message-ID | <qd5vY-3Ss-23@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Will Deacon <will.deacon@arm.com> commit d10bcd473301888f957ec4b6b12aa3621be78d59 upstream. When entering the kernel at EL2, we fail to initialise the MDCR_EL2 register which controls debug access and PMU capabilities at EL1. This patch ensures that the register is initialised so that all traps are disabled and all the PMU counters are available to the host. When a guest is scheduled, KVM takes care to configure trapping appropriately. Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- arch/arm64/kernel/head.S | 5 +++++ 1 file changed, 5 insertions(+) --- a/arch/arm64/kernel/head.S +++ b/arch/arm64/kernel/head.S @@ -565,6 +565,11 @@ CPU_LE( movk x0, #0x30d0, lsl #16 ) // C msr hstr_el2, xzr // Disable CP15 traps to EL2 #endif + /* EL2 debug */ + mrs x0, pmcr_el0 // Disable debug access traps + ubfx x0, x0, #11, #5 // to EL2 and allow access to + msr mdcr_el2, x0 // all PMU counters from EL1 + /* Stage-2 translation */ msr vttbr_el2, xzr -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 015/159] Revert "ext4: remove block_device_ejected" |
| Message-ID | <qd5vY-3Ss-35@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Theodore Ts'o <tytso@mit.edu>
commit bdfe0cbd746aa9b2509c2f6d6be17193cf7facd7 upstream.
This reverts commit 08439fec266c3cc5702953b4f54bdf5649357de0.
Unfortunately we still need to test for bdi->dev to avoid a crash when a
USB stick is yanked out while a file system is mounted:
usb 2-2: USB disconnect, device number 2
Buffer I/O error on dev sdb1, logical block 15237120, lost sync page write
JBD2: Error -5 detected when updating journal superblock for sdb1-8.
BUG: unable to handle kernel paging request at 34beb000
IP: [<c136ce88>] __percpu_counter_add+0x18/0xc0
*pdpt = 0000000023db9001 *pde = 0000000000000000
Oops: 0000 [#1] SMP
CPU: 0 PID: 4083 Comm: umount Tainted: G U OE 4.1.1-040101-generic #201507011435
Hardware name: LENOVO 7675CTO/7675CTO, BIOS 7NETC2WW (2.22 ) 03/22/2011
task: ebf06b50 ti: ebebc000 task.ti: ebebc000
EIP: 0060:[<c136ce88>] EFLAGS: 00010082 CPU: 0
EIP is at __percpu_counter_add+0x18/0xc0
EAX: f21c8e88 EBX: f21c8e88 ECX: 00000000 EDX: 00000001
ESI: 00000001 EDI: 00000000 EBP: ebebde60 ESP: ebebde40
DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
CR0: 8005003b CR2: 34beb000 CR3: 33354200 CR4: 000007f0
Stack:
c1abe100 edcb0098 edcb00ec ffffffff f21c8e68 ffffffff f21c8e68 f286d160
ebebde84 c1160454 00000010 00000282 f72a77f8 00000984 f72a77f8 f286d160
f286d170 ebebdea0 c11e613f 00000000 00000282 f72a77f8 edd7f4d0 00000000
Call Trace:
[<c1160454>] account_page_dirtied+0x74/0x110
[<c11e613f>] __set_page_dirty+0x3f/0xb0
[<c11e6203>] mark_buffer_dirty+0x53/0xc0
[<c124a0cb>] ext4_commit_super+0x17b/0x250
[<c124ac71>] ext4_put_super+0xc1/0x320
[<c11f04ba>] ? fsnotify_unmount_inodes+0x1aa/0x1c0
[<c11cfeda>] ? evict_inodes+0xca/0xe0
[<c11b925a>] generic_shutdown_super+0x6a/0xe0
[<c10a1df0>] ? prepare_to_wait_event+0xd0/0xd0
[<c1165a50>] ? unregister_shrinker+0x40/0x50
[<c11b92f6>] kill_block_super+0x26/0x70
[<c11b94f5>] deactivate_locked_super+0x45/0x80
[<c11ba007>] deactivate_super+0x47/0x60
[<c11d2b39>] cleanup_mnt+0x39/0x80
[<c11d2bc0>] __cleanup_mnt+0x10/0x20
[<c1080b51>] task_work_run+0x91/0xd0
[<c1011e3c>] do_notify_resume+0x7c/0x90
[<c1720da5>] work_notify
Code: 8b 55 e8 e9 f4 fe ff ff 90 90 90 90 90 90 90 90 90 90 90 55 89 e5 83 ec 20 89 5d f4 89 c3 89 75 f8 89 d6 89 7d fc 89 cf 8b 48 14 <64> 8b 01 89 45 ec 89 c2 8b 45 08 c1 fa 1f 01 75 ec 89 55 f0 89
EIP: [<c136ce88>] __percpu_counter_add+0x18/0xc0 SS:ESP 0068:ebebde40
CR2: 0000000034beb000
---[ end trace dd564a7bea834ecd ]---
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=101011
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
fs/ext4/super.c | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -324,6 +324,22 @@ static void save_error_info(struct super
ext4_commit_super(sb, 1);
}
+/*
+ * The del_gendisk() function uninitializes the disk-specific data
+ * structures, including the bdi structure, without telling anyone
+ * else. Once this happens, any attempt to call mark_buffer_dirty()
+ * (for example, by ext4_commit_super), will cause a kernel OOPS.
+ * This is a kludge to prevent these oops until we can put in a proper
+ * hook in del_gendisk() to inform the VFS and file system layers.
+ */
+static int block_device_ejected(struct super_block *sb)
+{
+ struct inode *bd_inode = sb->s_bdev->bd_inode;
+ struct backing_dev_info *bdi = inode_to_bdi(bd_inode);
+
+ return bdi->dev == NULL;
+}
+
static void ext4_journal_commit_callback(journal_t *journal, transaction_t *txn)
{
struct super_block *sb = journal->j_private;
@@ -4591,7 +4607,7 @@ static int ext4_commit_super(struct supe
struct buffer_head *sbh = EXT4_SB(sb)->s_sbh;
int error = 0;
- if (!sbh)
+ if (!sbh || block_device_ejected(sb))
return error;
if (buffer_write_io_error(sbh)) {
/*
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 066/159] NFSv4.1: Fix a protocol issue with CLOSE stateids |
| Message-ID | <qd5vY-3Ss-41@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Trond Myklebust <trond.myklebust@primarydata.com>
commit 4a1e2feb9d246775dee0f78ed5b18826bae2b1c5 upstream.
According to RFC5661 Section 18.2.4, CLOSE is supposed to return
the zero stateid. This means that nfs_clear_open_stateid_locked()
cannot assume that the result stateid will always match the 'other'
field of the existing open stateid when trying to determine a race
with a parallel OPEN.
Instead, we look at the argument, and check for matches.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
fs/nfs/nfs4proc.c | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -1216,6 +1216,7 @@ static void nfs_resync_open_stateid_lock
}
static void nfs_clear_open_stateid_locked(struct nfs4_state *state,
+ nfs4_stateid *arg_stateid,
nfs4_stateid *stateid, fmode_t fmode)
{
clear_bit(NFS_O_RDWR_STATE, &state->flags);
@@ -1234,8 +1235,9 @@ static void nfs_clear_open_stateid_locke
if (stateid == NULL)
return;
/* Handle races with OPEN */
- if (!nfs4_stateid_match_other(stateid, &state->open_stateid) ||
- !nfs4_stateid_is_newer(stateid, &state->open_stateid)) {
+ if (!nfs4_stateid_match_other(arg_stateid, &state->open_stateid) ||
+ (nfs4_stateid_match_other(stateid, &state->open_stateid) &&
+ !nfs4_stateid_is_newer(stateid, &state->open_stateid))) {
nfs_resync_open_stateid_locked(state);
return;
}
@@ -1244,10 +1246,12 @@ static void nfs_clear_open_stateid_locke
nfs4_stateid_copy(&state->open_stateid, stateid);
}
-static void nfs_clear_open_stateid(struct nfs4_state *state, nfs4_stateid *stateid, fmode_t fmode)
+static void nfs_clear_open_stateid(struct nfs4_state *state,
+ nfs4_stateid *arg_stateid,
+ nfs4_stateid *stateid, fmode_t fmode)
{
write_seqlock(&state->seqlock);
- nfs_clear_open_stateid_locked(state, stateid, fmode);
+ nfs_clear_open_stateid_locked(state, arg_stateid, stateid, fmode);
write_sequnlock(&state->seqlock);
if (test_bit(NFS_STATE_RECLAIM_NOGRACE, &state->flags))
nfs4_schedule_state_manager(state->owner->so_server->nfs_client);
@@ -2672,7 +2676,8 @@ static void nfs4_close_done(struct rpc_t
goto out_release;
}
}
- nfs_clear_open_stateid(state, res_stateid, calldata->arg.fmode);
+ nfs_clear_open_stateid(state, &calldata->arg.stateid,
+ res_stateid, calldata->arg.fmode);
out_release:
nfs_release_seqid(calldata->arg.seqid);
nfs_refresh_inode(calldata->inode, calldata->res.fattr);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 031/159] ALSA: hda - Add some FIXUP quirks for white noise on Dell laptop. |
| Message-ID | <qd5vY-3Ss-43@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Woodrow Shen <woodrow.shen@canonical.com> commit 1adecc6755e1e4193b5618ddb2e107f6d6e88f4b upstream. Dell laptop has a series model to use the same codec but different subsystem ID. At the same time they happens the white noise by login screen and headphone; for fixing them together, I only can add these IDs to FIXUP function ALC292_FIXUP_DISABLE_AAMIX, then try to solve such the similar issues. Codec: Realtek ALC3235 Vendor Id: 0x10ec0293 Subsystem Id: 0x102806dd Subsystem Id: 0x102806df Subsystem Id: 0x102806e0 BugLink: https://bugs.launchpad.net/bugs/1492132 Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- sound/pci/hda/patch_realtek.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -5118,8 +5118,11 @@ static const struct snd_pci_quirk alc269 SND_PCI_QUIRK(0x1028, 0x06c7, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1028, 0x06d9, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1028, 0x06da, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), - SND_PCI_QUIRK(0x1028, 0x06de, "Dell", ALC292_FIXUP_DISABLE_AAMIX), SND_PCI_QUIRK(0x1028, 0x06db, "Dell", ALC292_FIXUP_DISABLE_AAMIX), + SND_PCI_QUIRK(0x1028, 0x06dd, "Dell", ALC292_FIXUP_DISABLE_AAMIX), + SND_PCI_QUIRK(0x1028, 0x06de, "Dell", ALC292_FIXUP_DISABLE_AAMIX), + SND_PCI_QUIRK(0x1028, 0x06df, "Dell", ALC292_FIXUP_DISABLE_AAMIX), + SND_PCI_QUIRK(0x1028, 0x06e0, "Dell", ALC292_FIXUP_DISABLE_AAMIX), SND_PCI_QUIRK(0x1028, 0x164a, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1028, 0x164b, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC2), -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 029/159] ALSA: hda - Enable headphone jack detect on old Fujitsu laptops |
| Message-ID | <qd5vY-3Ss-47@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Takashi Iwai <tiwai@suse.de>
commit bb148bdeb0ab16fc0ae8009799471e4d7180073b upstream.
According to the bug report, FSC Amilo laptops with ALC880 can detect
the headphone jack but currently the driver disables it. It's partly
intentionally, as non-working jack detect was reported in the past.
Let's enable now.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102501
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
sound/pci/hda/patch_realtek.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -1134,7 +1134,7 @@ static const struct hda_fixup alc880_fix
/* override all pins as BIOS on old Amilo is broken */
.type = HDA_FIXUP_PINS,
.v.pins = (const struct hda_pintbl[]) {
- { 0x14, 0x0121411f }, /* HP */
+ { 0x14, 0x0121401f }, /* HP */
{ 0x15, 0x99030120 }, /* speaker */
{ 0x16, 0x99030130 }, /* bass speaker */
{ 0x17, 0x411111f0 }, /* N/A */
@@ -1154,7 +1154,7 @@ static const struct hda_fixup alc880_fix
/* almost compatible with FUJITSU, but no bass and SPDIF */
.type = HDA_FIXUP_PINS,
.v.pins = (const struct hda_pintbl[]) {
- { 0x14, 0x0121411f }, /* HP */
+ { 0x14, 0x0121401f }, /* HP */
{ 0x15, 0x99030120 }, /* speaker */
{ 0x16, 0x411111f0 }, /* N/A */
{ 0x17, 0x411111f0 }, /* N/A */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 065/159] NFSv4.1/flexfiles: Fix a protocol error in layoutreturn |
| Message-ID | <qd5vZ-3Ss-53@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Trond Myklebust <trond.myklebust@primarydata.com>
commit d13549074cf066d6d5bb29903d044beffea342d3 upstream.
According to the flexfiles protocol, the layoutreturn should specify an
array of errors in the following format:
struct ff_ioerr4 {
offset4 ffie_offset;
length4 ffie_length;
stateid4 ffie_stateid;
device_error4 ffie_errors<>;
};
This patch fixes up the code to ensure that our ffie_errors is indeed
encoded as an array (albeit with only a single entry).
Reported-by: Tom Haynes <thomas.haynes@primarydata.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
fs/nfs/flexfilelayout/flexfilelayoutdev.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
--- a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
+++ b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
@@ -500,16 +500,19 @@ int ff_layout_encode_ds_ioerr(struct nfs
range->offset, range->length))
continue;
/* offset(8) + length(8) + stateid(NFS4_STATEID_SIZE)
- * + deviceid(NFS4_DEVICEID4_SIZE) + status(4) + opnum(4)
+ * + array length + deviceid(NFS4_DEVICEID4_SIZE)
+ * + status(4) + opnum(4)
*/
p = xdr_reserve_space(xdr,
- 24 + NFS4_STATEID_SIZE + NFS4_DEVICEID4_SIZE);
+ 28 + NFS4_STATEID_SIZE + NFS4_DEVICEID4_SIZE);
if (unlikely(!p))
return -ENOBUFS;
p = xdr_encode_hyper(p, err->offset);
p = xdr_encode_hyper(p, err->length);
p = xdr_encode_opaque_fixed(p, &err->stateid,
NFS4_STATEID_SIZE);
+ /* Encode 1 error */
+ *p++ = cpu_to_be32(1);
p = xdr_encode_opaque_fixed(p, &err->deviceid,
NFS4_DEVICEID4_SIZE);
*p++ = cpu_to_be32(err->status);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 020/159] arm64: compat: fix vfp save/restore across signal handlers in big-endian |
| Message-ID | <qd5vZ-3Ss-49@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Will Deacon <will.deacon@arm.com>
commit bdec97a855ef1e239f130f7a11584721c9a1bf04 upstream.
When saving/restoring the VFP registers from a compat (AArch32)
signal frame, we rely on the compat registers forming a prefix of the
native register file and therefore make use of copy_{to,from}_user to
transfer between the native fpsimd_state and the compat_vfp_sigframe.
Unfortunately, this doesn't work so well in a big-endian environment.
Our fpsimd save/restore code operates directly on 128-bit quantities
(Q registers) whereas the compat_vfp_sigframe represents the registers
as an array of 64-bit (D) registers. The architecture packs the compat D
registers into the Q registers, with the least significant bytes holding
the lower register. Consequently, we need to swap the 64-bit halves when
converting between these two representations on a big-endian machine.
This patch replaces the __copy_{to,from}_user invocations in our
compat VFP signal handling code with explicit __put_user loops that
operate on 64-bit values and swap them accordingly.
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/arm64/kernel/signal32.c | 47 ++++++++++++++++++++++++++++++++-----------
1 file changed, 36 insertions(+), 11 deletions(-)
--- a/arch/arm64/kernel/signal32.c
+++ b/arch/arm64/kernel/signal32.c
@@ -212,14 +212,32 @@ int copy_siginfo_from_user32(siginfo_t *
/*
* VFP save/restore code.
+ *
+ * We have to be careful with endianness, since the fpsimd context-switch
+ * code operates on 128-bit (Q) register values whereas the compat ABI
+ * uses an array of 64-bit (D) registers. Consequently, we need to swap
+ * the two halves of each Q register when running on a big-endian CPU.
*/
+union __fpsimd_vreg {
+ __uint128_t raw;
+ struct {
+#ifdef __AARCH64EB__
+ u64 hi;
+ u64 lo;
+#else
+ u64 lo;
+ u64 hi;
+#endif
+ };
+};
+
static int compat_preserve_vfp_context(struct compat_vfp_sigframe __user *frame)
{
struct fpsimd_state *fpsimd = ¤t->thread.fpsimd_state;
compat_ulong_t magic = VFP_MAGIC;
compat_ulong_t size = VFP_STORAGE_SIZE;
compat_ulong_t fpscr, fpexc;
- int err = 0;
+ int i, err = 0;
/*
* Save the hardware registers to the fpsimd_state structure.
@@ -235,10 +253,15 @@ static int compat_preserve_vfp_context(s
/*
* Now copy the FP registers. Since the registers are packed,
* we can copy the prefix we want (V0-V15) as it is.
- * FIXME: Won't work if big endian.
*/
- err |= __copy_to_user(&frame->ufp.fpregs, fpsimd->vregs,
- sizeof(frame->ufp.fpregs));
+ for (i = 0; i < ARRAY_SIZE(frame->ufp.fpregs); i += 2) {
+ union __fpsimd_vreg vreg = {
+ .raw = fpsimd->vregs[i >> 1],
+ };
+
+ __put_user_error(vreg.lo, &frame->ufp.fpregs[i], err);
+ __put_user_error(vreg.hi, &frame->ufp.fpregs[i + 1], err);
+ }
/* Create an AArch32 fpscr from the fpsr and the fpcr. */
fpscr = (fpsimd->fpsr & VFP_FPSCR_STAT_MASK) |
@@ -263,7 +286,7 @@ static int compat_restore_vfp_context(st
compat_ulong_t magic = VFP_MAGIC;
compat_ulong_t size = VFP_STORAGE_SIZE;
compat_ulong_t fpscr;
- int err = 0;
+ int i, err = 0;
__get_user_error(magic, &frame->magic, err);
__get_user_error(size, &frame->size, err);
@@ -273,12 +296,14 @@ static int compat_restore_vfp_context(st
if (magic != VFP_MAGIC || size != VFP_STORAGE_SIZE)
return -EINVAL;
- /*
- * Copy the FP registers into the start of the fpsimd_state.
- * FIXME: Won't work if big endian.
- */
- err |= __copy_from_user(fpsimd.vregs, frame->ufp.fpregs,
- sizeof(frame->ufp.fpregs));
+ /* Copy the FP registers into the start of the fpsimd_state. */
+ for (i = 0; i < ARRAY_SIZE(frame->ufp.fpregs); i += 2) {
+ union __fpsimd_vreg vreg;
+
+ __get_user_error(vreg.lo, &frame->ufp.fpregs[i], err);
+ __get_user_error(vreg.hi, &frame->ufp.fpregs[i + 1], err);
+ fpsimd.vregs[i >> 1] = vreg.raw;
+ }
/* Extract the fpsr and the fpcr from the fpscr */
__get_user_error(fpscr, &frame->ufp.fpscr, err);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 064/159] NFS41/flexfiles: zero out DS write wcc |
| Message-ID | <qd5vZ-3Ss-55@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Peng Tao <tao.peng@primarydata.com> commit 5420401079e152ff68a8024f6a375804b1c21505 upstream. We do not want to update inode attributes with DS values. Signed-off-by: Peng Tao <tao.peng@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- fs/nfs/flexfilelayout/flexfilelayout.c | 2 ++ 1 file changed, 2 insertions(+) --- a/fs/nfs/flexfilelayout/flexfilelayout.c +++ b/fs/nfs/flexfilelayout/flexfilelayout.c @@ -1039,6 +1039,8 @@ static int ff_layout_write_done_cb(struc hdr->res.verf->committed == NFS_DATA_SYNC) ff_layout_set_layoutcommit(hdr); + /* zero out fattr since we don't care DS attr at all */ + hdr->fattr.valid = 0; if (task->tk_status >= 0) nfs_writeback_update_inode(hdr); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 039/159] powerpc: Uncomment and make enable_kernel_vsx() routine available |
| Message-ID | <qd5vZ-3Ss-59@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Leonidas Da Silva Barbosa <leosilva@linux.vnet.ibm.com>
commit 72cd7b44bc99376b3f3c93cedcd052663fcdf705 upstream.
enable_kernel_vsx() function was commented since anything was using
it. However, vmx-crypto driver uses VSX instructions which are
only available if VSX is enable. Otherwise it rises an exception oops.
This patch uncomment enable_kernel_vsx() routine and makes it available.
Signed-off-by: Leonidas S. Barbosa <leosilva@linux.vnet.ibm.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/powerpc/include/asm/switch_to.h | 1 +
arch/powerpc/kernel/process.c | 3 ---
2 files changed, 1 insertion(+), 3 deletions(-)
--- a/arch/powerpc/include/asm/switch_to.h
+++ b/arch/powerpc/include/asm/switch_to.h
@@ -29,6 +29,7 @@ static inline void save_early_sprs(struc
extern void enable_kernel_fp(void);
extern void enable_kernel_altivec(void);
+extern void enable_kernel_vsx(void);
extern int emulate_altivec(struct pt_regs *);
extern void __giveup_vsx(struct task_struct *);
extern void giveup_vsx(struct task_struct *);
--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
@@ -204,8 +204,6 @@ EXPORT_SYMBOL_GPL(flush_altivec_to_threa
#endif /* CONFIG_ALTIVEC */
#ifdef CONFIG_VSX
-#if 0
-/* not currently used, but some crazy RAID module might want to later */
void enable_kernel_vsx(void)
{
WARN_ON(preemptible());
@@ -220,7 +218,6 @@ void enable_kernel_vsx(void)
#endif /* CONFIG_SMP */
}
EXPORT_SYMBOL(enable_kernel_vsx);
-#endif
void giveup_vsx(struct task_struct *tsk)
{
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2015-09-26 23:50 +0200 |
| Subject | [PATCH 4.1 067/159] Revert "NFSv4: Remove incorrect check in can_open_delegated()" |
| Message-ID | <qd5vZ-3Ss-63@gated-at.bofh.it> |
| In reply to | #1233453 |
4.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Trond Myklebust <trond.myklebust@primarydata.com> commit 36319608e28701c07cad80ae3be8b0fdfb1ab40f upstream. This reverts commit 4e379d36c050b0117b5d10048be63a44f5036115. This commit opens up a race between the recovery code and the open code. Reported-by: Olga Kornievskaia <aglo@umich.edu> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- fs/nfs/nfs4proc.c | 2 ++ 1 file changed, 2 insertions(+) --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c @@ -1152,6 +1152,8 @@ static int can_open_delegated(struct nfs return 0; if ((delegation->type & fmode) != fmode) return 0; + if (test_bit(NFS_DELEGATION_NEED_RECLAIM, &delegation->flags)) + return 0; if (test_bit(NFS_DELEGATION_RETURNING, &delegation->flags)) return 0; nfs_mark_delegation_referenced(delegation); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
Page 1 of 3 [1] 2 3 Next page →
Back to top | Article view | linux.kernel
csiph-web