Patchwork [git,pull] IOMMU Updates for Linux v4.21

mail settings
Submitter Joerg Roedel
Date Dec. 31, 2018, 4:36 p.m.
Message ID <>
Download mbox
Permalink /patch/691203/
State New
Headers show


git:// tags/iommu-updates-v4.21


Joerg Roedel - Dec. 31, 2018, 4:36 p.m.
Hi Linus,

there is a small merge conflict this time in arch/powerpc/kernel/iommu.c
with the tag I send you. I did a test-merge with your latest tree
locally to include my resolution in this email, but for some reason git
shows me a conflict in another file (drivers/iommu/amd_iommu.c) in the
resulting commit, which didn't show a conflict when I did the merge.

Anyway, the conflict exists because my patches modify code in the
powerpc iommu driver which is already removed in your tree.

With that in mind:

The following changes since commit 7566ec393f4161572ba6f11ad5171fd5d59b0fbd:

  Linux 4.20-rc7 (2018-12-16 15:46:55 -0800)

are available in the git repository at:

  git:// tags/iommu-updates-v4.21

for you to fetch changes up to 03ebe48e235f17d70f34890d34d8153b8a84c02e:

  Merge branches 'iommu/fixes', 'arm/renesas', 'arm/mediatek', 'arm/tegra', 'arm/omap', 'arm/smmu', 'x86/vt-d', 'x86/amd' and 'core' into next (2018-12-20 10:05:20 +0100)

IOMMU Updates for Linux v4.21

Including (in no particular order):

	- Page table code for AMD IOMMU now supports large pages where
	  smaller page-sizes were mapped before. VFIO had to work around
	  that in the past and I included a patch to remove it (acked by
	  Alex Williamson)

	- Patches to unmodularize a couple of IOMMU drivers that would
	  never work as modules anyway.

	- Work to unify the the iommu-related pointers in
	  'struct device' into one pointer. This work is not finished
	  yet, but will probably be in the next cycle.

	- NUMA aware allocation in iommu-dma code

	- Support for r8a774a1 and r8a774c0 in the Renesas IOMMU driver

	- Scalable mode support for the Intel VT-d driver

	- PM runtime improvements for the ARM-SMMU driver

	- Support for the QCOM-SMMUv2 IOMMU hardware from Qualcom

	- Various smaller fixes and improvements

Arvind Yadav (1):
      iommu/mediatek: Constify iommu_ops

Fabrizio Castro (4):
      iommu/ipmmu-vmsa: Hook up R8A774A1 DT maching code
      dt-bindings: iommu: ipmmu-vmsa: Add r8a774a1 support
      dt-bindings: iommu: ipmmu-vmsa: Add r8a774c0 support
      iommu/ipmmu-vmsa: Hook up r8a774c0 DT matching code

Ganapatrao Kulkarni (1):
      iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages()

Hai Nguyen Pham (1):
      iommu/ipmmu-vmsa: Hook up r8a77990 DT matching code

