1. 08 Jun, 2018 40 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20180608' of git://git.kernel.dk/linux-block · a3818841
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A few fixes for this merge window, where some of them should go in
        sooner rather than later, hence a new pull this week. This pull
        request contains:
      
         - Set of NVMe fixes, mostly follow up cleanups/fixes to the queue
           changes, but also teardown/removal and misc changes (Christop/Dan/
           Johannes/Sagi/Steve).
      
         - Two lightnvm fixes for issues that showed up in this window
           (Colin/Wei).
      
         - Failfast/driver flags inheritance for flush requests (Hannes).
      
         - The md device put sanitization and fix (Kent).
      
         - dm bio_set inheritance fix (me).
      
         - nbd discard granularity fix (Josef).
      
         - nbd consistency in command printing (Kevin).
      
         - Loop recursion validation fix (Ted).
      
         - Partition overlap check (Wang)"
      
      [ .. and now my build is warning-free again thanks to the md fix  - Linus ]
      
      * tag 'for-linus-20180608' of git://git.kernel.dk/linux-block: (22 commits)
        nvme: cleanup double shift issue
        nvme-pci: make CMB SQ mod-param read-only
        nvme-pci: unquiesce dead controller queues
        nvme-pci: remove HMB teardown on reset
        nvme-pci: queue creation fixes
        nvme-pci: remove unnecessary completion doorbell check
        nvme-pci: remove unnecessary nested locking
        nvmet: filter newlines from user input
        nvme-rdma: correctly check for target keyed sgl support
        nvme: don't hold nvmf_transports_rwsem for more than transport lookups
        nvmet: return all zeroed buffer when we can't find an active namespace
        md: Unify mddev destruction paths
        dm: use bioset_init_from_src() to copy bio_set
        block: add bioset_init_from_src() helper
        block: always set partition number to '0' in blk_partition_remap()
        block: pass failfast and driver-specific flags to flush requests
        nbd: set discard_alignment to the granularity
        nbd: Consistently use request pointer in debug messages.
        block: add verifier for cmdline partition
        lightnvm: pblk: fix resource leak of invalid_bitmap
        ...
      a3818841
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 68cc38ff
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "Quite a lot of core work this time around, though not 100% successful.
      
        We gained support for runtime mode changes thanks to David Collins and
        improved support for write only regulators (ones where we can't read
        back the configuration) from Douglas Anderson.
      
        There's been quite a bit of work from Linus Walleij on converting from
        specfying GPIOs by numbers to descriptors. Sadly the testing turned
        out to be less good than we had hoped and so a lot of this had to be
        reverted.
      
        We also have the start of updates to use coupled regulators from
        Maciej Purski, unfortunately there are further problems there so the
        last couple of patches have been reverted.
      
        We also have new drivers for BD71837 and SY8106A devices, SAW
        regulators on Qualcomm SPMI and dropped support for some preproduction
        chips that never made it to market from the AB8500 driver"
      
      * tag 'regulator-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (57 commits)
        regulator: gpio: Revert
        ARM: pxa, regulator: fix building ezx e680
        regulator: Revert coupled regulator support again
        regulator: wm8994: Fix shared GPIOs
        regulator: max77686: Fix shared GPIOs
        regulator: bd71837: BD71837 PMIC regulator driver
        regulator: bd71837: Devicetree bindings for BD71837 regulators
        regulator: gpio: Get enable GPIO using GPIO descriptor
        regulator: fixed: Convert to use GPIO descriptor only
        regulator: s2mps11: Fix boot on Odroid XU3
        dt-bindings: qcom_spmi: Document SAW support
        regulator: qcom_spmi: Add support for SAW
        regulator: tps65090: Pass descriptor instead of GPIO number
        regulator: s5m8767: Pass descriptor instead of GPIO number
        regulator: pfuze100: Delete reference to ena_gpio
        regulator: max8952: Pass descriptor instead of GPIO number
        regulator: lp8788-ldo: Pass descriptor instead of GPIO number
        regulator: lm363x: Pass descriptor instead of GPIO number
        regulator: max8973: Pass descriptor instead of GPIO number
        regulator: mc13xxx-core: Switch to SPDX identifier
        ...
      68cc38ff
    • Dan Carpenter's avatar
      nvme: cleanup double shift issue · 77016199
      Dan Carpenter authored
      The problem here is that set_bit() and test_bit() take a bit number so
      we should be passing 0 but instead we're passing (1 << 0) which leads to
      a double shift.  It doesn't cause a runtime bug in the current code
      because it's done consistently and we only set that one bit.
      
      I decided to just re-use NVME_AER_NOTICE_NS_CHANGED instead of
      introducing a new define for this.
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      77016199
    • Keith Busch's avatar
      nvme-pci: make CMB SQ mod-param read-only · 69f4eb9f
      Keith Busch authored
      A controller reset after a run time change of the CMB module parameter
      breaks the driver. An 'on -> off' will have the driver use NULL for the
      host memory queue, and 'off -> on' will use mismatched queue depth between
      the device and the host.
      
      We could fix both, but there isn't really a good reason to change this
      at run time anyway, compared to at module load time, so this patch makes
      parameter read-only after after modprobe.
      Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      69f4eb9f
    • Keith Busch's avatar
      nvme-pci: unquiesce dead controller queues · 1d39e692
      Keith Busch authored
      This patch ensures the nvme namsepace request queues are not quiesced
      on a surprise removal. It's possible the queues were previously killed
      in a failed reset, so the queues need to be unquiesced to ensure all
      requests are flushed to completion.
      Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      1d39e692
    • Keith Busch's avatar
      nvme-pci: remove HMB teardown on reset · fe76fcfb
      Keith Busch authored
      The controller is required to disable its host memory buffer use on
      controller reset. We don't need to submit an admin command to delete it,
      so this patch skips sending that command so we don't need to worry about
      handling a timeout.
      Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      fe76fcfb
    • Keith Busch's avatar
      nvme-pci: queue creation fixes · ded45505
      Keith Busch authored
      We've been ignoring NVMe error status on queue creations. Fortunately they
      are uncommon, but we should handle these anyway. This patch adds checks
      for the a positive error return value that indicates an NVMe status.
      
      If we do see a negative return, the controller isn't usable, so this
      patch returns immediately in since we can't unwind that failure.
      Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
      Reviewed-by: default avatarJens Axboe <axboe@kernel.dk>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      ded45505
    • Keith Busch's avatar
      nvme-pci: remove unnecessary completion doorbell check · 397c699f
      Keith Busch authored
      The nvme pci driver never unmaps the doorbell registers while the requests
      are active, so we can always safely update the completion queue head.
      Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
      Reviewed-by: default avatarJens Axboe <axboe@kernel.dk>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      397c699f
    • Keith Busch's avatar
      nvme-pci: remove unnecessary nested locking · 0bc88192
      Keith Busch authored
      The nvme pci driver no longer handles completions under the cq lock,
      so the nested locking is not necessary.
      Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
      Reviewed-by: default avatarJens Axboe <axboe@kernel.dk>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      0bc88192
    • Sagi Grimberg's avatar
      nvmet: filter newlines from user input · 9ba2a5cb
      Sagi Grimberg authored
      We should avoid consuming the newlines in traddr, trsvcid and
      device_path. Add minimal processing to make sure they are gone.
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      9ba2a5cb
    • Steve Wise's avatar
      nvme-rdma: correctly check for target keyed sgl support · d4c68c7a
      Steve Wise authored
      The code was checking bit 20 instead of bit 2.  Also fixed the log entry.
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Signed-off-by: default avatarSteve Wise <swise@opengridcomputing.com>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      d4c68c7a
    • Johannes Thumshirn's avatar
      nvme: don't hold nvmf_transports_rwsem for more than transport lookups · 12a0b662
      Johannes Thumshirn authored
      Only take nvmf_transports_rwsem when doing a lookup of registered
      transports, so that a blocking ->create_ctrl doesn't prevent other
      actions on /dev/nvme-fabrics.
      Signed-off-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      [hch: increased lock hold time a bit to be safe, added a comment
       and updated the changelog]
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
      Reviewed-by: default avatarHannes Reinecke <hare@suse.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      12a0b662
    • Christoph Hellwig's avatar
      nvmet: return all zeroed buffer when we can't find an active namespace · f39ae471
      Christoph Hellwig authored
      Quote from Figure 106 in NVMe 1.3a:
      
        The Identify Namespace data structure is returned to the host for the
        namespace specified in the Namespace Identifier (CDW1.NSID) field if it
        is an active NSID. If the specified namespace is not an active NSID,
        then the controller returns a zero filled data structure.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarSagi Grimberg <sagi@rimberg.me>
      Reviewed-by: default avatarMax Gurtovoy <maxg@mellanox.com>
      Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      f39ae471
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 410feb75
      Linus Torvalds authored
      Pull arm64 updates from Catalin Marinas:
       "Apart from the core arm64 and perf changes, the Spectre v4 mitigation
        touches the arm KVM code and the ACPI PPTT support touches drivers/
        (acpi and cacheinfo). I should have the maintainers' acks in place.
      
        Summary:
      
         - Spectre v4 mitigation (Speculative Store Bypass Disable) support
           for arm64 using SMC firmware call to set a hardware chicken bit
      
         - ACPI PPTT (Processor Properties Topology Table) parsing support and
           enable the feature for arm64
      
         - Report signal frame size to user via auxv (AT_MINSIGSTKSZ). The
           primary motivation is Scalable Vector Extensions which requires
           more space on the signal frame than the currently defined
           MINSIGSTKSZ
      
         - ARM perf patches: allow building arm-cci as module, demote
           dev_warn() to dev_dbg() in arm-ccn event_init(), miscellaneous
           cleanups
      
         - cmpwait() WFE optimisation to avoid some spurious wakeups
      
         - L1_CACHE_BYTES reverted back to 64 (for performance reasons that
           have to do with some network allocations) while keeping
           ARCH_DMA_MINALIGN to 128. cache_line_size() returns the actual
           hardware Cache Writeback Granule
      
         - Turn LSE atomics on by default in Kconfig
      
         - Kernel fault reporting tidying
      
         - Some #include and miscellaneous cleanups"
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (53 commits)
        arm64: Fix syscall restarting around signal suppressed by tracer
        arm64: topology: Avoid checking numa mask for scheduler MC selection
        ACPI / PPTT: fix build when CONFIG_ACPI_PPTT is not enabled
        arm64: cpu_errata: include required headers
        arm64: KVM: Move VCPU_WORKAROUND_2_FLAG macros to the top of the file
        arm64: signal: Report signal frame size to userspace via auxv
        arm64/sve: Thin out initialisation sanity-checks for sve_max_vl
        arm64: KVM: Add ARCH_WORKAROUND_2 discovery through ARCH_FEATURES_FUNC_ID
        arm64: KVM: Handle guest's ARCH_WORKAROUND_2 requests
        arm64: KVM: Add ARCH_WORKAROUND_2 support for guests
        arm64: KVM: Add HYP per-cpu accessors
        arm64: ssbd: Add prctl interface for per-thread mitigation
        arm64: ssbd: Introduce thread flag to control userspace mitigation
        arm64: ssbd: Restore mitigation status on CPU resume
        arm64: ssbd: Skip apply_ssbd if not using dynamic mitigation
        arm64: ssbd: Add global mitigation state accessor
        arm64: Add 'ssbd' command-line option
        arm64: Add ARCH_WORKAROUND_2 probing
        arm64: Add per-cpu infrastructure to call ARCH_WORKAROUND_2
        arm64: Call ARCH_WORKAROUND_2 on transitions between EL0 and EL1
        ...
      410feb75
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-4.18-rc1' of git://git.infradead.org/users/vkoul/slave-dma · 2996148a
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
      
       - updates to sprd, bam_dma, stm drivers
      
       - remove VLAs in dmatest
      
       - move TI drivers to their own subdir
      
       - switch to SPDX tags for ima/mxs dma drivers
      
       - simplify getting .drvdata on bunch of drivers by Wolfram Sang
      
      * tag 'dmaengine-4.18-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (32 commits)
        dmaengine: sprd: Add Spreadtrum DMA configuration
        dmaengine: sprd: Optimize the sprd_dma_prep_dma_memcpy()
        dmaengine: imx-dma: Switch to SPDX identifier
        dmaengine: mxs-dma: Switch to SPDX identifier
        dmaengine: imx-sdma: Switch to SPDX identifier
        dmaengine: usb-dmac: Document R8A7799{0,5} bindings
        dmaengine: qcom: bam_dma: fix some doc warnings.
        dmaengine: qcom: bam_dma: fix invalid assignment warning
        dmaengine: sprd: fix an NULL vs IS_ERR() bug
        dmaengine: sprd: Use devm_ioremap_resource() to map memory
        dmaengine: sprd: Fix potential NULL dereference in sprd_dma_probe()
        dmaengine: pl330: flush before wait, and add dev burst support.
        dmaengine: axi-dmac: Request IRQ with IRQF_SHARED
        dmaengine: stm32-mdma: fix spelling mistake: "avalaible" -> "available"
        dmaengine: rcar-dmac: Document R-Car D3 bindings
        dmaengine: sprd: Move DMA request mode and interrupt type into head file
        dmaengine: sprd: Define the DMA data width type
        dmaengine: sprd: Define the DMA transfer step type
        dmaengine: ti: New directory for Texas Instruments DMA drivers
        dmaengine: shdmac: Change platform check to CONFIG_ARCH_RENESAS
        ...
      2996148a
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 18f18376
      Linus Torvalds authored
      Pull IOMMU updates from Joerg Roedel:
       "Nothing big this time. In particular:
      
         - Debugging code for Tegra-GART
      
         - Improvement in Intel VT-d fault printing to prevent soft-lockups
           when on fault storms
      
         - Improvements in AMD IOMMU event reporting
      
         - NUMA aware allocation in io-pgtable code for ARM
      
         - Various other small fixes and cleanups all over the place"
      
      * tag 'iommu-updates-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/io-pgtable-arm: Make allocations NUMA-aware
        iommu/amd: Prevent possible null pointer dereference and infinite loop
        iommu/amd: Fix grammar of comments
        iommu: Clean up the comments for iommu_group_alloc
        iommu/vt-d: Remove unnecessary parentheses
        iommu/vt-d: Clean up pasid quirk for pre-production devices
        iommu/vt-d: Clean up unused variable in find_or_alloc_domain
        iommu/vt-d: Fix iotlb psi missing for mappings
        iommu/vt-d: Introduce __mapping_notify_one()
        iommu: Remove extra NULL check when call strtobool()
        iommu/amd: Update logging information for new event type
        iommu/amd: Update the PASID information printed to the system log
        iommu/tegra: gart: Fix gart_iommu_unmap()
        iommu/tegra: gart: Add debugging facility
        iommu/io-pgtable-arm: Use for_each_set_bit to simplify code
        iommu/qcom: Simplify getting .drvdata
        iommu: Remove depends on HAS_DMA in case of platform dependency
        iommu/vt-d: Ratelimit each dmar fault printing
      18f18376
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-4.18' of git://git.infradead.org/linux-mtd · f4e70c2e
      Linus Torvalds authored
      Pull MTD updates from Boris Brezillon:
       "Core changes:
         - Add a sysfs attribute to expose available OOB size
      
        Driver changes:
         - Remove HAS_DMA dependency on various drivers
         - Use dev_get_drvdata() instead of platform_get_drvdata() in docg3
         - Replace msleep by usleep_range() in the dataflash driver
         - Avoid VLA usage in nftl layers
         - Remove useless .owner assignment in pismo
         - Fix various issues in the CFI driver
         - Improve TRX partition handling expose a DT compat for this part
           parser
         - Clarify OFFSET_CONTINUOUS meaning
      
        NAND core changes:
         - Add Miquel as a NAND maintainer
         - Add access mode to the nand_page_io_req struct
         - Fix kernel-doc in rawnand.h
         - Support bit-wise majority to recover from corrupted ONFI parameter
           pages
         - Stop checking FAIL bit after a SET_FEATURES, as documented in the
           ONFI spec
      
        Raw NAND Driver changes:
         - Fix and cleanup the error path of many NAND controller drivers
         - GPMI:
            + Cleanup/simplification of a few aspects in the driver
            + Take ECC setup specified in the DT into account
         - sunxi: remove support for GPIO-based R/B polling
         - MTK:
            + Use of_device_get_match_data() instead of of_match_device()
            + Add an entry in MAINTAINERS for this driver
            + Fix nand-ecc-step-size and nand-ecc-strength description in the
              DT bindings doc
         - fsl_ifc: fix ->cmdfunc() to read more than one ONFI parameter page
      
        OneNAND driver changes:
         - samsung: use dev_get_drvdata() instead of platform_get_drvdata()
      
        SPI NOR core changes:
         - Add support for a bunch of SPI NOR chips
         - Clear EAR reg when switching to 3-byte addressing mode on Winbond
           chips
      
        SPI NOR controller driver changes:
         - cadence: Add DMA support for direct mode reads
         - hisi: Prefix a few functions with hisi_
         - intel:
            + Mark the driver as "dangerous" in Kconfig
            + Fix atomic sequence handling
            + Pass a 40us delay (instead of 0us) to readl_poll_timeout()
         - fsl:
            + fix a typo in a function name
            + add support for IP variants embedded in the ls2080a and ls1080a
              SoCs
         - stm32: request exclusive control of the reset line"
      
      * tag 'mtd/for-4.18' of git://git.infradead.org/linux-mtd: (66 commits)
        mtd: nand: Pass mode information to nand_page_io_req
        mtd: cfi_cmdset_0002: Change erase one block to enable XIP once
        mtd: cfi_cmdset_0002: Change erase functions to check chip good only
        mtd: cfi_cmdset_0002: Change erase functions to retry for error
        mtd: cfi_cmdset_0002: Change definition naming to retry write operation
        mtd: cfi_cmdset_0002: Change write buffer to check correct value
        mtd: cmdlinepart: Update comment for introduction of OFFSET_CONTINUOUS
        mtd: bcm47xxpart: add of_match_table with a new DT binding
        dt-bindings: mtd: document Broadcom's BCM47xx partitions
        mtd: spi-nor: Add support for EN25QH32
        mtd: spi-nor: Add support for is25wp series chips
        mtd: spi-nor: Add Winbond w25q32jv support
        mtd: spi-nor: fsl-quadspi: add support for ls2080a/ls1080a
        mtd: spi-nor: stm32-quadspi: explicitly request exclusive reset control
        mtd: spi-nor: intel: provide a range for poll_timout
        mtd: spi-nor: fsl-quadspi: fix api naming typo _init_ahb_read
        mtd: spi-nor: intel-spi: Explicitly mark the driver as dangerous in Kconfig
        mtd: spi-nor: intel-spi: Fix atomic sequence handling
        mtd: rawnand: Do not check FAIL bit when executing a SET_FEATURES op
        mtd: rawnand: use bit-wise majority to recover the ONFI param page
        ...
      f4e70c2e
    • Linus Torvalds's avatar
      Merge tag 'gpio-v4.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · ea125ded
      Linus Torvalds authored
      Pull GPIO updates from Linus Walleij:
       "This is the bulk of GPIO changes for the v4.18 development cycle.
      
        Core changes:
      
         - We have killed off VLA from the core library and all drivers.
      
           The background should be clear for everyone at this point:
      
              https://lwn.net/Articles/749064/
      
           Also I just don't like VLA's, kernel developers hate it when
           compilers do things behind their back. It's as simple as that.
      
           I'm sorry that they even slipped in to begin with. Kudos to Laura
           Abbott for exorcising them.
      
         - Support GPIO hogs in machines/board files.
      
        New drivers and chip support:
      
         - R-Car r8a77470 (RZ/G1C)
      
         - R-Car r8a77965 (M3-N)
      
         - R-Car r8a77990 (E3)
      
         - PCA953x driver improvements to accomodate more variants.
      
        Improvements and new features:
      
         - Support one interrupt per line on port A in the DesignWare dwapb
           driver.
      
        Misc:
      
         - Random cleanups, right header files in the drivers, some size
           optimizations etc"
      
      * tag 'gpio-v4.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (73 commits)
        gpio: davinci: fix build warning when !CONFIG_OF
        gpio: dwapb: Fix rework support for 1 interrupt per port A GPIO
        gpio: pxa: Include the right header
        gpio: pl061: Include the right header
        gpio: pch: Include the right header
        gpio: pcf857x: Include the right header
        gpio: pca953x: Include the right header
        gpio: palmas: Include the right header
        gpio: omap: Include the right header
        gpio: octeon: Include the right header
        gpio: mxs: Switch to SPDX identifier
        gpio: Remove VLA from stmpe driver
        gpio: mxc: Switch to SPDX identifier
        gpio: mxc: add clock operation
        gpio: Remove VLA from gpiolib
        gpio: aspeed: Use a cache of output data registers
        gpio: aspeed: Set output latch before changing direction
        gpio: pca953x: fix address calculation for pcal6524
        gpio: pca953x: define masks for addressing common and extended registers
        gpio: pca953x: set the PCA_PCAL flag also when matching by DT
        ...
      ea125ded
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · fdea70d2
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - Valve Steam Controller support from Rodrigo Rivas Costa
      
       - Redragon Asura support from Robert Munteanu
      
       - improvement of duplicate usage handling in generic hid-input from
         Benjamin Tissoires
      
       - Win 8.1 precisioun touchpad spec implementation from Benjamin
         Tissoires
      
       - Support for "In Range" flag for Wacom Intuos/Bamboo devices from
         Jason Gerecke
      
       - other various assorted smaller fixes and improvements
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (27 commits)
        HID: rmi: use HID_QUIRK_NO_INPUT_SYNC
        HID: multitouch: fix calculation of last slot field in multi-touch reports
        HID: quirks: remove Delcom Visual Signal Indicator from hid_have_special_driver[]
        HID: steam: select CONFIG_POWER_SUPPLY
        HID: i2c-hid: remove i2c_hid_open_mut
        HID: wacom: Support "in range" for Intuos/Bamboo tablets where possible
        HID: core: fix hid_hw_open() comment
        HID: hid-plantronics: Re-resend Update to map button for PTT products
        HID: multitouch: fix types returned from mt_need_to_apply_feature()
        HID: i2c-hid: check if device is there before really probing
        HID: steam: add missing fields in client initialization
        HID: steam: add battery device.
        HID: add driver for Valve Steam Controller
        HID: alps: Fix some style in 't4_read_write_register()'
        HID: alps: Check errors returned by 't4_read_write_register()'
        HID: alps: Save a memory allocation in 't4_read_write_register()' when writing data
        HID: alps: Report an error if we receive invalid data in 't4_read_write_register()'
        HID: multitouch: implement precision touchpad latency and switches
        HID: multitouch: simplify the settings of the various features
        HID: multitouch: make use of HID_QUIRK_INPUT_PER_APP
        ...
      fdea70d2
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching · 9eb86c75
      Linus Torvalds authored
      Pull livepatching fixlet from Jiri Kosina:
       "livepatching documentation fix from Petr Mladek"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
        livepatch: Remove not longer valid limitations from the documentation
      9eb86c75
    • Linus Torvalds's avatar
      Merge branch 'work.aio' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 4a189982
      Linus Torvalds authored
      Pull aio iopriority support from Al Viro:
       "The rest of aio stuff for this cycle - Adam's aio ioprio series"
      
      * 'work.aio' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fs: aio ioprio use ioprio_check_cap ret val
        fs: aio ioprio add explicit block layer dependence
        fs: iomap dio set bio prio from kiocb prio
        fs: blkdev set bio prio from kiocb prio
        fs: Add aio iopriority support
        fs: Convert kiocb rw_hint from enum to u16
        block: add ioprio_check_cap function
      4a189982
    • Linus Torvalds's avatar
      Merge branch 'work.lookup' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 4189b863
      Linus Torvalds authored
      Pull proc_fill_cache regression fix from Al Viro:
       "Regression fix for proc_fill_cache() braino introduced when switching
        instantiate() callback to d_splice_alias()"
      
      * 'work.lookup' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fix proc_fill_cache() in case of d_alloc_parallel() failure
      4189b863
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.18-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · a94fc25b
      Linus Torvalds authored
      Pull xen updates from Juergen Gross:
       "This contains some minor code cleanups (fixing return types of
        functions), some fixes for Linux running as Xen PVH guest, and adding
        of a new guest resource mapping feature for Xen tools"
      
      * tag 'for-linus-4.18-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/PVH: Make GDT selectors PVH-specific
        xen/PVH: Set up GS segment for stack canary
        xen/store: do not store local values in xen_start_info
        xen-netfront: fix xennet_start_xmit()'s return type
        xen/privcmd: add IOCTL_PRIVCMD_MMAP_RESOURCE
        xen: Change return type to vm_fault_t
      a94fc25b
    • Mark Brown's avatar
    • Kent Overstreet's avatar
      md: Unify mddev destruction paths · 28dec870
      Kent Overstreet authored
      Previously, mddev_put() had a couple different paths for freeing a
      mddev, due to the fact that the kobject wasn't initialized when the
      mddev was first allocated. If we move the kobject_init() to when it's
      first allocated and just use kobject_add() later, we can clean all this
      up.
      
      This also removes a hack in mddev_put() to avoid freeing biosets under a
      spinlock, which involved copying biosets on the stack after the reset
      bioset_init() changes.
      Signed-off-by: default avatarKent Overstreet <kent.overstreet@gmail.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      28dec870
    • Jens Axboe's avatar
      dm: use bioset_init_from_src() to copy bio_set · 2a2a4c51
      Jens Axboe authored
      We can't just copy and clear a bio_set, use the bio helper to
      setup a new bio_set with the settings from another one.
      
      Fixes: 6f1c819c ("dm: convert to bioset_init()/mempool_init()")
      Reported-by: default avatarVenkat R.B <vrbagal1@linux.vnet.ibm.com>
      Tested-by: default avatarVenkat R.B <vrbagal1@linux.vnet.ibm.com>
      Tested-by: default avatarLi Wang <liwang@redhat.com>
      Reviewed-by: default avatarMike Snitzer <snitzer@redhat.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      2a2a4c51
    • Jens Axboe's avatar
      block: add bioset_init_from_src() helper · 28e89fd9
      Jens Axboe authored
      Add a helper that allows a caller to initialize a new bio_set,
      using the settings from an existing bio_set.
      Reported-by: default avatarVenkat R.B <vrbagal1@linux.vnet.ibm.com>
      Tested-by: default avatarVenkat R.B <vrbagal1@linux.vnet.ibm.com>
      Tested-by: default avatarLi Wang <liwang@redhat.com>
      Reviewed-by: default avatarMike Snitzer <snitzer@redhat.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      28e89fd9
    • Dave Martin's avatar
      arm64: Fix syscall restarting around signal suppressed by tracer · 0fe42512
      Dave Martin authored
      Commit 17c28958 ("arm64: Abstract syscallno manipulation") abstracts
      out the pt_regs.syscallno value for a syscall cancelled by a tracer
      as NO_SYSCALL, and provides helpers to set and check for this
      condition.  However, the way this was implemented has the
      unintended side-effect of disabling part of the syscall restart
      logic.
      
      This comes about because the second in_syscall() check in
      do_signal() re-evaluates the "in a syscall" condition based on the
      updated pt_regs instead of the original pt_regs.  forget_syscall()
      is explicitly called prior to the second check in order to prevent
      restart logic in the ret_to_user path being spuriously triggered,
      which means that the second in_syscall() check always yields false.
      
      This triggers a failure in
      tools/testing/selftests/seccomp/seccomp_bpf.c, when using ptrace to
      suppress a signal that interrups a nanosleep() syscall.
      
      Misbehaviour of this type is only expected in the case where a
      tracer suppresses a signal and the target process is either being
      single-stepped or the interrupted syscall attempts to restart via
      -ERESTARTBLOCK.
      
      This patch restores the old behaviour by performing the
      in_syscall() check only once at the start of the function.
      
      Fixes: 17c28958 ("arm64: Abstract syscallno manipulation")
      Signed-off-by: default avatarDave Martin <Dave.Martin@arm.com>
      Reported-by: default avatarSumit Semwal <sumit.semwal@linaro.org>
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: <stable@vger.kernel.org> # 4.14.x-
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      0fe42512
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/wacom' into for-linus · 06d8b906
      Jiri Kosina authored
      Support for "In Range" flag for Wacom Intuos/Bamboo devices from Jason Gerecke
      06d8b906
    • Jiri Kosina's avatar
      43e7b149
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/rmi' into for-linus · a083a531
      Jiri Kosina authored
      RMI4 correct split report handling from Benjamin Tissoires
      a083a531
    • Jiri Kosina's avatar
      d06e56c6
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/multitouch' into for-linus · 25721aef
      Jiri Kosina authored
      - improvement of duplicate usage handling in hid-input from Benjamin Tissoires
      - Win 8.1 precisioun touchpad spec implementation from Benjamin Tissoires
      25721aef
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/i2c-hid' into for-linus · 72d0beb4
      Jiri Kosina authored
      Assorted smaller fixes to i2c-hid driver
      72d0beb4
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/hid-steam' into for-linus · 37acd687
      Jiri Kosina authored
      Valve Steam Controller support from Rodrigo Rivas Costa
      37acd687
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/hid-redragon' into for-linus · 79b83b05
      Jiri Kosina authored
      Redragon Asura support from Robert Munteanu
      79b83b05
    • Jiri Kosina's avatar
      Merge branch 'for-4.18/alps' into for-linus · c1144d29
      Jiri Kosina authored
      hid-alps driver cleanups wrt. t4_read_write_register() handling
      from Christophe Jaillet
      c1144d29
    • Al Viro's avatar
      fix proc_fill_cache() in case of d_alloc_parallel() failure · d85b399b
      Al Viro authored
      If d_alloc_parallel() returns ERR_PTR(...), we don't want to dput()
      that.  Small reorganization allows to have all error-in-lookup
      cases rejoin the main codepath after dput(child), avoiding the
      entire problem.
      Spotted-by: default avatarTetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
      Fixes: 0168b9e3 "procfs: switch instantiate_t to d_splice_alias()"
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      d85b399b
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 68abbe72
      Linus Torvalds authored
      Merge updates from Andrew Morton:
      
       - a few misc things
      
       - ocfs2 updates
      
       - v9fs updates
      
       - MM
      
       - procfs updates
      
       - lib/ updates
      
       - autofs updates
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (118 commits)
        autofs: small cleanup in autofs_getpath()
        autofs: clean up includes
        autofs: comment on selinux changes needed for module autoload
        autofs: update MAINTAINERS entry for autofs
        autofs: use autofs instead of autofs4 in documentation
        autofs: rename autofs documentation files
        autofs: create autofs Kconfig and Makefile
        autofs: delete fs/autofs4 source files
        autofs: update fs/autofs4/Makefile
        autofs: update fs/autofs4/Kconfig
        autofs: copy autofs4 to autofs
        autofs4: use autofs instead of autofs4 everywhere
        autofs4: merge auto_fs.h and auto_fs4.h
        fs/binfmt_misc.c: do not allow offset overflow
        checkpatch: improve patch recognition
        lib/ucs2_string.c: add MODULE_LICENSE()
        lib/mpi: headers cleanup
        lib/percpu_ida.c: use _irqsave() instead of local_irq_save() + spin_lock
        lib/idr.c: remove simple_ida_lock
        lib/bitmap.c: micro-optimization for __bitmap_complement()
        ...
      68abbe72
    • Dan Carpenter's avatar
      autofs: small cleanup in autofs_getpath() · 016e92da
      Dan Carpenter authored
      We don't set "*name" so it's slightly nicer to just pass "name" instead
      of "&name".
      
      Link: http://lkml.kernel.org/r/20180531064736.lnisb55eajwjynvk@kili.mountainSigned-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Acked-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Acked-by: default avatarIan Kent <raven@themaw.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      016e92da