lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201214234518.GA14575@willie-the-truck>
Date:   Mon, 14 Dec 2020 23:45:18 +0000
From:   Will Deacon <will@...nel.org>
To:     torvalds@...ux-foundation.org
Cc:     iommu@...ts.linux-foundation.org, linux-kernel@...r.kernel.org,
        Joerg Roedel <joro@...tes.org>,
        Alex Williamson <alex.williamson@...hat.com>,
        Robin Murphy <robin.murphy@....com>,
        Lu Baolu <baolu.lu@...ux.intel.com>, kernel-team@...roid.com
Subject: [GIT PULL] IOMMU updates for 5.11

Hi Linus,

Please pull these IOMMU updates for 5.11: there's a good mixture of
improvements to the core code and driver changes across the board.
Summary in the tag and merge commits.

One thing worth pointing out is that this includes a quirk to work
around behaviour in the i915 driver (see 65f746e8285f ("iommu: Add quirk
for Intel graphic devices in map_sg")), which otherwise interacts badly
with the conversion of the intel IOMMU driver over to the DMA-IOMMU APU
but has being fixed properly in the DRM tree. We'll revert the quirk
later this cycle once we've confirmed that things don't fall apart
without it.

Cheers,

Will

--->8

The following changes since commit 4165bf015ba9454f45beaad621d16c516d5c5afe:

  iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs (2020-12-07 11:00:24 +0000)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/iommu-updates-v5.11

for you to fetch changes up to 5ae9a046a452d60b6a6c076f6df7e3f8e34f918f:

  iommu/amd: Add sanity check for interrupt remapping table length macros (2020-12-11 12:47:22 +0000)

----------------------------------------------------------------
IOMMU updates for 5.11

- IOVA allocation optimisations and removal of unused code

- Introduction of DOMAIN_ATTR_IO_PGTABLE_CFG for parameterising the
  page-table of an IOMMU domain

- Support for changing the default domain type in sysfs

- Optimisation to the way in which identity-mapped regions are created

- Driver updates:
  * Arm SMMU updates, including continued work on Shared Virtual Memory
  * Tegra SMMU updates, including support for PCI devices
  * Intel VT-D updates, including conversion to the IOMMU-DMA API

- Cleanup, kerneldoc and minor refactoring

----------------------------------------------------------------
Bjorn Andersson (3):
      iommu/arm-smmu: Allow implementation specific write_s2cr
      iommu/arm-smmu-qcom: Read back stream mappings
      iommu/arm-smmu-qcom: Implement S2CR quirk

Chen Jun (1):
      iommu: Modify the description of iommu_sva_unbind_device

Christoph Hellwig (1):
      dma-iommu: remove __iommu_dma_mmap

Christophe JAILLET (1):
      iommu/vt-d: Avoid GFP_ATOMIC where it is not needed

Cong Wang (1):
      iommu: avoid taking iova_rbtree_lock twice

Jean-Philippe Brucker (4):
      iommu/ioasid: Add ioasid references
      iommu/sva: Add PASID helpers
      iommu/arm-smmu-v3: Implement iommu_sva_bind/unbind()
      iommu/arm-smmu-v3: Hook up ATC invalidation to mm ops

John Garry (3):
      iommu: Delete split_and_remove_iova()
      iommu: Stop exporting alloc_iova_mem()
      iommu: Stop exporting free_iova_mem()

Jordan Crouse (2):
      iommu/arm-smmu-qcom: Add implementation for the adreno GPU SMMU
      dt-bindings: arm-smmu: Add compatible string for Adreno GPU SMMU

Kaixu Xia (1):
      iommu/arm-smmu-v3: Assign boolean values to a bool variable

Keqian Zhu (1):
      iommu: Defer the early return in arm_(v7s/lpae)_map

Kunkun Jiang (1):
      iommu/io-pgtable-arm: Remove unused 'level' parameter from iopte_type() macro

Lu Baolu (6):
      iommu: Add quirk for Intel graphic devices in map_sg
      iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev
      iommu/vt-d: Cleanup after converting to dma-iommu ops
      iommu: Move def_domain type check for untrusted device into core
      iommu: Fix htmldocs warnings in sysfs-kernel-iommu_groups
      iommu/vt-d: Remove set but not used variable

Lukas Bulwahn (1):
      iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM

Nicolin Chen (5):
      iommu/tegra-smmu: Unwrap tegra_smmu_group_get
      iommu/tegra-smmu: Expand mutex protection range
      iommu/tegra-smmu: Use fwspec in tegra_smmu_(de)attach_dev
      iommu/tegra-smmu: Rework tegra_smmu_probe_device()
      iommu/tegra-smmu: Add PCI support

Rob Clark (1):
      iommu/arm-smmu: Add a way for implementations to influence SCTLR

Robin Murphy (2):
      iommu/arm-smmu: Use new devm_krealloc()
      iommu/io-pgtable: Remove tlb_flush_leaf

Sai Prakash Ranjan (4):
      iommu/arm-smmu: Add support for pagetable config domain attribute
      iommu/arm-smmu: Move non-strict mode to use io_pgtable_domain_attr
      iommu: arm-smmu-impl: Use table to list QCOM implementations
      iommu: arm-smmu-impl: Add a space before open parenthesis

Sai Praneeth Prakhya (3):
      iommu: Add support to change default domain of an iommu group
      iommu: Take lock before reading iommu group default domain type
      iommu: Document usage of "/sys/kernel/iommu_groups/<grp_id>/type" file

Suravee Suthikulpanit (1):
      iommu/amd: Add sanity check for interrupt remapping table length macros

Tom Murphy (4):
      iommu: Handle freelists when using deferred flushing in iommu drivers
      iommu: Add iommu_dma_free_cpu_cached_iovas()
      iommu: Allow the dma-iommu api to use bounce buffers
      iommu/vt-d: Convert intel iommu driver to the iommu ops

Vijayanand Jitta (2):
      iommu/iova: Retry from last rb tree node if iova search fails
      iommu/iova: Free global iova rcache on iova alloc failure

Will Deacon (10):
      Merge branch 'stable/for-linus-5.10-rc2' of git://git.kernel.org/.../konrad/swiotlb into for-next/iommu/vt-d
      Merge branch 'for-next/iommu/io-pgtable-domain-attr' into for-next/iommu/arm-smmu
      Merge branch 'for-next/iommu/arm-smmu' into for-next/iommu/core
      Merge branch 'for-next/iommu/default-domains' into for-next/iommu/core
      Merge branch 'for-next/iommu/iova' into for-next/iommu/core
      Merge branch 'for-next/iommu/misc' into for-next/iommu/core
      Merge branch 'for-next/iommu/svm' into for-next/iommu/core
      Merge branch 'for-next/iommu/tegra-smmu' into for-next/iommu/core
      Merge branch 'for-next/iommu/vt-d' into for-next/iommu/core
      Merge branch 'for-next/iommu/fixes' into for-next/iommu/core

Yang Yingliang (1):
      iommu: return error code when it can't get group

Yong Wu (1):
      iommu: Improve the performance for direct_mapping

 .../ABI/testing/sysfs-kernel-iommu_groups          |  30 +
 Documentation/admin-guide/kernel-parameters.txt    |   5 -
 .../devicetree/bindings/iommu/arm,smmu.yaml        |   9 +-
 drivers/gpu/drm/msm/msm_iommu.c                    |   1 -
 drivers/gpu/drm/panfrost/panfrost_mmu.c            |   7 -
 drivers/iommu/Kconfig                              |   7 +
 drivers/iommu/Makefile                             |   1 +
 drivers/iommu/amd/amd_iommu_types.h                |  19 +-
 drivers/iommu/amd/init.c                           |   6 +-
 drivers/iommu/amd/iommu.c                          |   2 +-
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c    | 244 +++++-
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c        |  59 +-
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h        |  30 +
 drivers/iommu/arm/arm-smmu/arm-smmu-impl.c         |  13 +-
 drivers/iommu/arm/arm-smmu/arm-smmu-nvidia.c       |  17 +-
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c         | 270 +++++-
 drivers/iommu/arm/arm-smmu/arm-smmu.c              |  76 +-
 drivers/iommu/arm/arm-smmu/arm-smmu.h              |   5 +-
 drivers/iommu/arm/arm-smmu/qcom_iommu.c            |   8 -
 drivers/iommu/dma-iommu.c                          | 244 +++++-
 drivers/iommu/intel/Kconfig                        |   1 +
 drivers/iommu/intel/iommu.c                        | 919 +++------------------
 drivers/iommu/intel/svm.c                          |   6 +-
 drivers/iommu/io-pgtable-arm-v7s.c                 |  11 +-
 drivers/iommu/io-pgtable-arm.c                     |  29 +-
 drivers/iommu/ioasid.c                             |  38 +-
 drivers/iommu/iommu-sva-lib.c                      |  86 ++
 drivers/iommu/iommu-sva-lib.h                      |  15 +
 drivers/iommu/iommu.c                              | 276 ++++++-
 drivers/iommu/iova.c                               | 100 ++-
 drivers/iommu/ipmmu-vmsa.c                         |   1 -
 drivers/iommu/msm_iommu.c                          |   7 -
 drivers/iommu/mtk_iommu.c                          |   1 -
 drivers/iommu/tegra-smmu.c                         | 240 ++----
 drivers/xen/swiotlb-xen.c                          |   3 +-
 include/linux/dma-iommu.h                          |   8 +
 include/linux/io-pgtable.h                         |  19 +-
 include/linux/ioasid.h                             |  10 +-
 include/linux/iommu.h                              |   2 +
 include/linux/iova.h                               |  21 -
 include/linux/swiotlb.h                            |  10 +-
 kernel/dma/swiotlb.c                               |  22 +-
 42 files changed, 1613 insertions(+), 1265 deletions(-)
 create mode 100644 drivers/iommu/iommu-sva-lib.c
 create mode 100644 drivers/iommu/iommu-sva-lib.h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