Joerg Roedel (31):
      iommu/amd: Collect page-table pages in freelist
      iommu/amd: Introduce free_sub_pt() function
      iommu/amd: Ignore page-mode 7 in free_sub_pt()
      iommu/amd: Allow downgrading page-sizes in alloc_pte()
      iommu/amd: Restart loop if cmpxchg64 succeeded in alloc_pte()
      iommu/amd: Allow to upgrade page-size
      vfio/type1: Remove map_try_harder() code path
      iommu/amd: Use pr_fmt()
      iommu/amd: Fix line-break in error log reporting
      iommu/amd: Remove leading 0s in error log messages
      iommu: Introduce wrappers around dev->iommu_fwspec
      ACPI/IORT: Use helper functions to access dev->iommu_fwspec
      iommu/arm-smmu: Use helper functions to access dev->iommu_fwspec
      iommu/dma: Use helper functions to access dev->iommu_fwspec
      iommu/ipmmu-vmsa: Use helper functions to access dev->iommu_fwspec
      iommu/mediatek: Use helper functions to access dev->iommu_fwspec
      iommu/of: Use helper functions to access dev->iommu_fwspec
      iommu/qcom: Use helper functions to access dev->iommu_fwspec
      iommu/tegra: Use helper functions to access dev->iommu_fwspec
      driver core: Introduce device_iommu_mapped() function
      iommu/of: Use device_iommu_mapped()
      ACPI/IORT: Use device_iommu_mapped()
      powerpc/iommu: Use device_iommu_mapped()
      xhci: Use device_iommu_mapped()
      dmaengine: sh: rcar-dmac: Use device_iommu_mapped()
      iommu/sysfs: Rename iommu_release_device()
      iommu: Consolitate ->add/remove_device() calls
      iommu/of: Don't call iommu_ops->add_device directly
      ACPI/IORT: Don't call iommu_ops->add_device directly
      iommu: Check for iommu_ops == NULL in iommu_probe_device()
      Merge branches 'iommu/fixes', 'arm/renesas', 'arm/mediatek', 'arm/tegra', 'arm/omap', 'arm/smmu', 'x86/vt-d', 'x86/amd' and 'core' into next

Lu Baolu (13):
      iommu/vtd: Cleanup dma_remapping.h header
      iommu/vt-d: Enumerate the scalable mode capability
      iommu/vt-d: Manage scalalble mode PASID tables
      iommu/vt-d: Move page table helpers into header
      iommu/vt-d: Add 256-bit invalidation descriptor support
      iommu/vt-d: Reserve a domain id for FL and PT modes
      iommu/vt-d: Add second level page table interface
      iommu/vt-d: Setup pasid entry for RID2PASID support
      iommu/vt-d: Pass pasid table to context mapping
      iommu/vt-d: Setup context and enable RID2PASID support
      iommu/vt-d: Add first level page table interface
      iommu/vt-d: Shared virtual address in scalable mode
      iommu/vt-d: Remove deferred invalidation

Paul Gortmaker (9):
      iommu: Audit and remove any unnecessary uses of module.h
      iommu/rockchip: Make it explicitly non-modular
      iommu/msm: Make it explicitly non-modular
      iommu/mediatek: Make it explicitly non-modular
      iommu/ipmmu-vmsa: Make it explicitly non-modular
      iommu/qcom: Make it explicitly non-modular
      iommu/tegra: Make it explicitly non-modular
      iommu/arm-smmu: Make arm-smmu explicitly non-modular
      iommu/arm-smmu: Make arm-smmu-v3 explicitly non-modular

Robin Murphy (2):
      iommu: Do physical merging in iommu_map_sg()
      iommu/arm-smmu-v3: Fix big-endian CMD_SYNC writes

Sohil Mehta (1):
      iommu/vt-d: Handle domain agaw being less than iommu agaw

Sricharan R (3):
      iommu/arm-smmu: Add pm_runtime/sleep ops
      iommu/arm-smmu: Invoke pm_runtime across the driver
      iommu/arm-smmu: Add the device_link between masters and smmu

Vivek Gautam (3):
      dt-bindings: arm-smmu: Add bindings for qcom,smmu-v2
      iommu/arm-smmu: Add support for qcom,smmu-v2 variant
      dt-bindings: arm-smmu: Add binding doc for Qcom smmu-500

Will Deacon (1):
      iommu/arm-smmu-v3: Use explicit mb() when moving cons pointer

Yangtao Li (3):
      iommu/omap: Remove DEBUG_SEQ_FOPS_RO()
      iommu/tegra: Change to use DEFINE_SHOW_ATTRIBUTE macro
      irq_remapping: Remove unused header files

Yong Wu (1):
      Revert "iommu/io-pgtable-arm: Check for v7s-incapable systems"

Yoshihiro Shimoda (2):
      iommu/ipmmu-vmsa: Modify ipmmu_slave_whitelist() to check SoC revisions
      iommu/ipmmu-vmsa: Add an array of slave devices whitelist

