1. 22 Mar, 2016 13 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma · b8ba4526
      Linus Torvalds authored
      Pull more rdma updates from Doug Ledford:
       "Round two of 4.6 merge window patches.
      
        This is a monster pull request.  I held off on the hfi1 driver updates
        (the hfi1 driver is intimately tied to the qib driver and the new
        rdmavt software library that was created to help both of them) in my
        first pull request.  The hfi1/qib/rdmavt update is probably 90% of
        this pull request.  The hfi1 driver is being left in staging so that
        it can be fixed up in regards to the API that Al and yourself didn't
        like.  Intel has agreed to do the work, but in the meantime, this
        clears out 300+ patches in the backlog queue and brings my tree and
        their tree closer to sync.
      
        This also includes about 10 patches to the core and a few to mlx5 to
        create an infrastructure for configuring SRIOV ports on IB devices.
        That series includes one patch to the net core that we sent to netdev@
        and Dave Miller with each of the three revisions to the series.  We
        didn't get any response to the patch, so we took that as implicit
        approval.
      
        Finally, this series includes Intel's new iWARP driver for their x722
        cards.  It's not nearly the beast as the hfi1 driver.  It also has a
        linux-next merge issue, but that has been resolved and it now passes
        just fine.
      
        Summary:
      
         - A few minor core fixups needed for the next patch series
      
         - The IB SRIOV series.  This has bounced around for several versions.
           Of note is the fact that the first patch in this series effects the
           net core.  It was directed to netdev and DaveM for each iteration
           of the series (three versions total).  Dave did not object, but did
           not respond either.  I've taken this as permission to move forward
           with the series.
      
         - The new Intel X722 iWARP driver
      
         - A huge set of updates to the Intel hfi1 driver.  Of particular
           interest here is that we have left the driver in staging since it
           still has an API that people object to.  Intel is working on a fix,
           but getting these patches in now helps keep me sane as the upstream
           and Intel's trees were over 300 patches apart"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma: (362 commits)
        IB/ipoib: Allow mcast packets from other VFs
        IB/mlx5: Implement callbacks for manipulating VFs
        net/mlx5_core: Implement modify HCA vport command
        net/mlx5_core: Add VF param when querying vport counter
        IB/ipoib: Add ndo operations for configuring VFs
        IB/core: Add interfaces to control VF attributes
        IB/core: Support accessing SA in virtualized environment
        IB/core: Add subnet prefix to port info
        IB/mlx5: Fix decision on using MAD_IFC
        net/core: Add support for configuring VF GUIDs
        IB/{core, ulp} Support above 32 possible device capability flags
        IB/core: Replace setting the zero values in ib_uverbs_ex_query_device
        net/mlx5_core: Introduce offload arithmetic hardware capabilities
        net/mlx5_core: Refactor device capability function
        net/mlx5_core: Fix caching ATOMIC endian mode capability
        ib_srpt: fix a WARN_ON() message
        i40iw: Replace the obsolete crypto hash interface with shash
        IB/hfi1: Add SDMA cache eviction algorithm
        IB/hfi1: Switch to using the pin query function
        IB/hfi1: Specify mm when releasing pages
        ...
      b8ba4526
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.6-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 01cde153
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
        Features:
         - Add support for multiple NFSv4.1 callbacks in flight
         - Initial patchset for RPC multipath support
         - Adapt RPC/RDMA to use the new completion queue API
      
        Bugfixes and cleanups:
         - nfs4: nfs4_ff_layout_prepare_ds should return NULL if connection failed
         - Cleanups to remove nfs_inode_dio_wait and nfs4_file_fsync
         - Fix RPC/RDMA credit accounting
         - Properly handle RDMA_ERROR replies
         - xprtrdma: Do not wait if ib_post_send() fails
         - xprtrdma: Segment head and tail XDR buffers on page boundaries
         - xprtrdma cleanups for dprintk, physical_op_map and unused macros"
      
      * tag 'nfs-for-4.6-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (35 commits)
        nfs/blocklayout: make sure making a aligned read request
        nfs4: nfs4_ff_layout_prepare_ds should return NULL if connection failed
        nfs: remove nfs_inode_dio_wait
        nfs: remove nfs4_file_fsync
        xprtrdma: Use new CQ API for RPC-over-RDMA client send CQs
        xprtrdma: Use an anonymous union in struct rpcrdma_mw
        xprtrdma: Use new CQ API for RPC-over-RDMA client receive CQs
        xprtrdma: Serialize credit accounting again
        xprtrdma: Properly handle RDMA_ERROR replies
        rpcrdma: Add RPCRDMA_HDRLEN_ERR
        xprtrdma: Do not wait if ib_post_send() fails
        xprtrdma: Segment head and tail XDR buffers on page boundaries
        xprtrdma: Clean up dprintk format string containing a newline
        xprtrdma: Clean up physical_op_map()
        xprtrdma: Clean up unused RPCRDMA_INLINE_PAD_THRESH macro
        NFS add callback_ops to nfs4_proc_bind_conn_to_session_callback
        pnfs/NFSv4.1: Add multipath capabilities to pNFS flexfiles servers over NFSv3
        SUNRPC: Allow addition of new transports to a struct rpc_clnt
        NFSv4.1: nfs4_proc_bind_conn_to_session must iterate over all connections
        SUNRPC: Make NFS swap work with multipath
        ...
      01cde153
    • Linus Torvalds's avatar
      Merge branch 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 243d5067
      Linus Torvalds authored
      Pull overlayfs updates from Miklos Szeredi:
       "Various fixes and tweaks"
      
      * 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: cleanup unused var in rename2
        ovl: rename is_merge to is_lowest
        ovl: fixed coding style warning
        ovl: Ensure upper filesystem supports d_type
        ovl: Warn on copy up if a process has a R/O fd open to the lower file
        ovl: honor flag MS_SILENT at mount
        ovl: verify upper dentry before unlink and rename
      243d5067
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · 9f15dec8
      Linus Torvalds authored
      Pull fuse update from Miklos Szeredi:
       "This contains direct I/O fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
        fuse: return patrial success from fuse_direct_io()
        fuse: Add reference counting for fuse_io_priv
        fuse: do not use iocb after it may have been freed
      9f15dec8
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.6-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 55fc733c
      Linus Torvalds authored
      Pull xen updates from David Vrabel:
       "Features and fixes for 4.6:
      
        - Make earlyprintk=xen work for HVM guests
      
        - Remove module support for things never built as modules"
      
      * tag 'for-linus-4.6-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        drivers/xen: make platform-pci.c explicitly non-modular
        drivers/xen: make sys-hypervisor.c explicitly non-modular
        drivers/xen: make xenbus_dev_[front/back]end explicitly non-modular
        drivers/xen: make [xen-]ballon explicitly non-modular
        xen: audit usages of module.h ; remove unnecessary instances
        xen/x86: Drop mode-selecting ifdefs in startup_xen()
        xen/x86: Zero out .bss for PV guests
        hvc_xen: make early_printk work with HVM guests
        hvc_xen: fix xenboot for DomUs
        hvc_xen: add earlycon support
      55fc733c
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · b8524959
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
       "Mostly usual driver updates and improvements.  The changelog should
        give an idea.  Standing out is the i2c-qup driver with lots of new
        capabilities and we also have now an i2c-demuxer.
      
        I'd especially like to welcome Peter Rosin as the i2c-mux maintainer.
        He has an interesting series for muxes in the queue and agreed to look
        after this part of the subsystem.  Thank you, Peter, and welcome
        again!
      
        The octeon changes were applied pretty recently before the merge
        window.  I am aware.  They are the first (and relatively simple)
        patches of a larger overhaul to this driver.  In case something goes
        wrong with them, they are easy to fix (or revert).  The advantage I
        see is that they are out of the way, and I can concentrate on the next
        block of patches.  I really would like to apply the overhaul in
        smaller batches to avoid regressions.  And waiting a cycle for the
        introductory patches seemed too much of a delay for me"
      
      * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (39 commits)
        i2c: octeon: Support I2C_M_RECV_LEN
        i2c: octeon: Cleanup resource allocation code
        i2c: octeon: Cleanup i2c-octeon driver
        MAINTAINERS: add Peter Rosin as i2c mux maintainer
        dt-bindings: i2c: Spelling s/propoerty/property/
        i2c: immediately mark ourselves as registered
        i2c: i801: sort IDs alphabetically
        MAINTAINERS: Mika and me are designated reviewers for I2C DESIGNWARE
        i2c: octeon: Cleanup kerneldoc comments
        i2c: do not use internal data from driver core
        i2c: cadence: Fix the kernel-doc warnings
        i2c: imx: remove extra spaces.
        i2c: rcar: don't open code of_device_get_match_data()
        i2c: qup: Fix fifo handling after adding V2 support
        i2c: xiic: Implement power management
        i2c: piix4: Pre-shift the port number
        i2c: piix4: Always use the same type for port
        i2c: piix4: Support alternative port selection register
        i2c: tegra: don't open code of_device_get_match_data()
        i2c: riic, sh_mobile, rcar: Use ARCH_RENESAS
        ...
      b8524959
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 5266e5b1
      Linus Torvalds authored
      Pull SCSI target updates from Nicholas Bellinger:
       "The highlights this round include:
      
         - Add target_alloc_session() w/ callback helper for doing se_session
           allocation + tag + se_node_acl lookup.  (HCH + nab)
      
         - Tree-wide fabric driver conversion to use target_alloc_session()
      
         - Convert sbp-target to use percpu_ida tag pre-allocation, and
           TARGET_SCF_ACK_KREF I/O krefs (Chris Boot + nab)
      
         - Convert usb-gadget to use percpu_ida tag pre-allocation, and
           TARGET_SCF_ACK_KREF I/O krefs (Andrzej Pietrasiewicz + nab)
      
         - Convert xen-scsiback to use percpu_ida tag pre-allocation, and
           TARGET_SCF_ACK_KREF I/O krefs (Juergen Gross + nab)
      
         - Convert tcm_fc to use TARGET_SCF_ACK_KREF I/O + TMR krefs
      
         - Convert ib_srpt to use percpu_ida tag pre-allocation
      
         - Add DebugFS node for qla2xxx target sess list (Quinn)
      
         - Rework iser-target connection termination (Jenny + Sagi)
      
         - Convert iser-target to new CQ API (HCH)
      
         - Add pass-through WRITE_SAME support for IBLOCK (Mike Christie)
      
         - Introduce data_bitmap for asynchronous access of data area (Sheng
           Yang + Andy)
      
         - Fix target_release_cmd_kref shutdown comp leak (Himanshu Madhani)
      
        Also, there is a separate PULL request coming for cxgb4 NIC driver
        prerequisites for supporting hw iscsi segmentation offload (ISO), that
        will be the base for a number of v4.7 developments involving
        iscsi-target hw offloads"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (36 commits)
        target: Fix target_release_cmd_kref shutdown comp leak
        target: Avoid DataIN transfers for non-GOOD SAM status
        target/user: Report capability of handling out-of-order completions to userspace
        target/user: Fix size_t format-spec build warning
        target/user: Don't free expired command when time out
        target/user: Introduce data_bitmap, replace data_length/data_head/data_tail
        target/user: Free data ring in unified function
        target/user: Use iovec[] to describe continuous area
        target: Remove enum transport_lunflags_table
        target/iblock: pass WRITE_SAME to device if possible
        iser-target: Kill the ->isert_cmd back pointer in struct iser_tx_desc
        iser-target: Kill struct isert_rdma_wr
        iser-target: Convert to new CQ API
        iser-target: Split and properly type the login buffer
        iser-target: Remove ISER_RECV_DATA_SEG_LEN
        iser-target: Remove impossible condition from isert_wait_conn
        iser-target: Remove redundant wait in release_conn
        iser-target: Rework connection termination
        iser-target: Separate flows for np listeners and connections cma events
        iser-target: Add new state ISER_CONN_BOUND to isert_conn
        ...
      5266e5b1
    • Linus Torvalds's avatar
      Merge tag 'pci-v4.6-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · fc739eba
      Linus Torvalds authored
      Pull PCI fixes from Bjorn Helgaas:
       "Here are two fixes for v4.6:
      
         - You merged a fix for a TI DRA7xx reset issue from another source,
           so Sekhar removed the "broken" tag from the driver, and
      
         - I botched a Kconfig merge and broke hotplug configuration for
           everybody, so Tero fixed that.
      
        Summary:
      
        TI DRA7xx host bridge driver:
          Revert "PCI: dra7xx: Mark driver as broken" (Sekhar Nori)
      
        Miscellaneous:
          Restore inclusion of pci/hotplug Kconfig (Tero Roponen)"
      
      * tag 'pci-v4.6-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        Revert "PCI: dra7xx: Mark driver as broken"
        PCI: Restore inclusion of pci/hotplug Kconfig
      fc739eba
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 87cf815b
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "The previous pull request introduced a few WARN_ON() for Intel
        HD-audio HDMI.  Indeed it caught bugs, and now users get annoyed.  So
        this request came up: a collection of small fixes to paper over the
        inconsistencies on (mostly) old Intel chipsets.
      
        In addition, a trivial USB-audio quirk is included, too"
      
      * tag 'sound-fix-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - Fix missing ELD update at unplugging
        ALSA: usb-audio: add Microsoft HD-5001 to quirks
        ALSA: hda - Workaround for unbalanced i915 power refcount by concurrent probe
        ALSA: hda - Fix spurious kernel WARNING on Baytrail HDMI
        ALSA: hda - Fix forgotten HDMI monitor_present update
        ALSA: hda - Really restrict i915 notifier to HSW+
      87cf815b
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · b4af7f77
      Linus Torvalds authored
      Pull IOMMU updates from Joerg Roedel:
      
       - updates for the Exynos IOMMU driver to make use of default domains
         and to add support for the SYSMMU v5
      
       - new Mediatek IOMMU driver
      
       - support for the ARMv7 short descriptor format in the io-pgtable code
      
       - default domain support for the ARM SMMU
      
       - couple of other small fixes all over the place
      
      * tag 'iommu-updates-v4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (41 commits)
        iommu/ipmmu-vmsa: Add r8a7795 DT binding
        iommu/mediatek: Check for NULL instead of IS_ERR()
        iommu/io-pgtable-armv7s: Fix kmem_cache_alloc() flags
        iommu/mediatek: Fix handling of of_count_phandle_with_args result
        iommu/dma: Fix NEED_SG_DMA_LENGTH dependency
        iommu/mediatek: Mark PM functions as __maybe_unused
        iommu/mediatek: Select ARM_DMA_USE_IOMMU
        iommu/exynos: Use proper readl/writel register interface
        iommu/exynos: Pointers are nto physical addresses
        dts: mt8173: Add iommu/smi nodes for mt8173
        iommu/mediatek: Add mt8173 IOMMU driver
        memory: mediatek: Add SMI driver
        dt-bindings: mediatek: Add smi dts binding
        dt-bindings: iommu: Add binding for mediatek IOMMU
        iommu/ipmmu-vmsa: Use ARCH_RENESAS
        iommu/exynos: Support multiple attach_device calls
        iommu/exynos: Add Maintainers entry for Exynos SYSMMU driver
        iommu/exynos: Add support for v5 SYSMMU
        iommu/exynos: Update device tree documentation
        iommu/exynos: Add support for SYSMMU controller with bogus version reg
        ...
      b4af7f77
    • Sekhar Nori's avatar
      Revert "PCI: dra7xx: Mark driver as broken" · 9188269a
      Sekhar Nori authored
      Revert 5c3b99d0 ("PCI: dra7xx: Mark driver as broken").
      
      1c96bee4 ("ARM: DRA7: hwmod: Add custom reset handler for PCIeSS")
      added support to de-assert PCIe reset, so DRA7x PCIe is not broken anymore.
      Signed-off-by: default avatarSekhar Nori <nsekhar@ti.com>
      Signed-off-by: default avatarKishon Vijay Abraham I <kishon@ti.com>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      9188269a
    • Himanshu Madhani's avatar
      target: Fix target_release_cmd_kref shutdown comp leak · 5e47f198
      Himanshu Madhani authored
      This patch fixes an active I/O shutdown bug for fabric
      drivers using target_wait_for_sess_cmds(), where se_cmd
      descriptor shutdown would result in hung tasks waiting
      indefinitely for se_cmd->cmd_wait_comp to complete().
      
      To address this bug, drop the incorrect list_del_init()
      usage in target_wait_for_sess_cmds() and always complete()
      during se_cmd target_release_cmd_kref() put, in order to
      let caller invoke the final fabric release callback
      into se_cmd->se_tfo->release_cmd() code.
      Reported-by: default avatarHimanshu Madhani <himanshu.madhani@qlogic.com>
      Tested-by: default avatarHimanshu Madhani <himanshu.madhani@qlogic.com>
      Signed-off-by: default avatarHimanshu Madhani <himanshu.madhani@qlogic.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      5e47f198
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 968f3e37
      Linus Torvalds authored
      Pull btrfs updates from Chris Mason:
       "We have a good sized cleanup of our internal read ahead code, and the
        first series of commits from Chandan to enable PAGE_SIZE > sectorsize
      
        Otherwise, it's a normal series of cleanups and fixes, with many
        thanks to Dave Sterba for doing most of the patch wrangling this time"
      
      * 'for-linus-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (82 commits)
        btrfs: make sure we stay inside the bvec during __btrfs_lookup_bio_sums
        btrfs: Fix misspellings in comments.
        btrfs: Print Warning only if ENOSPC_DEBUG is enabled
        btrfs: scrub: silence an uninitialized variable warning
        btrfs: move btrfs_compression_type to compression.h
        btrfs: rename btrfs_print_info to btrfs_print_mod_info
        Btrfs: Show a warning message if one of objectid reaches its highest value
        Documentation: btrfs: remove usage specific information
        btrfs: use kbasename in btrfsic_mount
        Btrfs: do not collect ordered extents when logging that inode exists
        Btrfs: fix race when checking if we can skip fsync'ing an inode
        Btrfs: fix listxattrs not listing all xattrs packed in the same item
        Btrfs: fix deadlock between direct IO reads and buffered writes
        Btrfs: fix extent_same allowing destination offset beyond i_size
        Btrfs: fix file loss on log replay after renaming a file and fsync
        Btrfs: fix unreplayable log after snapshot delete + parent dir fsync
        Btrfs: fix lockdep deadlock warning due to dev_replace
        btrfs: drop unused argument in btrfs_ioctl_get_supported_features
        btrfs: add GET_SUPPORTED_FEATURES to the control device ioctls
        btrfs: change max_inline default to 2048
        ...
      968f3e37
  2. 21 Mar, 2016 27 commits
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.6' of git://git.linaro.org/people/ulf.hansson/mmc · e531cdf5
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
            - Fix ABI regression of MMC BLK ioctl
            - Remove the unused MMC_DATA_STREAM flag
            - Enable asynchronous system PM for the host device
            - Minor fixes and clean-ups
      
        SDHCI host:
           Throughout the years, the numbers of SDHCI variants have increased
           and so has also the numbers of SDHCI callbacks/quirks.  The purpose
           of these callbacks/quirks were to enable SDHCI to deal with variant
           specific requirements, but unfortunate this method didn't scale.
           Instead we have ended up with a mess.  Not only did the code become
           suboptimal but also highly fragile.
      
           Lately many discussions of how to move forward with SDHCI has taken
           place at the MMC mailing list.  Step by step, we aim to turn
           SDHCI's common code into a set of library functions.  This will
           enable for optimizations and allow some of the existing callbacks
           and quirks to be removed, which also should help to make the code
           less fragile.
      
           Therefore I am also really pleased to announce that Adrian Hunter
           (Intel) has volunteered to step in as the maintainer for SDHCI.
      
           Future wise, I hope the community around SDHCI will continue to
           grow and that this release cycle can be the starting point of
           moving SDHCI into a better shape.  As a matter of fact, already in
           this cycle the re-factoring has begun, but of course there are also
           fixes and new features included.  Some highlights:
      
            - sdhci-iproc: Add support for Broadcom's BCM2835 eMMC IP
            - sdhci-acpi: Add support for QCOM controllers
            - sdhci-pic32: Add new SDHCI variant for PIC32MZDA
      
        Other hosts:
            - atmel-mci: Fix a NULL pointer dereference
            - mediatek: Add SD write-protect support
            - mmc_spi: Fix card detect in GPIO case
            - tmio/sdhi: Add r8a7795 support
            - tmio/sdhi: Some fixes and clean-ups
            - dw_mmc: Add HW reset support
            - dw_mmc: Some fixes and clean-ups
            - sunxi: Add support for MMC DDR52 mode"
      
      * tag 'mmc-v4.6' of git://git.linaro.org/people/ulf.hansson/mmc: (123 commits)
        mmc: sdhci-of-at91: fix wake-up issue when using runtime pm
        mmc: sdhci-pci: Do not set DMA mask in enable_dma()
        mmc: sdhci-acpi: Remove enable_dma() hook
        mmc: sdhci: Set DMA mask when adding host
        mmc: block: fix ABI regression of mmc_blk_ioctl
        mmc: atmel-mci: Check pdata for NULL before dereferencing it at DMA config
        mmc: core: remove redundant memset of sdio_read_cccr
        mmc: core: remove redundant memset of mmc_decode_cid
        mmc: of_mmc_spi: fix unused warning
        mmc: sdhci-of-arasan: add phy support for sdhci-of-arasan
        mmc: sdhci-of-arasan: fix missing sdhci_pltfm_free for err handling
        mmc: sdhci-of-arasan: remove disable clk_ahb from sdhci_arasan_resume
        Documentation: bindings: add description of phy for sdhci-of-arasan
        mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout
        mmc: mmci: Remove unnecessary header file
        mmc: sdhci-acpi: add QCOM controllers
        mmc: tegra: implement memcomp pad calibration
        mmc: mediatek: Use mmc_regulator_set_vqmmc in start_signal_voltage_switch
        mmc: mediatek: Change signal voltage error to dev_dbg()
        mmc: sh_mmcif, tmio: Use ARCH_RENESAS
        ...
      e531cdf5
    • Doug Ledford's avatar
    • Linus Torvalds's avatar
      Merge tag 'md/4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md · 4526b710
      Linus Torvalds authored
      Pull MD updates from Shaohua Li:
       "This update mainly fixes bugs.
      
         - a raid5 discard related fix from Jes
         - a MD multipath bio clone fix from Ming
         - raid1 error handling deadlock fix from Nate and corresponding
           raid10 fix from myself
         - a raid5 stripe batch fix from Neil
         - a patch from Sebastian to avoid unnecessary uevent
         - several cleanup/debug patches"
      
      * tag 'md/4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md:
        md/raid5: Cleanup cpu hotplug notifier
        raid10: include bio_end_io_list in nr_queued to prevent freeze_array hang
        raid1: include bio_end_io_list in nr_queued to prevent freeze_array hang
        md: fix typos for stipe
        md/bitmap: remove redundant return in bitmap_checkpage
        md/raid1: remove unnecessary BUG_ON
        md: multipath: don't hardcopy bio in .make_request path
        md/raid5: output stripe state for debug
        md/raid5: preserve STRIPE_PREREAD_ACTIVE in break_stripe_batch_list
        Update MD git tree URL
        md/bitmap: remove redundant check
        MD: warn for potential deadlock
        md: Drop sending a change uevent when stopping
        RAID5: revert e9e4c377 to fix a livelock
        RAID5: check_reshape() shouldn't call mddev_suspend
        md/raid5: Compare apples to apples (or sectors to sectors)
      4526b710
    • Eli Cohen's avatar
      IB/ipoib: Allow mcast packets from other VFs · 68996a6e
      Eli Cohen authored
      With SRIOV enabled, two VFs on the same HCA which have the same port LID
      and may have the same QP number. To enable receiving multicasts from
      such VFs, further qualify the check: ignore the receive only if, in
      addition, the packet source gid equals the receiving VF's source gid.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      68996a6e
    • Eli Cohen's avatar
      IB/mlx5: Implement callbacks for manipulating VFs · eff901d3
      Eli Cohen authored
      Implement the IB defined callbacks used to manipulate the policy for the
      link state, set GUIDs or get statistics information. This functionality
      is added into a new file that will be used to add any SRIOV related
      functionality to the mlx5 IB layer.
      
      The following callbacks have been added:
      
      mlx5_ib_get_vf_config
      mlx5_ib_set_vf_link_state
      mlx5_ib_get_vf_stats
      mlx5_ib_set_vf_guid
      
      In addition, publish whether this device is based on a virtual function.
      
      In mlx5 supported devices, virtual functions are implemented as vHCAs.
      vHCAs have their own QP number space so it is possible that two vHCAs
      will use a QP with the same number at the same time.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      eff901d3
    • Eli Cohen's avatar
      net/mlx5_core: Implement modify HCA vport command · 1f324bff
      Eli Cohen authored
      Implement the modify HCA vport commands used to modify the parameters of
      virtual HCA's ports.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      1f324bff
    • Eli Cohen's avatar
      net/mlx5_core: Add VF param when querying vport counter · 2a4826fe
      Eli Cohen authored
      Add a vf parameter to mlx5_core_query_vport_counter so we can call it to
      query counters of virtual functions. Also update current users of the
      API.
      
      PFs may call mlx5_core_query_vport_counter with other_vport set to
      indicate that they are querying a virtual function. The virtual
      function to be queried is given by the vf parameter. Virtual function
      numbering is zero based so the first VF is 0 and so on. When a PF
      queries its own function, the other_vport parameter is cleared.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      2a4826fe
    • Eli Cohen's avatar
      IB/ipoib: Add ndo operations for configuring VFs · 9c3c5f8e
      Eli Cohen authored
      Add ndo operations to the network driver that enables configuring the
      following operations:
      
      ipoib_set_vf_link_state - configure the VF link policy
      ipoib_get_vf_config - get link state configuration
      ipoib_set_vf_guid - set a VF port or node GUID
      ipoib_get_vf_stats - get statistics of a VF
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      9c3c5f8e
    • Eli Cohen's avatar
      IB/core: Add interfaces to control VF attributes · 50174a7f
      Eli Cohen authored
      Following the practice exercised for network devices which allow the PF
      net device to configure attributes of its virtual functions, we
      introduce the following functions to be used by IPoIB which is the
      network driver implementation for IB devices.
      
      ib_set_vf_link_state - set the policy for a VF link. More below.
      ib_get_vf_config - read configuration information of a VF
      ib_get_vf_stats - read VF statistics
      ib_set_vf_guid - set the node or port GUID of a VF
      
      Also add an indication in the device cap flags that indicates that this
      IB devices is based on a virtual function.
      
      A VF shares the physical port with the PF and other VFs. When setting
      the link state we have three options:
      
      1. Auto - in this mode, the virtual port follows the state of the
         physical port and becomes active only if the physical port's state is
         active. In all other cases it remains in a Down state.
      2. Down - sets the state of the virtual port to Down
      3. Up - causes the virtual port to transition into Initialize state if
         it was not already in this state. A virtualization aware subnet manager
         can then bring the state of the port into the Active state.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      50174a7f
    • Linus Torvalds's avatar
      [media] vsp1: use proper dma alloc/free functions · 770c4c11
      Linus Torvalds authored
      I noticed this while merging the drm tree and checking for stragglers:
      the vsp1 driver still used dma_[alloc|free]_writecombine() that got
      renamed in commit f6e45661 ("dma, mm/pat: Rename
      dma_*_writecombine() to dma_*_wc()")
      
      I should have noticed back in the media merge (commit bace3db5), but
      better late than never.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      770c4c11
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 266c73b7
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "This is the main drm pull request for 4.6 kernel.
      
        Overall the coolest thing here for me is the nouveau maxwell signed
        firmware support from NVidia, it's taken a long while to extract this
        from them.
      
        I also wish the ARM vendors just designed one set of display IP, ARM
        display block proliferation is definitely increasing.
      
        Core:
           - drm_event cleanups
           - Internal API cleanup making mode_fixup optional.
           - Apple GMUX vga switcheroo support.
           - DP AUX testing interface
      
        Panel:
           - Refactoring of DSI core for use over more transports.
      
        New driver:
           - ARM hdlcd driver
      
        i915:
           - FBC/PSR (framebuffer compression, panel self refresh) enabled by default.
           - Ongoing atomic display support work
           - Ongoing runtime PM work
           - Pixel clock limit checks
           - VBT DSI description support
           - GEM fixes
           - GuC firmware scheduler enhancements
      
        amdkfd:
           - Deferred probing fixes to avoid make file or link ordering.
      
        amdgpu/radeon:
           - ACP support for i2s audio support.
           - Command Submission/GPU scheduler/GPUVM optimisations
           - Initial GPU reset support for amdgpu
      
        vmwgfx:
           - Support for DX10 gen mipmaps
           - Pageflipping and other fixes.
      
        exynos:
           - Exynos5420 SoC support for FIMD
           - Exynos5422 SoC support for MIPI-DSI
      
        nouveau:
           - GM20x secure boot support - adds acceleration for Maxwell GPUs.
           - GM200 support
           - GM20B clock driver support
           - Power sensors work
      
        etnaviv:
           - Correctness fixes for GPU cache flushing
           - Better support for i.MX6 systems.
      
        imx-drm:
           - VBlank IRQ support
           - Fence support
           - OF endpoint support
      
        msm:
           - HDMI support for 8996 (snapdragon 820)
           - Adreno 430 support
           - Timestamp queries support
      
        virtio-gpu:
           - Fixes for Android support.
      
        rockchip:
           - Add support for Innosilicion HDMI
      
        rcar-du:
           - Support for 4 crtcs
           - R8A7795 support
           - RCar Gen 3 support
      
        omapdrm:
           - HDMI interlace output support
           - dma-buf import support
           - Refactoring to remove a lot of legacy code.
      
        tilcdc:
           - Rewrite of pageflipping code
           - dma-buf support
           - pinctrl support
      
        vc4:
           - HDMI modesetting bug fixes
           - Significant 3D performance improvement.
      
        fsl-dcu (FreeScale):
           - Lots of fixes
      
        tegra:
           - Two small fixes
      
        sti:
           - Atomic support for planes
           - Improved HDMI support"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (1063 commits)
        drm/amdgpu: release_pages requires linux/pagemap.h
        drm/sti: restore mode_fixup callback
        drm/amdgpu/gfx7: add MTYPE definition
        drm/amdgpu: removing BO_VAs shouldn't be interruptible
        drm/amd/powerplay: show uvd/vce power gate enablement for tonga.
        drm/amd/powerplay: show uvd/vce power gate info for fiji
        drm/amdgpu: use sched fence if possible
        drm/amdgpu: move ib.fence to job.fence
        drm/amdgpu: give a fence param to ib_free
        drm/amdgpu: include the right version of gmc header files for iceland
        drm/radeon: fix indentation.
        drm/amd/powerplay: add uvd/vce dpm enabling flag to fix the performance issue for CZ
        drm/amdgpu: switch back to 32bit hw fences v2
        drm/amdgpu: remove amdgpu_fence_is_signaled
        drm/amdgpu: drop the extra fence range check v2
        drm/amdgpu: signal fences directly in amdgpu_fence_process
        drm/amdgpu: cleanup amdgpu_fence_wait_empty v2
        drm/amdgpu: keep all fences in an RCU protected array v2
        drm/amdgpu: add number of hardware submissions to amdgpu_fence_driver_init_ring
        drm/amdgpu: RCU protected amd_sched_fence_release
        ...
      266c73b7
    • Eli Cohen's avatar
      IB/core: Support accessing SA in virtualized environment · a0c1b2a3
      Eli Cohen authored
      Per the ongoing standardisation process, when virtual HCAs are present
      in a network, traffic is routed based on a destination GID. In order to
      access the SA we use the well known SA GID.
      
      We also add a GRH required boolean field to the port attributes which is
      used to report to the verbs consumer whether this port is connected to a
      virtual network. We use this field to realize whether we need to create
      an address vector with GRH to access the subnet administrator. We clear
      the port attributes struct before calling the hardware driver to make
      sure the default remains that GRH is not required.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      a0c1b2a3
    • Eli Cohen's avatar
      IB/core: Add subnet prefix to port info · fad61ad4
      Eli Cohen authored
      The subnet prefix is a part of the port_info MAD returned and should be
      available at the ib_port_attr struct. We define it here and provide a
      default implementation in case the hardware driver does not provide one.
      The subnet prefix is required when creating the address vector to access
      the SA in networks where GRH must be used.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      fad61ad4
    • Eli Cohen's avatar
      IB/mlx5: Fix decision on using MAD_IFC · d603c809
      Eli Cohen authored
      Fix the condition that dictates when MAD_IFC should be used. According
      to firmware specifications, MAD_IFC commands must be used only if the
      ib_virt capability is off.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      d603c809
    • Eli Cohen's avatar
      net/core: Add support for configuring VF GUIDs · cc8e27cc
      Eli Cohen authored
      Add two new NLAs to support configuration of Infiniband node or port
      GUIDs. New applications can choose to use this interface to configure
      GUIDs with iproute2 with commands such as:
      
      ip link set dev ib0 vf 0 node_guid 00:02:c9:03:00:21:6e:70
      ip link set dev ib0 vf 0 port_guid 00:02:c9:03:00:21:6e:78
      
      A new ndo, ndo_sef_vf_guid is introduced to notify the net device of the
      request to change the GUID.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      cc8e27cc
    • Leon Romanovsky's avatar
      IB/{core, ulp} Support above 32 possible device capability flags · fb532d6a
      Leon Romanovsky authored
      The old bitwise device_cap_flags variable was limited to u32 which
      has all bits already defined. In order to overcome it, we converted
      device_cap_flags variable to be u64 type.
      Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
      Reviewed-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      fb532d6a
    • Leon Romanovsky's avatar
      IB/core: Replace setting the zero values in ib_uverbs_ex_query_device · 2953f425
      Leon Romanovsky authored
      The setting to zero during variable initialization eliminates
      the need to explicitly set to zero variables and structures.
      Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
      Reviewed-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      2953f425
    • Sagi Grimberg's avatar
      net/mlx5_core: Introduce offload arithmetic hardware capabilities · 3f0393a5
      Sagi Grimberg authored
      Define the necessary hardware structures for the offload
      arithmetic capabilities and read/cache them on driver load.
      Signed-off-by: default avatarSagi Grimberg <sagig@mellanox.com>
      Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
      Reviewed-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      3f0393a5
    • Leon Romanovsky's avatar
      net/mlx5_core: Refactor device capability function · b06e7de8
      Leon Romanovsky authored
      Device capability function was called similar in all places.
      It was called twice for every queried parameter, while the
      difference between calls was in HCA capability mode only.
      
      The change proposed unify these calls into one function.
      Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
      Reviewed-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      b06e7de8
    • Leon Romanovsky's avatar
      net/mlx5_core: Fix caching ATOMIC endian mode capability · 91d9ed84
      Leon Romanovsky authored
      Add caching of maximum device capability of ATOMIC endian mode.
      
      Fixes: f91e6d89 ('net/mlx5_core: Add setting ATOMIC endian mode')
      Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
      Reviewed-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      91d9ed84
    • Linus Torvalds's avatar
      Merge tag 'arm64-perf' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 2c856e14
      Linus Torvalds authored
      Pull arm[64] perf updates from Will Deacon:
       "I have another mixed bag of ARM-related perf patches here.
      
        It's about 25% CPU and 75% interconnect, but with drivers/bus/
        languishing without an obvious maintainer or tree, Olof and I agreed
        to keep all of these PMU patches together.  I suspect a whole load of
        code from drivers/bus/arm-* can be moved under drivers/perf/, so
        that's on the radar for the future.
      
        Summary:
      
         - Initial support for ARMv8.1 CPU PMUs
      
         - Support for the CPU PMU in Cavium ThunderX
      
         - CPU PMU support for systems running 32-bit Linux in secure mode
      
         - Support for the system PMU in ARM CCI-550 (Cache Coherent Interconnect)"
      
      * tag 'arm64-perf' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (26 commits)
        drivers/perf: arm_pmu: avoid NULL dereference when not using devicetree
        arm64: perf: Extend ARMV8_EVTYPE_MASK to include PMCR.LC
        arm-cci: remove unused variable
        arm-cci: don't return value from void function
        arm-cci: make private functions static
        arm-cci: CoreLink CCI-550 PMU driver
        arm-cci500: Rearrange PMU driver for code sharing with CCI-550 PMU
        arm-cci: CCI-500: Work around PMU counter writes
        arm-cci: Provide hook for writing to PMU counters
        arm-cci: Add helper to enable PMU without synchornising counters
        arm-cci: Add routines to save/restore all counters
        arm-cci: Get the status of a counter
        arm-cci: write_counter: Remove redundant check
        arm-cci: Delay PMU counter writes to pmu::pmu_enable
        arm-cci: Refactor CCI PMU enable/disable methods
        arm-cci: Group writes to counter
        arm-cci: fix handling cpumask_any_but return value
        arm-cci: simplify sysfs attr handling
        drivers/perf: arm_pmu: implement CPU_PM notifier
        arm64: dts: Add Cavium ThunderX specific PMU
        ...
      2c856e14
    • Dan Carpenter's avatar
      ib_srpt: fix a WARN_ON() message · 5658600e
      Dan Carpenter authored
      The first argument of WARN_ON() is a condition, so it means the warning
      message here will just be the name without the ->qp_num information.
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Reviewed-by: default avatarBart Van Assche <bart.vanassche@sandisk.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      5658600e
    • Tatyana Nikolova's avatar
      i40iw: Replace the obsolete crypto hash interface with shash · 34abf9ed
      Tatyana Nikolova authored
      This patch replaces the obsolete crypto hash interface with shash
      and resolves a build failure after merge of the rdma tree
      which is caused by the removal of crypto hash interface
      
      Removing CRYPTO_ALG_ASYNC from crypto_alloc_shash(),
      because it is by definition sync only
      Signed-off-by: default avatarMustafa Ismail <mustafa.ismail@intel.com>
      Signed-off-by: default avatarTatyana Nikolova <tatyana.e.nikolova@intel.com>
      Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      34abf9ed
    • Linus Torvalds's avatar
      Merge tag 'arc-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · d34687ab
      Linus Torvalds authored
      Pull ARC architecture updates from Vineet Gupta:
       - Big Endian io accessors fix [Lada]
       - Spellos fixes [Adam]
       - Fix for DW GMAC breakage [Alexey]
       - Making DMA API 64-bit ready
       - Shutting up -Wmaybe-uninitialized noise for ARC
       - Other minor fixes here and there, comments update
      
      * tag 'arc-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (21 commits)
        ARCv2: ioremap: Support dynamic peripheral address space
        ARC: dma: reintroduce platform specific dma<->phys
        ARC: dma: ioremap: use phys_addr_t consistenctly in code paths
        ARC: dma: pass_phys() not sg_virt() to cache ops
        ARC: dma: non-coherent pages need V-P mapping if in HIGHMEM
        ARC: dma: Use struct page based page allocator helpers
        ARC: build: Turn off -Wmaybe-uninitialized for ARC gcc 4.8
        ARC: [plat-axs10x] add Ethernet PHY description in .dts
        arc: use of_platform_default_populate() to populate default bus
        ARC: thp: unbork !CONFIG_TRANSPARENT_HUGEPAGE build
        arc: [plat-nsimosci*] use ezchip network driver
        ARCv2: LLSC: software backoff is NOT needed starting HS2.1c
        ARC: mm: Use virt_to_pfn() for addr >> PAGE_SHIFT pattern
        ARC: [plat-nsim] document ranges
        ARC: build: Better way to detect ISA compatible toolchain
        ARCv2: Allow enabling PAE40 w/o HIGHMEM
        ARC: [BE] readl()/writel() to work in Big Endian CPU configuration
        ARC: [*defconfig] No need to specify CONFIG_CROSS_COMPILE
        ARC: [BE] Select correct CROSS_COMPILE prefix
        ARC: bitops: Remove non relevant comments
        ...
      d34687ab
    • Mitko Haralanov's avatar
      IB/hfi1: Add SDMA cache eviction algorithm · 5511d781
      Mitko Haralanov authored
      This commit adds a cache eviction algorithm for the SDMA
      user buffer cache.
      
      Besides the interval RB tree used for node lookup, the cache
      nodes are also arranged in a doubly-linked list. When a node is
      used, it is put at the beginning of the list. Less frequently
      used nodes naturally move to the tail of the list.
      
      When the cache limit is reached, the eviction code starts
      traversing the linked list in reverse, freeing buffers until
      enough space has been freed to fit the new user buffer. This
      guarantees that only the least used cache nodes will be removed
      from the cache.
      Reviewed-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
      Reviewed-by: default avatarDean Luick <dean.luick@intel.com>
      Signed-off-by: default avatarMitko Haralanov <mitko.haralanov@intel.com>
      Signed-off-by: default avatarJubin John <jubin.john@intel.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      5511d781
    • Mitko Haralanov's avatar
      IB/hfi1: Switch to using the pin query function · a7922f7d
      Mitko Haralanov authored
      Use the new function to query whether the expected receive
      user buffer can be pinned successfully. This requires that
      a new variable be added to the hfi1_filedata structure used
      to hold the number of pages pinned by the expected receive
      code.
      Reviewed-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
      Reviewed-by: default avatarDean Luick <dean.luick@intel.com>
      Signed-off-by: default avatarMitko Haralanov <mitko.haralanov@intel.com>
      Signed-off-by: default avatarJubin John <jubin.john@intel.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      a7922f7d
    • Mitko Haralanov's avatar
      IB/hfi1: Specify mm when releasing pages · bd3a8947
      Mitko Haralanov authored
      This change adds a pointer to the process mm_struct when
      calling hfi1_release_user_pages().
      
      Previously, the function used the mm_struct of the current
      process to adjust the number of pinned pages. However, is some
      cases, namely when unpinning pages due to a MMU notifier call,
      we want to drop into that code block as it will cause a deadlock
      (the MMU notifiers take the process' mmap_sem prior to calling
      the callbacks).
      
      By allowing to caller to specify the pointer to the mm_struct,
      the caller has finer control over that part of hfi1_release_user_pages().
      Reviewed-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
      Reviewed-by: default avatarDean Luick <dean.luick@intel.com>
      Signed-off-by: default avatarMitko Haralanov <mitko.haralanov@intel.com>
      Signed-off-by: default avatarJubin John <jubin.john@intel.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      bd3a8947