1. 29 Jul, 2017 1 commit
  2. 28 Jul, 2017 19 commits
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.13-3' of git://git.linux-nfs.org/projects/anna/linux-nfs · 286ba844
      Linus Torvalds authored
      Pull NFS client fixes from Anna Schumaker:
       "More NFS client bugfixes for 4.13.
      
        Most of these fix locking bugs that Ben and Neil noticed, but I also
        have a patch to fix one more access bug that was reported after last
        week.
      
        Stable fixes:
         - Fix a race where CB_NOTIFY_LOCK fails to wake a waiter
         - Invalidate file size when taking a lock to prevent corruption
      
        Other fixes:
         - Don't excessively generate tiny writes with fallocate
         - Use the raw NFS access mask in nfs4_opendata_access()"
      
      * tag 'nfs-for-4.13-3' of git://git.linux-nfs.org/projects/anna/linux-nfs:
        NFSv4.1: Fix a race where CB_NOTIFY_LOCK fails to wake a waiter
        NFS: Optimize fallocate by refreshing mapping when needed.
        NFS: invalidate file size when taking a lock.
        NFS: Use raw NFS access mask in nfs4_opendata_access()
      286ba844
    • Linus Torvalds's avatar
      Merge tag 'xfs-4.13-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 19993e73
      Linus Torvalds authored
      Pull xfs fixes from Darrick Wong:
      
       - fix firstfsb variables that we left uninitialized, which could lead
         to locking problems.
      
       - check for NULL metadata buffer pointers before using them.
      
       - don't allow btree cursor manipulation if the btree block is corrupt.
         Better to just shut down.
      
       - fix infinite loop problems in quotacheck.
      
       - fix buffer overrun when validating directory blocks.
      
       - fix deadlock problem in bunmapi.
      
      * tag 'xfs-4.13-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: fix multi-AG deadlock in xfs_bunmapi
        xfs: check that dir block entries don't off the end of the buffer
        xfs: fix quotacheck dquot id overflow infinite loop
        xfs: check _alloc_read_agf buffer pointer before using
        xfs: set firstfsb to NULLFSBLOCK before feeding it to _bmapi_write
        xfs: check _btree_check_block value
      19993e73
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 81554693
      Linus Torvalds authored
      Pull KVM fixes from Paolo Bonzini:
       "s390:
         - SRCU fix
      
        PPC:
         - host crash fixes
      
        x86:
         - bugfixes, including making nested posted interrupts really work
      
        Generic:
         - tweaks to kvm_stat and to uevents"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: LAPIC: Fix reentrancy issues with preempt notifiers
        tools/kvm_stat: add '-f help' to get the available event list
        tools/kvm_stat: use variables instead of hard paths in help output
        KVM: nVMX: Fix loss of L2's NMI blocking state
        KVM: nVMX: Fix posted intr delivery when vcpu is in guest mode
        x86: irq: Define a global vector for nested posted interrupts
        KVM: x86: do mask out upper bits of PAE CR3
        KVM: make pid available for uevents without debugfs
        KVM: s390: take srcu lock when getting/setting storage keys
        KVM: VMX: remove unused field
        KVM: PPC: Book3S HV: Fix host crash on changing HPT size
        KVM: PPC: Book3S HV: Enable TM before accessing TM registers
      81554693
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.13b-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 8562e89e
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
       "Three minor cleanups for xen related drivers"
      
      * tag 'for-linus-4.13b-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen: dont fiddle with event channel masking in suspend/resume
        xen: selfballoon: remove unnecessary static in frontswap_selfshrink()
        xen: Drop un-informative message during boot
      8562e89e
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 3d9d7405
      Linus Torvalds authored
      Pull arm64 fixes from Will Deacon:
       "I'd been collecting these whilst we debugged a CPU hotplug failure,
        but we ended up diagnosing that one to tglx, who has taken a fix via
        the -tip tree separately.
      
        We're seeing some NFS issues that we haven't gotten to the bottom of
        yet, and we've uncovered some issues with our backtracing too so there
        might be another fixes pull before we're done.
      
        Summary:
      
         - Ensure we have a guard page after the kernel image in vmalloc
      
         - Fix incorrect prefetch stride in copy_page
      
         - Ensure irqs are disabled in die()
      
         - Fix for event group validation in QCOM L2 PMU driver
      
         - Fix requesting of PMU IRQs on AMD Seattle
      
         - Minor cleanups and fixes"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: mmu: Place guard page after mapping of kernel image
        drivers/perf: arm_pmu: Request PMU SPIs with IRQF_PER_CPU
        arm64: sysreg: Fix unprotected macro argmuent in write_sysreg
        perf: qcom_l2: fix column exclusion check
        arm64/lib: copy_page: use consistent prefetch stride
        arm64/numa: Drop duplicate message
        perf: Convert to using %pOF instead of full_name
        arm64: Convert to using %pOF instead of full_name
        arm64: traps: disable irq in die()
        arm64: atomics: Remove '&' from '+&' asm constraint in lse atomics
        arm64: uaccess: Remove redundant __force from addr cast in __range_ok
      3d9d7405
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.13-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 080012ba
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       "The highlight is Ben's patch to work around a host killing bug when
        running KVM guests with the Radix MMU on Power9. See the long change
        log of that commit for more detail.
      
        And then three fairly minor fixes:
      
         - fix of_node_put() underflow during reconfig remove, using old DLPAR
           tools.
      
         - fix recently introduced ld version check with 64-bit LE-only
           toolchain.
      
         - free the subpage_prot_table correctly, avoiding a memory leak.
      
        Thanks to: Aneesh Kumar K.V, Benjamin Herrenschmidt, Laurent Vivier"
      
      * tag 'powerpc-4.13-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/mm/hash: Free the subpage_prot_table correctly
        powerpc/Makefile: Fix ld version check with 64-bit LE-only toolchain
        powerpc/pseries: Fix of_node_put() underflow during reconfig remove
        powerpc/mm/radix: Workaround prefetch issue with KVM
      080012ba
    • Benjamin Coddington's avatar
      NFSv4.1: Fix a race where CB_NOTIFY_LOCK fails to wake a waiter · b7dbcc0e
      Benjamin Coddington authored
      nfs4_retry_setlk() sets the task's state to TASK_INTERRUPTIBLE within the
      same region protected by the wait_queue's lock after checking for a
      notification from CB_NOTIFY_LOCK callback.  However, after releasing that
      lock, a wakeup for that task may race in before the call to
      freezable_schedule_timeout_interruptible() and set TASK_WAKING, then
      freezable_schedule_timeout_interruptible() will set the state back to
      TASK_INTERRUPTIBLE before the task will sleep.  The result is that the task
      will sleep for the entire duration of the timeout.
      
      Since we've already set TASK_INTERRUPTIBLE in the locked section, just use
      freezable_schedule_timout() instead.
      
      Fixes: a1d617d8 ("nfs: allow blocking locks to be awoken by lock callbacks")
      Signed-off-by: default avatarBenjamin Coddington <bcodding@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@redhat.com>
      Cc: stable@vger.kernel.org # v4.9+
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      b7dbcc0e
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · e26f1bea
      Linus Torvalds authored
      Pull crypto fixes from Herbert Xu:
      
       - remove broken dt bindings in inside-secure
      
       - fix authencesn crash when used with digest_null
      
       - fix cavium/nitrox firmware path
      
       - fix SHA3 failure in brcm
      
       - fix Kconfig dependency for brcm
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: authencesn - Fix digest_null crash
        crypto: brcm - remove BCM_PDC_MBOX dependency in Kconfig
        Documentation/bindings: crypto: remove the dma-mask property
        crypto: inside-secure - do not parse the dma mask from dt
        crypto: cavium/nitrox - Change in firmware path.
        crypto: brcm - Fix SHA3-512 algorithm failure
      e26f1bea
    • Linus Torvalds's avatar
      Merge branch 'for-4.13-part3' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 0a2a1330
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
       "Fixes addressing problems reported by users, and there's one more
        regression fix"
      
      * 'for-4.13-part3' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: round down size diff when shrinking/growing device
        Btrfs: fix early ENOSPC due to delalloc
        btrfs: fix lockup in find_free_extent with read-only block groups
        Btrfs: fix dir item validation when replaying xattr deletes
      0a2a1330
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md · 9583f1c9
      Linus Torvalds authored
      Pull MD fixes from Shaohua Li:
       "This fixes several bugs, three of them are marked for stable:
      
         - an initialization issue fixed by Ming
      
         - a bio clone race issue fixed by me
      
         - an async tx flush issue fixed by Ofer
      
         - other cleanups"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md:
        MD: fix warnning for UP case
        md/raid5: add thread_group worker async_tx_issue_pending_all
        md: simplify code with bio_io_error
        md/raid1: fix writebehind bio clone
        md: raid1-10: move raid1/raid10 common code into raid1-10.c
        md: raid1/raid10: initialize bvec table via bio_add_page()
        md: remove 'idx' from 'struct resync_pages'
      9583f1c9
    • Linus Torvalds's avatar
      Merge tag 'for-4.13/dm-fixes' of... · 1731a474
      Linus Torvalds authored
      Merge tag 'for-4.13/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper fixes from Mike Snitzer:
      
       - a few DM integrity fixes that improve performance. One that address
         inefficiencies in the on-disk journal device layout. Another that
         makes use of the block layer's on-stack plugging when writing the
         journal.
      
       - a dm-bufio fix for the blk_status_t conversion that went in during
         the merge window.
      
       - a few DM raid fixes that address correctness when suspending the
         device and a validation fix for validation that occurs during device
         activation.
      
       - a couple DM zoned target fixes. Important one being the fix to not
         use GFP_KERNEL in the IO path due to concerns about deadlock in
         low-memory conditions (e.g. swap over a DM zoned device, etc).
      
       - a DM DAX device fix to make sure dm_dax_flush() is called if the
         underlying DAX device is operating as a write cache.
      
      * tag 'for-4.13/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm, dax: Make sure dm_dax_flush() is called if device supports it
        dm verity fec: fix GFP flags used with mempool_alloc()
        dm zoned: use GFP_NOIO in I/O path
        dm zoned: remove test for impossible REQ_OP_FLUSH conditions
        dm raid: bump target version
        dm raid: avoid mddev->suspended access
        dm raid: fix activation check in validate_raid_redundancy()
        dm raid: remove WARN_ON() in raid10_md_layout_to_format()
        dm bufio: fix error code in dm_bufio_write_dirty_buffers()
        dm integrity: test for corrupted disk format during table load
        dm integrity: WARN_ON if variables representing journal usage get out of sync
        dm integrity: use plugging when writing the journal
        dm integrity: fix inefficient allocation of journal space
      1731a474
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 0fa8dc42
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A small collection of fixes that should go into this series. This
        contains:
      
         - NVMe pull request from Christoph, with various fixes for nvme
           proper and nvme-fc.
      
         - disable runtime PM for blk-mq for now.
      
           With scsi now defaulting to using blk-mq, this reared its head as
           an issue. Longer term we'll fix up runtime PM for blk-mq, for now
           just disable it to prevent a hang on laptop resume for some folks.
      
         - blk-mq CPU <-> hw queue map fix from Christoph.
      
         - xen/blkfront pull request from Konrad, with two small fixes for the
           blkfront driver.
      
         - a few fixups for nbd from Joseph.
      
         - a stable fix for pblk from Javier"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        lightnvm: pblk: advance bio according to lba index
        nvme: validate admin queue before unquiesce
        nbd: clear disconnected on reconnect
        nvme-pci: fix HMB size calculation
        nvme-fc: revise TRADDR parsing
        nvme-fc: address target disconnect race conditions in fcp io submit
        nvme: fabrics commands should use the fctype field for data direction
        nvme: also provide a UUID in the WWID sysfs attribute
        xen/blkfront: always allocate grants first from per-queue persistent grants
        xen-blkfront: fix mq start/stop race
        blk-mq: map queues to all present CPUs
        block: disable runtime-pm for blk-mq
        xen-blkfront: Fix handling of non-supported operations
        nbd: only set sndtimeo if we have a timeout set
        nbd: take tx_lock before disconnecting
        nbd: allow multiple disconnects to be sent
      0fa8dc42
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · a2d48756
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "Here are a couple of mmc fixes intended for v4.13-rc1.
      
        I have also included a couple of cleanup patches in this pull request
        for OMAP2+, related to the omap_hsmmc driver. The reason is because of
        the changes are also depending on OMAP SoC specific code, so this
        simplifies how to deal with this.
      
        Summary:
      
        MMC host:
         - sunxi: Correct time phase settings
         - omap_hsmmc: Clean up some dead code
         - dw_mmc: Fix message printed for deprecated num-slots DT binding
         - dw_mmc: Fix DT documentation"
      
      * tag 'mmc-v4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        Documentation: dw-mshc: deprecate num-slots
        mmc: dw_mmc: fix the wrong condition check of getting num-slots from DT
        mmc: host: omap_hsmmc: remove unused platform callbacks
        ARM: OMAP2+: hsmmc.c: Remove dead code
        mmc: sunxi: Keep default timing phase settings for new timing mode
      a2d48756
    • Javier González's avatar
      lightnvm: pblk: advance bio according to lba index · 75cb8e93
      Javier González authored
      When a lba either hits the cache or corresponds to an empty entry in the
      L2P table, we need to advance the bio according to the position in which
      the lba is located. Otherwise, we will copy data in the wrong page, thus
      causing data corruption for the application.
      
      In case of a cache hit, we assumed that bio->bi_iter.bi_idx would
      contain the correct index, but this is no necessarily true. Instead, use
      the local bio advance counter and iterator. This guarantees that lbas
      hitting the cache are copied into the right bv_page.
      
      In case of an empty L2P entry, we omitted to advance the bio. In the
      cases when the same I/O also contains a cache hit, data corresponding
      to this lba will be copied to the wrong bv_page. Fix this by advancing
      the bio as we do in the case of a cache hit.
      
      Fixes: a4bd217b lightnvm: physical block device (pblk) target
      Signed-off-by: default avatarJavier González <javier@javigon.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      75cb8e93
    • Will Deacon's avatar
      arm64: mmu: Place guard page after mapping of kernel image · 92bbd16e
      Will Deacon authored
      The vast majority of virtual allocations in the vmalloc region are followed
      by a guard page, which can help to avoid overruning on vma into another,
      which may map a read-sensitive device.
      
      This patch adds a guard page to the end of the kernel image mapping (i.e.
      following the data/bss segments).
      
      Cc: Mark Rutland <mark.rutland@arm.com>
      Reviewed-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      92bbd16e
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-for-v4.13-rc3' of git://people.freedesktop.org/~airlied/linux · 0b5477d9
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "These iare the fixes for 4.13-rc3: vmwgfx, exynos, i915, amdgpu,
        nouveau, host1x and displayport fixes.
      
        As expected people woke up this week, i915 didn't do an -rc2 pull so
        got a bumper -rc3 pull, and Ben resurfaced on nouveau and fixed a
        bunch of major crashers seen on Fedora 26, and there are a few vmwgfx
        fixes as well.
      
        Otherwise exynos had some regression fixes/cleanups, and amdgpu has an
        rcu locking regression fix and a couple of minor fixes"
      
      * tag 'drm-fixes-for-v4.13-rc3' of git://people.freedesktop.org/~airlied/linux: (44 commits)
        drm/i915: Fix bad comparison in skl_compute_plane_wm.
        drm/i915: Force CPU synchronisation even if userspace requests ASYNC
        drm/i915: Only skip updating execobject.offset after error
        drm/i915: Only mark the execobject as pinned on success
        drm/i915: Remove assertion from raw __i915_vma_unpin()
        drm/i915/cnl: Fix loadgen select programming on ddi vswing sequence
        drm/i915: Fix scaler init during CRTC HW state readout
        drm/i915/selftests: Fix an error handling path in 'mock_gem_device()'
        drm/i915: Unbreak gpu reset vs. modeset locking
        gpu: host1x: Free the IOMMU domain when there is no device to attach
        drm/i915: Fix cursor updates on some platforms
        drm/i915: Fix user ptr check size in eb_relocate_vma()
        drm: exynos: mark pm functions as __maybe_unused
        drm/exynos: select CEC_CORE if CEC_NOTIFIER
        drm/exynos/hdmi: fix disable sequence
        drm/exynos: mic: add a bridge at probe
        drm/exynos/dsi: Remove error handling for bridge_node DT parsing
        drm/exynos: dsi: do not try to find bridge
        drm: exynos: hdmi: make of_device_ids const.
        drm: exynos: constify mixer_match_types and *_mxr_drv_data.
        ...
      0b5477d9
    • Dave Airlie's avatar
      Merge tag 'exynos-drm-fixes-for-v4.13-rc3' of... · 20806588
      Dave Airlie authored
      Merge tag 'exynos-drm-fixes-for-v4.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-fixes
      
      Summary:
      - fix probing fail issue of dsi driver without bridge device.
      - fix disable sequence of hdmi driver.
      - trivial cleanups.
      
      * tag 'exynos-drm-fixes-for-v4.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm: exynos: mark pm functions as __maybe_unused
        drm/exynos: select CEC_CORE if CEC_NOTIFIER
        drm/exynos/hdmi: fix disable sequence
        drm/exynos: mic: add a bridge at probe
        drm/exynos/dsi: Remove error handling for bridge_node DT parsing
        drm/exynos: dsi: do not try to find bridge
        drm: exynos: hdmi: make of_device_ids const.
        drm: exynos: constify mixer_match_types and *_mxr_drv_data.
        exynos_drm: Clean up duplicated assignment in exynos_drm_driver
      20806588
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2017-07-27' of... · d5bcd111
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2017-07-27' of git://anongit.freedesktop.org/git/drm-intel into drm-fixes
      
      i915 fixes for -rc3
      
      Bit more than usual since we missed -rc2. 4x cc: stable, 2 gvt
      patches, but all fairly minor stuff. Last minute rebase was to add a
      few missing cc: stable, I did prep the pull this morning already and
      made sure CI approves.
      
      * tag 'drm-intel-fixes-2017-07-27' of git://anongit.freedesktop.org/git/drm-intel:
        drm/i915: Fix bad comparison in skl_compute_plane_wm.
        drm/i915: Force CPU synchronisation even if userspace requests ASYNC
        drm/i915: Only skip updating execobject.offset after error
        drm/i915: Only mark the execobject as pinned on success
        drm/i915: Remove assertion from raw __i915_vma_unpin()
        drm/i915/cnl: Fix loadgen select programming on ddi vswing sequence
        drm/i915: Fix scaler init during CRTC HW state readout
        drm/i915/selftests: Fix an error handling path in 'mock_gem_device()'
        drm/i915: Unbreak gpu reset vs. modeset locking
        drm/i915: Fix cursor updates on some platforms
        drm/i915: Fix user ptr check size in eb_relocate_vma()
        drm/i915/gvt: Extend KBL platform support in GVT-g
        drm/i915/gvt: Fix the vblank timer close issue after shutdown VMs in reverse
      d5bcd111
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2017-07-27' of git://anongit.freedesktop.org/git/drm-misc into drm-fixes · 2213b666
      Dave Airlie authored
      Core Changes:
      - dp: A few fixes in drm_dp_downstream_debug() (Chris)
      - rockchip: sanitize the Kconfig dependencies (fallout from EXTCON) (Arnd)
      - host1x: Free the iommu domain when attach_device fails (Paul)
      
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Paul Kocialkowski <contact@paulk.fr>
      
      * tag 'drm-misc-fixes-2017-07-27' of git://anongit.freedesktop.org/git/drm-misc:
        gpu: host1x: Free the IOMMU domain when there is no device to attach
        drm/rockchip: fix Kconfig dependencies
        drm/dp: Don't trust drm_dp_downstream_id()
        drm/dp: Fix read pointer for drm_dp_downsteam_debug()
      2213b666
  3. 27 Jul, 2017 20 commits
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 0ce2f385
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "These are two fixups for the suspend-to-idle handling in the ACPI
        subsystem after recent changes in that area and two simple fixes of
        the ACPI NUMA code.
      
        Specifics:
      
         - Add an ACPI module parameter to allow users to override the new
           default behavior on some systems where the EC GPE is not disabled
           during suspend-to-idle in case the EC on their systems generates
           excessive wakeup events and they want to sacrifice some
           functionality (like power button wakeups) for extra battery life
           while suspended (Rafael Wysocki).
      
         - Fix flushing of the outstanding EC work in the ACPI core
           suspend-to-idle code (Rafael Wysocki).
      
         - Add a missing include and fix a messed-up comment in the ACPI NUMA
           code (Ross Zwisler)"
      
      * tag 'acpi-4.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: NUMA: Fix typo in the full name of SRAT
        ACPI: NUMA: add missing include in acpi_numa.h
        ACPI / PM / EC: Flush all EC work in acpi_freeze_sync()
        ACPI / EC: Add parameter to force disable the GPE on suspend
      0ce2f385
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-pm' and 'acpi-numa' · f6248dd8
      Rafael J. Wysocki authored
      * acpi-pm:
        ACPI / PM / EC: Flush all EC work in acpi_freeze_sync()
        ACPI / EC: Add parameter to force disable the GPE on suspend
      
      * acpi-numa:
        ACPI: NUMA: Fix typo in the full name of SRAT
        ACPI: NUMA: add missing include in acpi_numa.h
      f6248dd8
    • Daniel Vetter's avatar
      Merge tag 'gvt-fixes-2017-07-26' of https://github.com/01org/gvt-linux into drm-intel-fixes · 5fe220a1
      Daniel Vetter authored
      gvt-fixes-2017-07-26
      
      - Turn on KBL support for more SKUs (Jianjun)
      - Fix vblank timer close bug (Fred)
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170726075621.hrauvik62gi2jecj@zhen-hp.sh.intel.com
      5fe220a1
    • Maarten Lankhorst's avatar
      drm/i915: Fix bad comparison in skl_compute_plane_wm. · e9ba4032
      Maarten Lankhorst authored
      ddb_allocation && ddb_allocation / blocks_per_line >= 1 is the same
      as ddb_allocation >= blocks_per_line, so use the latter to simplify
      this.
      
      This fixes the following compiler warning:
      
      drivers/gpu/drm/i915/intel_pm.c:4467]: (warning) Comparison of a
      boolean expression with an integer other than 0 or 1.
      Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Fixes: d555cb58 ("drm/i915/skl+: use linetime latency if ddb size is not available")
      Cc: "Mahesh Kumar" <mahesh1.kumar@intel.com>
      Reported-by: default avatarDavid Binderman <dcb314@hotmail.com>
      Cc: David Binderman <dcb314@hotmail.com>
      Cc: <drm-intel-fixes@lists.freedesktop.org> # v4.13-rc1+
      Reviewed-by: default avatarMahesh Kumar <mahesh1.kumar@intel.com>
      (cherry picked from commit 54d20ed1)
      Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170717111355.4523-1-maarten.lankhorst@linux.intel.comSigned-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      e9ba4032
    • Chris Wilson's avatar
      drm/i915: Force CPU synchronisation even if userspace requests ASYNC · 7b98da66
      Chris Wilson authored
      The goal here was to minimise doing any thing or any check inside the
      kernel that was not strictly required. For a userspace that assumes
      complete control over the cache domains, the kernel is usually using
      outdated information and may trigger clflushes where none were
      required.
      
      However, swapping is a situation where userspace has no knowledge of the
      domain transfer, and will leave the object in the CPU cache. The kernel
      must flush this out to the backing storage prior to use with the GPU. As
      we use an asynchronous task tracked by an implicit fence for this, we
      also need to cancel the ASYNC flag on the object so that the object will
      wait for the clflush to complete before being executed. This also absolves
      userspace of the responsibility imposed by commit 77ae9957 ("drm/i915:
      Enable userspace to opt-out of implicit fencing") that its needed to ensure
      that the object was out of the CPU cache prior to use on the GPU.
      
      Fixes: 77ae9957 ("drm/i915: Enable userspace to opt-out of implicit fencing")
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101571Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Jason Ekstrand <jason@jlekstrand.net>
      Reviewed-by: default avatarJason Ekstrand <jason@jlekstrand.net>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170721145037.25105-5-chris@chris-wilson.co.ukReviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      (cherry picked from commit 0f46daa1)
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      7b98da66
    • Chris Wilson's avatar
      drm/i915: Only skip updating execobject.offset after error · adf27835
      Chris Wilson authored
      I was being overly paranoid in not updating the execobject.offset after
      performing the fallback copy where we set reloc.presumed_offset to -1.
      The thinking was to ensure that a subsequent NORELOC execbuf would be
      forced to process the invalid relocations. However this is overkill so
      long as we *only* update the execobject.offset following a successful
      update of the relocation value witin the batch. If we have to repeat the
      execbuf due to a later interruption, then we may skip the relocations on
      the second pass (honouring NORELOC) since the execobject.offset match
      the actual offsets (even though reloc.presumed_offset is garbage).
      
      Subsequent calls to execbuf with NORELOC should themselves ensure that
      the reloc.presumed_offset have been corrected in case of future
      migration.
      
      Reporting back the actual execobject.offset, even when
      reloc.presumed_offset is garbage, ensures that reuse of those objects
      use the latest information to avoid relocations.
      
      Fixes: 2889caa9 ("drm/i915: Eliminate lots of iterations over the execobjects array")
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101635Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170721145037.25105-4-chris@chris-wilson.co.ukReviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      (cherry picked from commit 1f727d9e)
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      adf27835
    • Chris Wilson's avatar
      drm/i915: Only mark the execobject as pinned on success · bed8d1c8
      Chris Wilson authored
      If we fail to acquire a fence (for old school fenced GPU access) then we
      unwind the vma reservation, including its pin. However, we were making
      the execobject as holding the pin before erring out, leading to a double
      unpin:
      
      [ 3193.991802] kernel BUG at drivers/gpu/drm/i915/i915_vma.h:287!
      [ 3193.998131] invalid opcode: 0000 [#1] PREEMPT SMP
      [ 3194.002816] Modules linked in: snd_hda_intel i915 vgem snd_hda_codec_analog snd_hda_codec_generic coretemp snd_hda_codec snd_hwdep snd_hda_core snd_pcm lpc_ich mei_me e1000e mei prime_numbers ptp pps_core [last unloaded: i915]
      [ 3194.022841] CPU: 0 PID: 8123 Comm: kms_flip Tainted: G     U          4.13.0-rc1-CI-CI_DRM_471+ #1
      [ 3194.031765] Hardware name: Dell Inc. OptiPlex 755                 /0PU052, BIOS A04 11/05/2007
      [ 3194.040343] task: ffff8800785d4c40 task.stack: ffffc90001768000
      [ 3194.046339] RIP: 0010:eb_release_vmas.isra.6+0x119/0x180 [i915]
      [ 3194.052234] RSP: 0018:ffffc9000176ba80 EFLAGS: 00010246
      [ 3194.057439] RAX: 00000000000003c0 RBX: ffff8800710fc2d8 RCX: ffff8800588e4f48
      [ 3194.064546] RDX: ffffffff1fffffff RSI: 00000000ffffffff RDI: ffff8800588e00d0
      [ 3194.071654] RBP: ffffc9000176bab0 R08: 0000000000000000 R09: 0000000000000000
      [ 3194.078761] R10: 0000000000000040 R11: 0000000000000001 R12: ffff880060822f00
      [ 3194.085867] R13: 0000000000000310 R14: 00000000000003b8 R15: ffffc9000176bbb0
      [ 3194.092975] FS:  00007fd2b94aba40(0000) GS:ffff88007d200000(0000) knlGS:0000000000000000
      [ 3194.101033] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 3194.106754] CR2: 00007ffbec3ff000 CR3: 0000000074e67000 CR4: 00000000000006f0
      [ 3194.113861] Call Trace:
      [ 3194.116321]  eb_relocate_slow+0x67/0x4e0 [i915]
      [ 3194.120861]  i915_gem_do_execbuffer+0x429/0x1260 [i915]
      [ 3194.126070]  ? lock_acquire+0xb5/0x210
      [ 3194.129803]  ? __might_fault+0x39/0x90
      [ 3194.133563]  i915_gem_execbuffer2+0x9b/0x1b0 [i915]
      [ 3194.138447]  ? i915_gem_execbuffer+0x2b0/0x2b0 [i915]
      [ 3194.143478]  drm_ioctl_kernel+0x64/0xb0
      [ 3194.147298]  drm_ioctl+0x2cd/0x390
      [ 3194.150710]  ? i915_gem_execbuffer+0x2b0/0x2b0 [i915]
      [ 3194.155741]  ? finish_task_switch+0xa5/0x210
      [ 3194.159993]  ? finish_task_switch+0x6a/0x210
      [ 3194.164247]  do_vfs_ioctl+0x90/0x670
      [ 3194.167806]  ? entry_SYSCALL_64_fastpath+0x5/0xb1
      [ 3194.172492]  ? __this_cpu_preempt_check+0x13/0x20
      [ 3194.177176]  ? trace_hardirqs_on_caller+0xe7/0x1c0
      [ 3194.181946]  SyS_ioctl+0x3c/0x70
      [ 3194.185159]  entry_SYSCALL_64_fastpath+0x1c/0xb1
      [ 3194.189756] RIP: 0033:0x7fd2b76a8587
      [ 3194.193314] RSP: 002b:00007fff074845b8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
      [ 3194.200855] RAX: ffffffffffffffda RBX: ffffffff8146da43 RCX: 00007fd2b76a8587
      [ 3194.207962] RDX: 00007fff074846e0 RSI: 0000000040406469 RDI: 0000000000000003
      [ 3194.215068] RBP: ffffc9000176bf88 R08: 0000000000000000 R09: 0000000000000003
      [ 3194.222175] R10: 00007fd2b796bb58 R11: 0000000000000246 R12: 00007fff07484880
      [ 3194.229280] R13: 0000000000000003 R14: 0000000040406469 R15: 0000000000000000
      [ 3194.236386]  ? __this_cpu_preempt_check+0x13/0x20
      [ 3194.241070] Code: 24 b0 00 00 00 48 85 c9 0f 84 6c ff ff ff 8b 41 20 85 c0 7e 73 83 e8 01 89 41 20 41 8b 84 24 e8 00 00 00 a8 0f 0f 85 5f ff ff ff <0f> 0b 48 83 c4 08 5b 41 5c 41 5d 41 5e 41 5f 5d f3 c3 49 8b 84
      [ 3194.259943] RIP: eb_release_vmas.isra.6+0x119/0x180 [i915] RSP: ffffc9000176ba80
      [ 3194.268047] ---[ end trace 1d7348c6575d8800 ]---
      [ 3673.658819] softdog: Initiating panic
      [ 3673.662471] Kernel panic - not syncing: Software Watchdog Timer expired
      [ 3673.669066] Kernel Offset: disabled
      [ 3673.672541] Rebooting in 1 seconds..
      Reported-by: default avatarTomi Sarvela <tomi.p.sarvela@intel.com>
      Fixes: 2889caa9 ("drm/i915: Eliminate lots of iterations over the execobjects array")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170721145037.25105-3-chris@chris-wilson.co.ukReviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      (cherry picked from commit 1da7b54c)
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      bed8d1c8
    • Chris Wilson's avatar
      drm/i915: Remove assertion from raw __i915_vma_unpin() · a6c00779
      Chris Wilson authored
      After we detect a i915_vma pin overflow, we call __i915_vma_unpin to
      cleanup. However, on an overflow the pin_count bitfield will be zero,
      triggering an assertion, even though we the intention is to merely warn
      and report the error back to the user (as historically the culprit has
      be a leak in the display code).
      
      Fixes: 20dfbde4 ("drm/i915: Wrap vma->pin_count accessors with small inline helpers")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170721145037.25105-2-chris@chris-wilson.co.ukReviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      (cherry picked from commit 67fddd90)
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      a6c00779
    • Navare, Manasi D's avatar
      drm/i915/cnl: Fix loadgen select programming on ddi vswing sequence · 5846a73f
      Navare, Manasi D authored
      The condition for setting the Loadgen Select bit of
      PORT_TX_DW4 register during DDI Vswing Sequence should be
      Bit rate <=6 GHz whereas the existing code checks only
      Bit Rate < 6GHz. This patch fixes this condition.
      While at it also remove the redundant paranthesis.
      
      Fixes: cf54ca8b ("drm/i915/cnl: Implement voltage swing sequence.")
      Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Signed-off-by: default avatarManasi Navare <manasi.d.navare@intel.com>
      Reviewed-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/1500329122-32662-1-git-send-email-manasi.d.navare@intel.comSigned-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      (cherry picked from commit a8e45a1c)
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      5846a73f
    • Imre Deak's avatar
      drm/i915: Fix scaler init during CRTC HW state readout · 283d6860
      Imre Deak authored
      The scaler allocation code depends on a non-zero default value for the
      crtc scaler_id, so make sure we initialize the scaler state accordingly
      even if the crtc is off. This fixes at least an initial YUV420 modeset
      (added in a follow-up patchset by Shashank) when booting with the screen
      off: after the initial HW readout and modeset which enables the scaler a
      subsequent modeset will disable the scaler which isn't properly
      allocated. This results in a funky HW state where the pipe scaler HW
      registers can't be modified and the normally black screen is grey and
      shifted to the right or jitters.
      
      The problem was revealed by Shashank's YUV420 patchset and first
      reported by Ville.
      
      v2:
      - In the stable tag also include versions which need backporting (Jani)
      
      Cc: Jani Nikula <jani.nikula@intel.com>
      Cc: Shashank Sharma <shashank.sharma@intel.com>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Cc: Chandra Konduru <chandra.konduru@intel.com>
      Cc: Matt Roper <matthew.d.roper@intel.com>
      Cc: <stable@vger.kernel.org> # 4.2.x
      Reported-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Fixes: a1b2278e ("drm/i915: skylake panel fitting using shared scalers")
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Reviewed-by: default avatarMahesh Kumar <mahesh1.kumar@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170720112820.26816-1-imre.deak@intel.comSigned-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      (cherry picked from commit 5fb9dadf)
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      283d6860
    • Christophe JAILLET's avatar
      drm/i915/selftests: Fix an error handling path in 'mock_gem_device()' · 3d911425
      Christophe JAILLET authored
      Goto the right label in case of error, otherwise there is a leak.
      This has been introduced by c5cf9a91. In this patch a goto has not been
      updated.
      
      Fixes: c5cf9a91 ("drm/i915: Create a kmem_cache to allocate struct i915_priolist from")
      Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170719223503.30580-1-christophe.jaillet@wanadoo.frReviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      (cherry picked from commit a5ec7fe8)
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      3d911425
    • Daniel Vetter's avatar
      drm/i915: Unbreak gpu reset vs. modeset locking · 4706ca77
      Daniel Vetter authored
      Taking the modeset locks unconditionally isn't the greatest idea,
      because atm that part is still broken and times out (and then atomic
      keels over). And there's really no reason to do so, the old code
      didn't do that either.
      
      To make the patch a bit simpler let's also nuke 2 cases that are only
      around for the old mmioflip paths. Atomic nonblocking workers will not
      die (minus bugs) when a gpu reset happens.
      
      And of course this doesn't fix any of the gpu reset vs. modeset
      deadlock fun, but it at least stop modern CI machines from keeling
      over all over the place for no reason at all.
      
      And we still have the explicit testcases to run the fake gpu reset, so
      coverage isn't that much worse.
      
      v2: Split out additional changes on top, restrict this to purely reducing
      the critical section of modeset locks.
      
      v2: Review from Maarten
      - update comments
      - don't oops when state is NULL in intel_finish_reset, but try to at
        least still drop locks properly. The hw is going to be toast anyway.
      
      Fixes: 73974893 ("drm/i915: Fix modeset handling during gpu reset, v5.")
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170719125502.25696-3-daniel.vetter@ffwll.ch
      (cherry picked from commit ce87ea15)
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      4706ca77
    • Linus Torvalds's avatar
      Merge branch 'parisc-4.13-3' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · 36cb531d
      Linus Torvalds authored
      Pull parisc fixes from Helge Deller:
      
       - The majority of lines changed are due to regenerated defconfig files.
      
       - The support for the Page Deallocation Table (PDT) which was merged in
         the merge window for 4.13 contained a bug which crashes the kernel if
         a bad page is reported by firmware. This is now fixed and the kernel
         messages will show which memory slot holds the broken DIMM.
      
       - Commit 3a166fc2 ("kbuild: handle libs-y archives separately from
         built-in.o archives") broke linking the parisc kernel due to
         millicode symbols which can't be reached then any longer. This was
         fixed by modifying the parisc vmlinux.lds linker script.
      
       - If the stack checker panics on stack overflow, avoid recursive
         panics.
      
       - Some parisc machines can't physically power off and thus instead
         start after some time to flood the console by presumably detected
         soft lockups. Avoid this by disabling the lockup detectors before
         entering the endless for-next loop.
      
       - Dave Anglin provided fixes which prevents TLB speculation on flushed
         pages on PA8800/PA9000 CPUs.
      
       - Arvind Yadav sent a trivial patch to constify the attribute_group
         structure in our firmware on-board-flash storage driver
         (pdc_stable.c)
      
      * 'parisc-4.13-3' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Extend disabled preemption in copy_user_page
        parisc: Prevent TLB speculation on flushed pages on CPUs that only support equivalent aliases
        parisc: Suspend lockup detectors before system halt
        parisc: Show DIMM slot number which holds broken memory module
        parisc: Add function to return DIMM slot of physical address
        parisc: Fix crash when calling PDC_PAT_MEM PDT firmware function
        parisc: regenerate defconfig files
        parisc: pdc_stable: constify attribute_group structures.
        parisc: Merge millicode routines via linker script
        parisc: Disable further stack checks when panic occurs during stack check
      36cb531d
    • Juergen Gross's avatar
      xen: dont fiddle with event channel masking in suspend/resume · e91b2b11
      Juergen Gross authored
      Instead of fiddling with masking the event channels during suspend
      and resume handling let do the irq subsystem do its job. It will do
      the mask and unmask operations as needed.
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Tested-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      e91b2b11
    • Gustavo A. R. Silva's avatar
      xen: selfballoon: remove unnecessary static in frontswap_selfshrink() · 03993730
      Gustavo A. R. Silva authored
      Remove unnecessary static on local variables last_frontswap_pages and
      tgt_frontswap_pages. Such variables are initialized before being used,
      on every execution path throughout the function. The statics have no
      benefit and, removing them reduce the code size.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @bad exists@
      position p;
      identifier x;
      type T;
      @@
      
      static T x@p;
      ...
      x = <+...x...+>
      
      @@
      identifier x;
      expression e;
      type T;
      position p != bad.p;
      @@
      
      -static
       T x@p;
       ... when != x
           when strict
      ?x = e;
      
      You can see a significant difference in the code size after executing
      the size command, before and after the code change:
      
      before:
         text	   data	    bss	    dec	    hex	filename
         5633	   3452	    384	   9469	   24fd	drivers/xen/xen-selfballoon.o
      
      after:
         text	   data	    bss	    dec	    hex	filename
         5576	   3308	    256	   9140	   23b4	drivers/xen/xen-selfballoon.o
      Signed-off-by: default avatarGustavo A. R. Silva <garsilva@embeddedor.com>
      Reviewed-by: default avatarJuergen Gross <jgross@suse.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      03993730
    • Punit Agrawal's avatar
      xen: Drop un-informative message during boot · d02ca074
      Punit Agrawal authored
      On systems that are not booted as a Xen domain, the xenfs driver prints
      the following message during boot.
      
      [    3.460595] xenfs: not registering filesystem on non-xen platform
      
      As the user chose not to boot a Xen domain, this message does not
      provide useful information. Drop this message.
      Signed-off-by: default avatarPunit Agrawal <punit.agrawal@arm.com>
      Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
      Cc: Juergen Gross <jgross@suse.com>
      Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      d02ca074
    • Linus Torvalds's avatar
      Merge tag 'sound-4.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 8cdaad96
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "This is a pretty boring pull request, containing a few HD-audio quirks
        and ID updates as usual suspects, as well as a fix for a regression of
        FM801 chip on ia64 (what a legacy combination!)"
      
      * tag 'sound-4.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - Add mute led support for HP ProBook 440 G4
        ALSA: hda/realtek - No loopback on ALC225/ALC295 codec
        ALSA: hda/realtek - Update headset mode for ALC225
        ALSA: fm801: Initialize chip after IRQ handler is registered
        ALSA: hda/realtek - Update headset mode for ALC298
        ALSA: hda - Add missing NVIDIA GPU codec IDs to patch table
      8cdaad96
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm · 60187bd4
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
       "Two areas addressed by these fixes:
      
         - Fixes from Dave Martin for the signal frames that were broken with
           certain configurations. No one noticed until recently.
      
         - More kexec fixes to ensure that the crashkernel region is correctly
           allocated, and a fix for the location of the device tree when
           several kexec kernels are loaded"
      
      * 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: 8687/1: signal: Fix unparseable iwmmxt_sigframe in uc_regspace[]
        ARM: 8686/1: iwmmxt: Add missing __user annotations to sigframe accessors
        ARM: kexec: fix failure to boot crash kernel
        ARM: kexec: avoid allocating crashkernel region outside lowmem
      60187bd4
    • NeilBrown's avatar
      NFS: Optimize fallocate by refreshing mapping when needed. · 6ba80d43
      NeilBrown authored
      posix_fallocate() will allocate space in an NFS file by considering
      the last byte of every 4K block.  If it is before EOF, it will read
      the byte and if it is zero, a zero is written out.  If it is after EOF,
      the zero is unconditionally written.
      
      For the blocks beyond EOF, if NFS believes its cache is valid, it will
      expand these writes to write full pages, and then will merge the pages.
      This results if (typically) 1MB writes.  If NFS believes its cache is
      not valid (particularly if NFS_INO_INVALID_DATA or
      NFS_INO_REVAL_PAGECACHE are set - see nfs_write_pageuptodate()), it will
      send the individual 1-byte writes. This results in (typically) 256 times
      as many RPC requests, and can be substantially slower.
      
      Currently nfs_revalidate_mapping() is only used when reading a file or
      mmapping a file, as these are times when the content needs to be
      up-to-date.  Writes don't generally need the cache to be up-to-date, but
      writes beyond EOF can benefit, particularly in the posix_fallocate()
      case.
      
      So this patch calls nfs_revalidate_mapping() when writing beyond EOF -
      i.e. when there is a gap between the end of the file and the start of
      the write.  If the cache is thought to be out of date (as happens after
      taking a file lock), this will cause a GETATTR, and the two flags
      mentioned above will be cleared.  With this, posix_fallocate() on a
      newly locked file does not generate excessive tiny writes.
      Signed-off-by: default avatarNeilBrown <neilb@suse.com>
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      6ba80d43
    • NeilBrown's avatar
      NFS: invalidate file size when taking a lock. · 442ce049
      NeilBrown authored
      Prior to commit ca0daa27 ("NFS: Cache aggressively when file is open
      for writing"), NFS would revalidate, or invalidate, the file size when
      taking a lock.  Since that commit it only invalidates the file content.
      
      If the file size is changed on the server while wait for the lock, the
      client will have an incorrect understanding of the file size and could
      corrupt data.  This particularly happens when writing beyond the
      (supposed) end of file and can be easily be demonstrated with
      posix_fallocate().
      
      If an application opens an empty file, waits for a write lock, and then
      calls posix_fallocate(), glibc will determine that the underlying
      filesystem doesn't support fallocate (assuming version 4.1 or earlier)
      and will write out a '0' byte at the end of each 4K page in the region
      being fallocated that is after the end of the file.
      NFS will (usually) detect that these writes are beyond EOF and will
      expand them to cover the whole page, and then will merge the pages.
      Consequently, NFS will write out large blocks of zeroes beyond where it
      thought EOF was.  If EOF had moved, the pre-existing part of the file
      will be over-written.  Locking should have protected against this,
      but it doesn't.
      
      This patch restores the use of nfs_zap_caches() which invalidated the
      cached attributes.  When posix_fallocate() asks for the file size, the
      request will go to the server and get a correct answer.
      
      cc: stable@vger.kernel.org (v4.8+)
      Fixes: ca0daa27 ("NFS: Cache aggressively when file is open for writing")
      Signed-off-by: default avatarNeilBrown <neilb@suse.com>
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      442ce049