Yu Zhao (1):
      iommu/amd: Fix amd_iommu=force_isolation

Zhen Lei (1):
      iommu/arm-smmu-v3: Avoid memory corruption from Hisilicon MSI payloads

tom (1):
      iommu: Change tlb_range_add to iotlb_range_add and tlb_sync to iotlb_sync

 Documentation/admin-guide/kernel-parameters.txt    |  12 +-
 .../devicetree/bindings/iommu/arm,smmu.txt         |  43 ++
 .../bindings/iommu/renesas,ipmmu-vmsa.txt          |   2 +
 arch/powerpc/kernel/eeh.c                          |   2 +-
 arch/powerpc/kernel/iommu.c                        |   6 +-
 arch/x86/kernel/tboot.c                            |   2 +-
 drivers/acpi/arm64/iort.c                          |  23 +-
 drivers/dma/sh/rcar-dmac.c                         |   2 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c         |   2 +-
 drivers/gpu/drm/i915/intel_display.c               |   2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c                |   2 +-
 drivers/iommu/amd_iommu.c                          | 275 ++++++++-----
 drivers/iommu/amd_iommu_init.c                     |  64 +--
 drivers/iommu/amd_iommu_types.h                    |   1 +
 drivers/iommu/amd_iommu_v2.c                       |   2 +
 drivers/iommu/arm-smmu-v3.c                        |  63 +--
 drivers/iommu/arm-smmu.c                           | 209 ++++++++--
 drivers/iommu/dma-iommu.c                          |  22 +-
 drivers/iommu/dmar.c                               |  91 +++--
 drivers/iommu/intel-iommu.c                        | 351 ++++++++--------
 drivers/iommu/intel-pasid.c                        | 449 ++++++++++++++++++++-
 drivers/iommu/intel-pasid.h                        |  40 +-
 drivers/iommu/intel-svm.c                          | 171 +++-----
 drivers/iommu/intel_irq_remapping.c                |   6 +-
 drivers/iommu/io-pgtable-arm-v7s.c                 |   4 -
 drivers/iommu/iommu-sysfs.c                        |  14 +-
 drivers/iommu/iommu.c                              | 113 +++---
 drivers/iommu/ipmmu-vmsa.c                         |  88 ++--
 drivers/iommu/irq_remapping.c                      |   1 -
 drivers/iommu/msm_iommu.c                          |  13 +-
 drivers/iommu/mtk_iommu.c                          |  25 +-
 drivers/iommu/mtk_iommu_v1.c                       |  47 +--
 drivers/iommu/of_iommu.c                           |  16 +-
 drivers/iommu/omap-iommu-debug.c                   |  25 +-
 drivers/iommu/qcom_iommu.c                         |  34 +-
 drivers/iommu/rockchip-iommu.c                     |  13 +-
 drivers/iommu/tegra-gart.c                         |  37 +-
 drivers/iommu/tegra-smmu.c                         |  26 +-
 drivers/misc/mic/scif/scif_rma.c                   |   2 +-
 drivers/misc/mic/scif/scif_rma.h                   |   2 +-
 drivers/usb/host/xhci.c                            |   2 +-
 drivers/vfio/vfio_iommu_type1.c                    |  33 +-
 include/linux/device.h                             |  10 +
 include/linux/dma_remapping.h                      |  58 ---
 include/linux/intel-iommu.h                        | 108 ++++-
 include/linux/iommu.h                              |  18 +-
 46 files changed, 1613 insertions(+), 918 deletions(-)
 delete mode 100644 include/linux/dma_remapping.h

Please pull.


	Joerg - Jan. 2, 2019, 12:35 a.m.
The pull request you sent on Mon, 31 Dec 2018 17:36:58 +0100:

> git:// tags/iommu-updates-v4.21

has been merged into torvalds/linux.git:

Thank you!