1. 13 Jan, 2019 15 commits
    • Linus Torvalds's avatar
      Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · dbc3c09b
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "A bigger batch than I anticipated this week, for two reasons:
      
         - Some fallout on Davinci from board file -> DTB conversion, that
           also includes a few longer-standing fixes (i.e. not recent
           regressions).
      
         - drivers/reset material that has been in linux-next for a while, but
           didn't get sent to us until now for a variety of reasons
           (maintainer out sick, holidays, etc). There's a functional
           dependency in there such that one platform (Altera's SoCFPGA) won't
           boot without one of the patches; instead of reverting the patch
           that got merged, I looked at this set and decided it was small
           enough that I'll pick it up anyway. If you disagree I can revisit
           with a smaller set.
      
        That being said, there's also a handful of the usual stuff:
      
         - Fix for a crash on Armada 7K/8K when the kernel touches
           PSCI-reserved memory
      
         - Fix for PCIe reset on Macchiatobin (Armada 8K development board,
           what this email is sent from in fact :)
      
         - Enable a few new-merged modules for Amlogic in arm64 defconfig
      
         - Error path fixes on Integrator
      
         - Build fix for Renesas and Qualcomm
      
         - Initialization fix for Renesas RZ/G2E
      
        .. plus a few more fixlets"
      
      * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (28 commits)
        ARM: integrator: impd1: use struct_size() in devm_kzalloc()
        qcom-scm: Include <linux/err.h> header
        gpio: pl061: handle failed allocations
        ARM: dts: kirkwood: Fix polarity of GPIO fan lines
        arm64: dts: marvell: mcbin: fix PCIe reset signal
        arm64: dts: marvell: armada-ap806: reserve PSCI area
        ARM: dts: da850-lcdk: Correct the sound card name
        ARM: dts: da850-lcdk: Correct the audio codec regulators
        ARM: dts: da850-evm: Correct the sound card name
        ARM: dts: da850-evm: Correct the audio codec regulators
        ARM: davinci: omapl138-hawk: fix label names in GPIO lookup entries
        ARM: davinci: dm644x-evm: fix label names in GPIO lookup entries
        ARM: davinci: dm355-evm: fix label names in GPIO lookup entries
        ARM: davinci: da850-evm: fix label names in GPIO lookup entries
        ARM: davinci: da830-evm: fix label names in GPIO lookup entries
        arm64: defconfig: enable modules for amlogic s400 sound card
        reset: uniphier-glue: Add AHCI reset control support in glue layer
        dt-bindings: reset: uniphier: Add AHCI core reset description
        reset: uniphier-usb3: Rename to reset-uniphier-glue
        dt-bindings: reset: uniphier: Replace the expression of USB3 with generic peripherals
        ...
      dbc3c09b
    • Linus Torvalds's avatar
      Merge tag 'for-5.0-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 6b529fb0
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
      
       - two regression fixes in clone/dedupe ioctls, the generic check
         callback needs to lock extents properly and wait for io to avoid
         problems with writeback and relocation
      
       - fix deadlock when using free space tree due to block group creation
      
       - a recently added check refuses a valid fileystem with seeding device,
         make that work again with a quickfix, proper solution needs more
         intrusive changes
      
      * tag 'for-5.0-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: Use real device structure to verify dev extent
        Btrfs: fix deadlock when using free space tree due to block group creation
        Btrfs: fix race between reflink/dedupe and relocation
        Btrfs: fix race between cloning range ending at eof and writeback
      6b529fb0
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 72d657dd
      Linus Torvalds authored
      Pull driver core fixes from Greg KH:
       "Here is one small sysfs change, and a documentation update for 5.0-rc2
      
        The sysfs change moves from using BUG_ON to WARN_ON, as discussed in
        an email thread on lkml while trying to track down another driver bug.
        sysfs should not be crashing and preventing people from seeing where
        they went wrong. Now it properly recovers and warns the developer.
      
        The documentation update removes the use of BUS_ATTR() as the kernel
        is moving away from this to use the specific BUS_ATTR_RW() and friends
        instead. There are pending patches in all of the different subsystems
        to remove the last users of this macro, but for now, don't advertise
        it should be used anymore to keep new ones from being introduced.
      
        Both have been in linux-next with no reported issues"
      
      * tag 'driver-core-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        Documentation: driver core: remove use of BUS_ATTR
        sysfs: convert BUG_ON to WARN_ON
      72d657dd
    • Linus Torvalds's avatar
      Merge tag 'staging-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · f7c1038b
      Linus Torvalds authored
      Pull staging driver fixes from Greg KH:
       "Here are some small staging driver fixes for some reported issues.
      
        One reverts a patch that was made to the rtl8723bs driver that turned
        out to not be needed at all as it was a bug in clang. The others fix
        up some reported issues in the rtl8188eu driver and update the
        MAINTAINERS file to point to Larry for this driver so he can get the
        bug reports easier.
      
        All have been in linux-next with no reported issues"
      
      * tag 'staging-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        Revert "staging: rtl8723bs: Mark ACPI table declaration as used"
        staging: rtl8188eu: Fix module loading from tasklet for WEP encryption
        staging: rtl8188eu: Fix module loading from tasklet for CCMP encryption
        MAINTAINERS: Add entry for staging driver r8188eu
      f7c1038b
    • Linus Torvalds's avatar
      Merge tag 'tty-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 437e878a
      Linus Torvalds authored
      Pull tty/serial fixes from Greg KH:
       "Here are 2 tty and serial fixes for 5.0-rc2 that resolve some reported
        issues.
      
        The first is a simple serial driver fix for a regression that showed
        up in 5.0-rc1. The second one resolves a number of reported issues
        with the recent tty locking fixes that went into 5.0-rc1. Lots of
        people have tested the second one and say it resolves their issues.
      
        Both have been in linux-next with no reported issues"
      
      * tag 'tty-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: Don't hold ldisc lock in tty_reopen() if ldisc present
        serial: lantiq: Do not swap register read/writes
      437e878a
    • Linus Torvalds's avatar
      Merge tag 'usb-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 1dd8a3f6
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some small USB driver fixes and quirk updates for 5.0-rc2.
      
        The majority here are some quirks for some storage devices to get them
        to work properly. There's also a fix here to resolve the reported
        issues with some audio devices that say they are UAC3 compliant, but
        really are not.
      
        And a fix up for the MAINTAINERS file to remove a dead url.
      
        All have been in linux-next with no reported issues"
      
      * tag 'usb-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: storage: Remove outdated URL from MAINTAINERS
        USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB
        usbcore: Select only first configuration for non-UAC3 compliant devices
        USB: storage: add quirk for SMI SM3350
        USB: storage: don't insert sane sense for SPC3+ when bad sense specified
        usb: cdc-acm: send ZLP for Telit 3G Intel based modems
      1dd8a3f6
    • Linus Torvalds's avatar
      Merge tag '5.0-rc1-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 0f9d140a
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "A set of cifs/smb3 fixes, 4 for stable, most from Pavel. His patches
        fix an important set of crediting (flow control) problems, and also
        two problems in cifs_writepages, ddressing some large i/o and also
        compounding issues"
      
      * tag '5.0-rc1-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: update internal module version number
        CIFS: Fix error paths in writeback code
        CIFS: Move credit processing to mid callbacks for SMB3
        CIFS: Fix credits calculation for cancelled requests
        cifs: Fix potential OOB access of lock element array
        cifs: Limit memory used by lock request calls to a page
        cifs: move large array from stack to heap
        CIFS: Do not hide EINTR after sending network packets
        CIFS: Fix credit computation for compounded requests
        CIFS: Do not set credits to 1 if the server didn't grant anything
        CIFS: Fix adjustment of credits for MTU requests
        cifs: Fix a tiny potential memory leak
        cifs: Fix a debug message
      0f9d140a
    • Olof Johansson's avatar
      Merge tag 'reset-for-5.0-rc2' of git://git.pengutronix.de/git/pza/linux into fixes · 46561217
      Olof Johansson authored
      Late reset controller changes for v5.0
      
      This adds missing deassert functionality to the ARC HSDK reset driver,
      fixes some indentation and grammar issues in the kernel docs, adds a
      helper to count the number of resets on a device for the non-DT case
      as well, adds an early reset driver for SoCFPGA and simple reset driver
      support for Stratix10, and generalizes the uniphier USB3 glue layer
      reset to also cover AHCI.
      
      * tag 'reset-for-5.0-rc2' of git://git.pengutronix.de/git/pza/linux:
        reset: uniphier-glue: Add AHCI reset control support in glue layer
        dt-bindings: reset: uniphier: Add AHCI core reset description
        reset: uniphier-usb3: Rename to reset-uniphier-glue
        dt-bindings: reset: uniphier: Replace the expression of USB3 with generic peripherals
        ARM: socfpga: dts: document "altr,stratix10-rst-mgr" binding
        reset: socfpga: add an early reset driver for SoCFPGA
        reset: fix null pointer dereference on dev by dev_name
        reset: Add reset_control_get_count()
        reset: Improve reset controller kernel docs
        ARC: HSDK: improve reset driver
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      46561217
    • Olof Johansson's avatar
      Merge tag 'mvebu-fixes-5.0-1' of git://git.infradead.org/linux-mvebu into fixes · 56acb3ef
      Olof Johansson authored
      mvebu fixes for 5.0
      
      They are all device tree fixes which also worth being in stable:
      
       - Reserve PSCI area on Armada 7K/8K preventing the kernel accessing
         this area and crashing while doing it.
      
       - Use correct PCIe reset signal on MACCHIATOBin  (Armada 8040 based)
      
       - Fix polarity of GPIO fan line D-Link DNS NASes(kikwood based)
      
      * tag 'mvebu-fixes-5.0-1' of git://git.infradead.org/linux-mvebu:
        ARM: dts: kirkwood: Fix polarity of GPIO fan lines
        arm64: dts: marvell: mcbin: fix PCIe reset signal
        arm64: dts: marvell: armada-ap806: reserve PSCI area
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      56acb3ef
    • Olof Johansson's avatar
      Merge tag 'integrator-fixes-armsoc' of... · 2ec472ed
      Olof Johansson authored
      Merge tag 'integrator-fixes-armsoc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator into fixes
      
      Fixes for the Integrator:
      - Handle failed allocations in the IM/PC bus attachment.
      - Use struct_size() for allocation.
      
      * tag 'integrator-fixes-armsoc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
        ARM: integrator: impd1: use struct_size() in devm_kzalloc()
        gpio: pl061: handle failed allocations
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      2ec472ed
    • Olof Johansson's avatar
      Merge tag 'amlogic-fixes' of... · 431a8b73
      Olof Johansson authored
      Merge tag 'amlogic-fixes' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into fixes
      
      Amlogic DT fixes for v5.0-rc
      - arm64: defconfig: enable modules for amlogic s400 sound card
      
      * tag 'amlogic-fixes' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
        arm64: defconfig: enable modules for amlogic s400 sound card
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      431a8b73
    • Olof Johansson's avatar
      Merge tag 'qcom-fixes-for-5.0-rc1' of... · f4f8aa6d
      Olof Johansson authored
      Merge tag 'qcom-fixes-for-5.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into fixes
      
      Qualcomm Driver Fixes for 5.0-rc1
      
      * Add required includes into qcom_scm.h
      
      * tag 'qcom-fixes-for-5.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
        qcom-scm: Include <linux/err.h> header
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      f4f8aa6d
    • Olof Johansson's avatar
      Merge tag 'davinci-fixes-for-v5.0' of... · 98a5f673
      Olof Johansson authored
      Merge tag 'davinci-fixes-for-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into fixes
      
      This pull request fixes some more regressions on legacy
      DaVinci board support due to GPIO driver clean-up introduced
      in v4.20 kernel. These are marked for stable.
      
      Also has fixes for some long standing Audio issues on DA850
      boards.
      
      * tag 'davinci-fixes-for-v5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
        ARM: dts: da850-lcdk: Correct the sound card name
        ARM: dts: da850-lcdk: Correct the audio codec regulators
        ARM: dts: da850-evm: Correct the sound card name
        ARM: dts: da850-evm: Correct the audio codec regulators
        ARM: davinci: omapl138-hawk: fix label names in GPIO lookup entries
        ARM: davinci: dm644x-evm: fix label names in GPIO lookup entries
        ARM: davinci: dm355-evm: fix label names in GPIO lookup entries
        ARM: davinci: da850-evm: fix label names in GPIO lookup entries
        ARM: davinci: da830-evm: fix label names in GPIO lookup entries
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      98a5f673
    • Olof Johansson's avatar
      Merge tag 'renesas-fixes-for-v5.0' of... · 70bf439a
      Olof Johansson authored
      Merge tag 'renesas-fixes-for-v5.0' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes
      
      Renesas ARM Based SoC Fixes for v5.0
      
      Renesas SoCs:
      * Fix build regressions caused by move of Kconfig symbols
      
      RZ/G2E (r8a774c0) SoC:
      * Correct initialization order of 3DG-{A,B} in SYSC driver
      
      * tag 'renesas-fixes-for-v5.0' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        soc: renesas: r8a774c0-sysc: Fix initialization order of 3DG-{A,B}
        ARM: shmobile: fix build regressions
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      70bf439a
    • John Hubbard's avatar
      phy: fix build breakage: add PHY_MODE_SATA · e1706720
      John Hubbard authored
      Commit 49e54187 ("ata: libahci_platform: comply to PHY framework") uses
      the PHY_MODE_SATA, but that enum had not yet been added. This caused a
      build failure for me, with today's linux.git.
      
      Also, there is a potentially conflicting (mis-named) PHY_MODE_SATA, hiding
      in the Marvell Berlin SATA PHY driver.
      
      Fix the build by:
      
          1) Renaming Marvell's defined value to a more scoped name,
             in order to avoid any potential conflicts: PHY_BERLIN_MODE_SATA.
      
          2) Adding the missing enum, which was going to be added anyway as part
             of [1].
      
      [1] https://lkml.kernel.org/r/20190108163124.6409-3-miquel.raynal@bootlin.com
      
      Fixes: 49e54187 ("ata: libahci_platform: comply to PHY framework")
      Signed-off-by: default avatarJohn Hubbard <jhubbard@nvidia.com>
      Acked-by: default avatarJens Axboe <axboe@kernel.dk>
      Acked-by: default avatarOlof Johansson <olof@lixom.net>
      Cc: Grzegorz Jaszczyk <jaz@semihalf.com>
      Cc: Miquel Raynal <miquel.raynal@bootlin.com>
      Cc: Hans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      e1706720
  2. 12 Jan, 2019 4 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20190112' of git://git.kernel.dk/linux-block · b8c3b899
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request from Christoph, with little fixes all over the map
      
       - Loop caching fix for offset/bs change (Jaegeuk Kim)
      
       - Block documentation tweaks (Jeff, Jon, Weiping, John)
      
       - null_blk zoned tweak (John)
      
       - ahch mvebu suspend/resume support. Should have gone into the merge
         window, but there was some confusion on which tree had it. (Miquel)
      
      * tag 'for-linus-20190112' of git://git.kernel.dk/linux-block: (22 commits)
        ata: ahci: mvebu: request PHY suspend/resume for Armada 3700
        ata: ahci: mvebu: add Armada 3700 initialization needed for S2RAM
        ata: ahci: mvebu: do Armada 38x configuration only on relevant SoCs
        ata: ahci: mvebu: remove stale comment
        ata: libahci_platform: comply to PHY framework
        loop: drop caches if offset or block_size are changed
        block: fix kerneldoc comment for blk_attempt_plug_merge()
        nvme: don't initlialize ctrl->cntlid twice
        nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN
        nvme: pad fake subsys NQN vid and ssvid with zeros
        nvme-multipath: zero out ANA log buffer
        nvme-fabrics: unset write/poll queues for discovery controllers
        nvme-tcp: don't ask if controller is fabrics
        nvme-tcp: remove dead code
        nvme-pci: fix out of bounds access in nvme_cqe_pending
        nvme-pci: rerun irq setup on IO queue init errors
        nvme-pci: use the same attributes when freeing host_mem_desc_bufs.
        nvme-pci: fix the wrong setting of nr_maps
        block: doc: add slice_idle_us to bfq documentation
        block: clarify documentation for blk_{start|finish}_plug
        ...
      b8c3b899
    • Linus Torvalds's avatar
      Merge tag 'remove-dma_zalloc_coherent-5.0' of git://git.infradead.org/users/hch/dma-mapping · 66c56cfa
      Linus Torvalds authored
      Pull dma_zalloc_coherent() removal from Christoph Hellwig:
       "We've always had a weird situation around dma_zalloc_coherent. To
        safely support mapping the allocations to userspace major
        architectures like x86 and arm have always zeroed allocations from
        dma_alloc_coherent, but a couple other architectures were missing that
        zeroing either always or in corner cases.
      
        Then later we grew anothe dma_zalloc_coherent interface to explicitly
        request zeroing, but that just added __GFP_ZERO to the allocation
        flags, which for some allocators that didn't end up using the page
        allocator ended up being a no-op and still not zeroing the
        allocations.
      
        So for this merge window I fixed up all remaining architectures to
        zero the memory in dma_alloc_coherent, and made dma_zalloc_coherent a
        no-op wrapper around dma_alloc_coherent, which fixes all of the above
        issues.
      
        dma_zalloc_coherent is now pointless and can go away, and Luis helped
        me writing a cocchinelle script and patch series to kill it, which I
        think we should apply now just after -rc1 to finally settle these
        issue"
      
      * tag 'remove-dma_zalloc_coherent-5.0' of git://git.infradead.org/users/hch/dma-mapping:
        dma-mapping: remove dma_zalloc_coherent()
        cross-tree: phase out dma_zalloc_coherent() on headers
        cross-tree: phase out dma_zalloc_coherent()
      66c56cfa
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 47334889
      Linus Torvalds authored
      Pull KVM fixes from Radim Krčmář:
       "Minor fixes for new code, corner cases, and documentation"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        x86/kvm/nVMX: don't skip emulated instruction twice when vmptr address is not backed
        Documentation/virtual/kvm: Update URL for AMD SEV API specification
        KVM/VMX: Avoid return error when flush tlb successfully in the hv_remote_flush_tlb_with_range()
        kvm: sev: Fail KVM_SEV_INIT if already initialized
        KVM: validate userspace input in kvm_clear_dirty_log_protect()
        KVM: x86: Fix bit shifting in update_intel_pt_cfg
      47334889
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2019-01-11-1' of git://anongit.freedesktop.org/drm/drm · 7b5c8f52
      Linus Torvalds authored
      Pull more drm fixes from Daniel Vetter:
       "Dave sends out his pull, everybody remembers holidays are over :-)
      
        Since Dave's already in weekend mode and it was quite a few patches I
        figured better to apply all the pulls and forward them to you. Hence
        here 2nd part of bugfixes for -rc2.
      
        nouveau:
         - backlight fix
         - falcon register access fix
         - fan fix.
      
        i915:
         - Disable PSR for Apple panels
         - Broxton ERR_PTR error state fix
         - Kabylake VECS workaround fix
         - Unwind failure on pinning the gen7 ppgtt
         - GVT workload request allocation fix
      
        core:
         - Fix fb-helper to work correctly with SDL 1.2 bugs
         - Fix lockdep warning in the atomic ioctl and setproperty"
      
      * tag 'drm-fixes-2019-01-11-1' of git://anongit.freedesktop.org/drm/drm:
        drm/nouveau/falcon: avoid touching registers if engine is off
        drm/nouveau: Don't disable polling in fallback mode
        drm/nouveau: register backlight on pascal and newer
        drm: Fix documentation generation for DP_DPCD_QUIRK_NO_PSR
        drm/i915: init per-engine WAs for all engines
        drm/i915: Unwind failure on pinning the gen7 ppgtt
        drm/i915: Skip the ERR_PTR error state
        drm/i915: Disable PSR in Apple panels
        gpu/drm: Fix lock held when returning to user space.
        drm/fb-helper: Ignore the value of fb_var_screeninfo.pixclock
        drm/fb-helper: Partially bring back workaround for bugs of SDL 1.2
        drm/i915/gvt: Fix workload request allocation before request add
      7b5c8f52
  3. 11 Jan, 2019 21 commits
    • Miquel Raynal's avatar
      ata: ahci: mvebu: request PHY suspend/resume for Armada 3700 · bde0b5c1
      Miquel Raynal authored
      A feature has been added in the libahci driver: the possibility to set
      a new flag in hpriv->flags to let the core handle PHY suspend/resume
      automatically. Make use of this feature to make suspend to RAM work
      with SATA drives on A3700.
      Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      bde0b5c1
    • Miquel Raynal's avatar
      ata: ahci: mvebu: add Armada 3700 initialization needed for S2RAM · 2f558bc3
      Miquel Raynal authored
      A3700 comphy initialization is done in the firmware (TF-A). Looking at
      the SATA PHY initialization routine, there is a comment about "vendor
      specific" registers. Two registers are mentioned. They are not
      initialized there in the firmware because they are AHCI related, while
      the firmware at this location does only PHY configuration. The
      solution to avoid doing such initialization is relying on U-Boot.
      
      While this work at boot time, U-Boot is definitely not going to run
      during a resume after suspending to RAM.
      
      Two possible solutions were considered:
      * Fixing the firmware.
      * Fixing the kernel driver.
      
      The first solution would take ages to propagate, while the second
      solution is easy to implement as the driver as been a little bit
      reworked to prepare for such platform configuration. Hence, this patch
      adds an Armada 3700 configuration function to set these two registers
      both at boot time (in the probe) and after a suspend (in the resume
      path).
      Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      2f558bc3
    • Miquel Raynal's avatar
      ata: ahci: mvebu: do Armada 38x configuration only on relevant SoCs · 96dbcb40
      Miquel Raynal authored
      At the beginning, only Armada 38x SoCs where supported by the
      ahci_mvebu.c driver. Commit 15d3ce7b ("ata: ahci_mvebu: add
      support for Armada 3700 variant") introduced Armada 3700 support. As
      opposed to Armada 38x SoCs, the 3700 variants do not have to configure
      mbus and the regret option. This patch took care of avoiding such
      configuration when not needed in the probe function, but failed to do
      the same in the resume path. While doing so looks harmless by
      experience, let's clean the driver logic and avoid doing this useless
      configuration with Armada 3700 SoCs.
      
      Because the logic is very similar between these two places, it has
      been decided to factorize this code and put it in a "Armada 38x
      configuration function". This function is part of a new
      (per-compatible) platform data structure, so that the addition of such
      configuration function for Armada 3700 will be eased.
      
      Fixes: 15d3ce7b ("ata: ahci_mvebu: add support for Armada 3700 variant")
      Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      96dbcb40
    • Miquel Raynal's avatar
      ata: ahci: mvebu: remove stale comment · c9bc1367
      Miquel Raynal authored
      For Armada-38x (32-bit) SoCs, PM platform support has been added since:
      commit 32f9494c ("ARM: mvebu: prepare pm-board.c for the
                            introduction of Armada 38x support")
      commit 3cbd6a6c ("ARM: mvebu: Add standby support")
      
      For Armada 64-bit SoCs, like the A3700 also using this AHCI driver, PM
      platform support has always existed.
      
      There are even suspend/resume hooks in this driver since:
      commit d6ecf158 ("ata: ahci_mvebu: add suspend/resume support")
      
      Remove the stale comment at the end of this driver stating that all
      the above does not exist yet.
      
      Fixes: d6ecf158 ("ata: ahci_mvebu: add suspend/resume support")
      Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      c9bc1367
    • Miquel Raynal's avatar
      ata: libahci_platform: comply to PHY framework · 49e54187
      Miquel Raynal authored
      Current implementation of the libahci does not take into account the
      new PHY framework. Correct the situation by adding a call to
      phy_set_mode() before phy_power_on().
      
      PHYs should also be handled at suspend/resume time. For this, call
      ahci_platform_enable/disable_phys() at suspend/resume_host() time. These
      calls are guarded by a HFLAG (AHCI_HFLAG_SUSPEND_PHYS) that the user of
      the libahci driver must set manually in hpriv->flags at probe time. This
      is to avoid breaking users that have not been tested with this change.
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Suggested-by: default avatarGrzegorz Jaszczyk <jaz@semihalf.com>
      Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      49e54187
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 4b3c31c8
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "I2C has one core and one driver bugfix for you"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: tegra: Fix Maximum transfer size
        i2c: dev: prevent adapter retries and timeout being set as minus value
      4b3c31c8
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · c3405d68
      Linus Torvalds authored
      Pull arm64 fixes from Will Deacon:
       "Another handful of arm64 fixes here. Most of the complication comes
        from improving our kpti code to avoid lengthy pauses (30+ seconds)
        during boot when we rewrite the page tables. There are also a couple
        of IORT fixes that came in via Lorenzo.
      
        Summary:
      
         - Don't error in kexec_file_load if kaslr-seed is missing in
           device-tree
      
         - Fix incorrect argument type passed to iort_match_node_callback()
      
         - Fix IORT build failure when CONFIG_IOMMU_API=n
      
         - Fix kpti performance regression with new rodata default option
      
         - Typo fix"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: kexec_file: return successfully even if kaslr-seed doesn't exist
        ACPI/IORT: Fix rc_dma_get_range()
        arm64: kpti: Avoid rewriting early page tables when KASLR is enabled
        arm64: asm-prototypes: Fix fat-fingered typo in comment
        ACPI/IORT: Fix build when CONFIG_IOMMU_API=n
      c3405d68
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.0-rc2' of git://github.com/ceph/ceph-client · f87092c4
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "A patch to allow setting abort_on_full and a fix for an old "rbd
        unmap" edge case, marked for stable"
      
      * tag 'ceph-for-5.0-rc2' of git://github.com/ceph/ceph-client:
        rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set
        ceph: use vmf_error() in ceph_filemap_fault()
        libceph: allow setting abort_on_full for rbd
      f87092c4
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 40a31da4
      Linus Torvalds authored
      Pull perf tooling updates from Ingo Molnar:
       "Tooling changes only: fixes and a few stray improvements.
      
        Most of the diffstat is dominated by a PowerPC related fix of system
        call trace output beautification that allows us to (again) use the
        UAPI header version and sync up with the kernel's version of PowerPC
        system call names in the arch/powerpc/kernel/syscalls/syscall.tbl
        header"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (36 commits)
        tools headers powerpc: Remove unistd.h
        perf powerpc: Rework syscall table generation
        perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols
        tools include uapi: Sync linux/if_link.h copy with the kernel sources
        tools include uapi: Sync linux/vhost.h with the kernel sources
        tools include uapi: Sync linux/fs.h copy with the kernel sources
        perf beauty: Switch from using uapi/linux/fs.h to uapi/linux/mount.h
        tools include uapi: Grab a copy of linux/mount.h
        perf top: Lift restriction on using callchains without "sym" in --sort
        tools lib traceevent: Remove tep_data_event_from_type() API
        tools lib traceevent: Rename tep_is_file_bigendian() to tep_file_bigendian()
        tools lib traceevent: Changed return logic of tep_register_event_handler() API
        tools lib traceevent: Changed return logic of trace_seq_printf() and trace_seq_vprintf() APIs
        tools lib traceevent: Rename struct cmdline to struct tep_cmdline
        tools lib traceevent: Initialize host_bigendian at tep_handle allocation
        tools lib traceevent: Introduce new libtracevent API: tep_override_comm()
        perf tests: Add a test for the ARM 32-bit [vectors] page
        perf tools: Make find_vdso_map() more modular
        perf trace: Fix alignment for [continued] lines
        perf trace: Fix ')' placement in "interrupted" syscall lines
        ...
      40a31da4
    • Vitaly Kuznetsov's avatar
      x86/kvm/nVMX: don't skip emulated instruction twice when vmptr address is not backed · 826c1362
      Vitaly Kuznetsov authored
      Since commit 09abb5e3 ("KVM: nVMX: call kvm_skip_emulated_instruction
      in nested_vmx_{fail,succeed}") nested_vmx_failValid() results in
      kvm_skip_emulated_instruction() so doing it again in handle_vmptrld() when
      vmptr address is not backed is wrong, we end up advancing RIP twice.
      
      Fixes: fca91f6d ("kvm: nVMX: Set VM instruction error for VMPTRLD of unbacked page")
      Reported-by: default avatarCornelia Huck <cohuck@redhat.com>
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Reviewed-by: default avatarSean Christopherson <sean.j.christopherson@intel.com>
      Reviewed-by: default avatarCornelia Huck <cohuck@redhat.com>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      826c1362
    • Christophe de Dinechin's avatar
      Documentation/virtual/kvm: Update URL for AMD SEV API specification · cf1754c2
      Christophe de Dinechin authored
      The URL of [api-spec] in Documentation/virtual/kvm/amd-memory-encryption.rst
      is no longer valid, replaced space with underscore.
      Signed-off-by: default avatarChristophe de Dinechin <dinechin@redhat.com>
      Reviewed-by: default avatarBrijesh Singh <brijesh.singh@amd.com>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      cf1754c2
    • Lan Tianyu's avatar
      KVM/VMX: Avoid return error when flush tlb successfully in the hv_remote_flush_tlb_with_range() · b7c1c226
      Lan Tianyu authored
      The "ret" is initialized to be ENOTSUPP. The return value of
      __hv_remote_flush_tlb_with_range() will be Or with "ret" when ept
      table potiners are mismatched. This will cause return ENOTSUPP even if
      flush tlb successfully. This patch is to fix the issue and set
      "ret" to 0.
      
      Fixes: a5c214da ("KVM/VMX: Change hv flush logic when ept tables are mismatched.")
      Signed-off-by: default avatarLan Tianyu <Tianyu.Lan@microsoft.com>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      b7c1c226
    • David Rientjes's avatar
      kvm: sev: Fail KVM_SEV_INIT if already initialized · 3f14a89d
      David Rientjes authored
      By code inspection, it was found that multiple calls to KVM_SEV_INIT
      could deplete asid bits and overwrite kvm_sev_info's regions_list.
      
      Multiple calls to KVM_SVM_INIT is not likely to occur with QEMU, but this
      should likely be fixed anyway.
      
      This code is serialized by kvm->lock.
      
      Fixes: 1654efcb ("KVM: SVM: Add KVM_SEV_INIT command")
      Reported-by: default avatarCfir Cohen <cfir@google.com>
      Signed-off-by: default avatarDavid Rientjes <rientjes@google.com>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      3f14a89d
    • Tomas Bortoli's avatar
      KVM: validate userspace input in kvm_clear_dirty_log_protect() · 98938aa8
      Tomas Bortoli authored
      The function at issue does not fully validate the content of the
      structure pointed by the log parameter, though its content has just been
      copied from userspace and lacks validation. Fix that.
      
      Moreover, change the type of n to unsigned long as that is the type
      returned by kvm_dirty_bitmap_bytes().
      Signed-off-by: default avatarTomas Bortoli <tomasbortoli@gmail.com>
      Reported-by: syzbot+028366e52c9ace67deb3@syzkaller.appspotmail.com
      [Squashed the fix from Paolo. - Radim.]
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      98938aa8
    • Gustavo A. R. Silva's avatar
      KVM: x86: Fix bit shifting in update_intel_pt_cfg · d14eff1b
      Gustavo A. R. Silva authored
      ctl_bitmask in pt_desc is of type u64. When an integer like 0xf is
      being left shifted more than 32 bits, the behavior is undefined.
      
      Fix this by adding suffix ULL to integer 0xf.
      
      Addresses-Coverity-ID: 1476095 ("Bad bit shift operation")
      Fixes: 6c0f0bba ("KVM: x86: Introduce a function to initialize the PT configuration")
      Signed-off-by: default avatarGustavo A. R. Silva <gustavo@embeddedor.com>
      Reviewed-by: default avatarWei Yang <richardw.yang@linux.intel.com>
      Reviewed-by: default avatarLuwei Kang <luwei.kang@intel.com>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      d14eff1b
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e8af37f3
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "A 32-bit build fix, CONFIG_RETPOLINE fixes and rename CONFIG_RESCTRL
        to CONFIG_X86_RESCTRL"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, modpost: Replace last remnants of RETPOLINE with CONFIG_RETPOLINE
        x86/cache: Rename config option to CONFIG_X86_RESCTRL
        samples/seccomp: Fix 32-bit build
      e8af37f3
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 8e1b295b
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "Fix a build failure introduced recently, fix the xpower PMIC ACPI
        driver, clean up the handling of duplicate entries in _PRx power
        resource lists and fix addresses in NUMA-related messages on 32-bit
        with PAE.
      
        Specifics:
      
         - Fix build failures with both CONFIG_NLS and CONFIG_PCI unset that
           can occur since ACPI can be built without PCI now (Sinan Kaya).
      
         - Clean up the handling of duplicate entries in power resource lists
           returned by _PRx evaluation to avoid triggering WARN_ON() on
           attempts to add duplicate symlinks in sysfs (Hans de Goede).
      
         - Fix issues with the TS current-source switching on systems using
           the xpower PMIC by avoiding to update unrelated bits in the TS
           pin-ctrl register and avoiding to unconditionally enable TS
           current-source on systems where it is not used (Hans de Goede).
      
         - Fix addresses in NUMA-related messages on 32-bit with PAE which can
           be truncated due to integer type conversions (Chao Fan)"
      
      * tag 'acpi-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / PMIC: xpower: Fix TS-pin current-source handling
        ACPI: NUMA: Use correct type for printing addresses on i386-PAE
        ACPI: power: Skip duplicate power resource references in _PRx
        ACPI: Fix build failure when CONFIG_NLS is set to 'n'
      8e1b295b
    • Linus Torvalds's avatar
      Merge tag 'pm-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · f4f31fff
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These fix fallout after starting to use hrtimers in the runtime PM
        framework, fix a few cpufreq issues, fix a recently broken reference
        to cpuidle documentation, update MAINTAINERS entries for cpufreq and
        cpuidle and make the recently added system suspend and resume support
        in devfreq actually work.
      
        Specifics:
      
         - Prevent integer overflows from occurring on 32-bit when converting
           milliseconds to nanoseconds in the runtime PM framework and update
           comments that still refer to jiffies in it (Vincent Guittot,
           Ladislav Michl).
      
         - Fix the SCMI cpufreq driver to always use the same frequency units
           for arch_set_freq_scale() and make the scale-invariant load
           tracking acutally work with this driver (Quentin Perret).
      
         - Fix freeing of dynamic OPPs in the SCPI and SCMI cpufreq drivers
           broken during the 4.20 defelopment cycle (Viresh Kumar).
      
         - Prevent the cpufreq core from attempting to return the current
           frequency of offline CPUs (Sudeep Holla).
      
         - Add devfreq suspend and resume hooks (missed previously) to the PM
           core to make the recently added system suspend and resume support
           in devfreq actually work (Lukasz Luba).
      
         - Update MAINTAINERS entries for cpufreq and cpuidle, mostly to add
           references to new/current documentation to them (Rafael Wysocki).
      
         - Fix a recently broken reference to cpuidle documentation (Otto
           Sabart)"
      
      * tag 'pm-5.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM-runtime: Fix autosuspend_delay on 32bits arch
        PM-runtime: Fix 'jiffies' in comments after switch to hrtimers
        cpufreq: scmi: Fix frequency invariance in slow path
        doc: trace: fix reference to cpuidle documentation file
        cpufreq: check if policy is inactive early in __cpufreq_get()
        cpufreq: scpi/scmi: Fix freeing of dynamic OPPs
        cpuidle / Documentation: Update cpuidle MAINTAINERS entry
        cpufreq / Documentation: Update cpufreq MAINTAINERS entry
        PM: sleep: call devfreq suspend/resume
      f4f31fff
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2019-01-11' of git://anongit.freedesktop.org/drm/drm · 385c59c7
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Not a huge amount for rc2, assume the usual quiet period, and rc3 will
        be most of it.
      
        amdgpu:
         - Powerplay fixes
         - Virtual display pinning fixes
         - Golden register updates for Vega
         - Pitch and gem size validation fixes
         - SR-IOV init error fix
         - Pagetables in system RAM disable for some Raven system
         - DP-MST resume fixes
      
        tc358767 bridge:
         - fix to work with displayport connector"
      
      * tag 'drm-fixes-2019-01-11' of git://anongit.freedesktop.org/drm/drm: (26 commits)
        drm/amdgpu: disable system memory page tables for now
        drm/amdgpu: set WRITE_BURST_LENGTH to 64B to workaround SDMA1 hang
        drm/amdgpu: fix CPDMA hang in PRT mode for VEGA20
        drm/bridge: tc358767: use DP connector if no panel set
        drm/bridge: tc358767: fix output H/V syncs
        drm/bridge: tc358767: reject modes which require too much BW
        drm/bridge: tc358767: fix initial DP0/1_SRCCTRL value
        drm/bridge: tc358767: fix single lane configuration
        drm/bridge: tc358767: add defines for DP1_SRCCTRL & PHY_2LANE
        drm/bridge: tc358767: add bus flags
        drm/dp_mst: Add __must_check to drm_dp_mst_topology_mgr_resume()
        drm/amdgpu: Don't fail resume process if resuming atomic state fails
        drm/amdgpu: Don't ignore rc from drm_dp_mst_topology_mgr_resume()
        drm/amdgpu: validate user GEM object size
        drm/amdgpu: validate user pitch alignment
        drm/amd/powerplay: drop the unnecessary uclk hard min setting
        drm/amd/powerplay: avoid possible buffer overflow
        drm/amd/powerplay: create pp_od_clk_voltage device file under OD support
        drm/amd/powerplay: update OD support flag for SKU with no OD capabilities
        drm/amdgpu: make gfx9 enter into rlc safe mode when set MGCG
        ...
      385c59c7
    • Dmitry Safonov's avatar
      tty: Don't hold ldisc lock in tty_reopen() if ldisc present · d3736d82
      Dmitry Safonov authored
      Try to get reference for ldisc during tty_reopen().
      If ldisc present, we don't need to do tty_ldisc_reinit() and lock the
      write side for line discipline semaphore.
      Effectively, it optimizes fast-path for tty_reopen(), but more
      importantly it won't interrupt ongoing IO on the tty as no ldisc change
      is needed.
      Fixes user-visible issue when tty_reopen() interrupted login process for
      user with a long password, observed and reported by Lukas.
      
      Fixes: c96cf923 ("tty: Don't block on IO when ldisc change is pending")
      Fixes: 83d817f4 ("tty: Hold tty_ldisc_lock() during tty_reopen()")
      Cc: Jiri Slaby <jslaby@suse.com>
      Reported-by: default avatarLukas F. Hartmann <lukas@mntmn.com>
      Tested-by: default avatarLukas F. Hartmann <lukas@mntmn.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarDmitry Safonov <dima@arista.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d3736d82
    • Steve French's avatar
      cifs: update internal module version number · 48d2ba62
      Steve French authored
      To 2.16
      Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
      48d2ba62