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: <YIwRbkQcElemYSjz@8bytes.org>
Date:   Fri, 30 Apr 2021 16:17:18 +0200
From:   Joerg Roedel <joro@...tes.org>
To:     Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     Will Deacon <will@...nel.org>, linux-kernel@...r.kernel.org,
        iommu@...ts.linux-foundation.org
Subject: [git pull] IOMMU Updates for Linux v5.13

Hi Linus,

The following changes since commit d434405aaab7d0ebc516b68a8fc4100922d7f5ef:

  Linux 5.12-rc7 (2021-04-11 15:16:13 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git tags/iommu-updates-v5.13

for you to fetch changes up to 2d471b20c55e13c98d1dba413bf2de618e89cdac:

  iommu: Streamline registration interface (2021-04-16 17:20:45 +0200)

----------------------------------------------------------------
IOMMU Updates for Linux v5.13

Including:

	- Big cleanup of almost unsused parts of the IOMMU API by
	  Christoph Hellwig. This mostly affects the Freescale PAMU
	  driver.

	- New IOMMU driver for Unisoc SOCs

	- ARM SMMU Updates from Will:

	  - SMMUv3: Drop vestigial PREFETCH_ADDR support
	  - SMMUv3: Elide TLB sync logic for empty gather
	  - SMMUv3: Fix "Service Failure Mode" handling
    	  - SMMUv2: New Qualcomm compatible string

	- Removal of the AMD IOMMU performance counter writeable check
	  on AMD. It caused long boot delays on some machines and is
	  only needed to work around an errata on some older (possibly
	  pre-production) chips. If someone is still hit by this
	  hardware issue anyway the performance counters will just
	  return 0.

	- Support for targeted invalidations in the AMD IOMMU driver.
	  Before that the driver only invalidated a single 4k page or the
	  whole IO/TLB for an address space. This has been extended now
	  and is mostly useful for emulated AMD IOMMUs.

	- Several fixes for the Shared Virtual Memory support in the
	  Intel VT-d driver

	- Mediatek drivers can now be built as modules

	- Re-introduction of the forcedac boot option which got lost
	  when converting the Intel VT-d driver to the common dma-iommu
	  implementation.

	- Extension of the IOMMU device registration interface and
	  support iommu_ops to be const again when drivers are built as
	  modules.

----------------------------------------------------------------
Christoph Hellwig (23):
      iommu: remove the unused domain_window_disable method
      iommu/fsl_pamu: remove fsl_pamu_get_domain_attr
      iommu/fsl_pamu: remove support for setting DOMAIN_ATTR_GEOMETRY
      iommu/fsl_pamu: merge iommu_alloc_dma_domain into fsl_pamu_domain_alloc
      iommu/fsl_pamu: remove support for multiple windows
      iommu/fsl_pamu: remove ->domain_window_enable
      iommu/fsl_pamu: replace DOMAIN_ATTR_FSL_PAMU_STASH with a direct call
      iommu/fsl_pamu: merge pamu_set_liodn and map_liodn
      iommu/fsl_pamu: merge handle_attach_device into fsl_pamu_attach_device
      iommu/fsl_pamu: enable the liodn when attaching a device
      iommu/fsl_pamu: remove the snoop_id field
      iommu/fsl_pamu: remove the rpn and snoop_id arguments to pamu_config_ppaac
      iommu/fsl_pamu: hardcode the window address and size in pamu_config_ppaace
      iommu: remove DOMAIN_ATTR_PAGING
      iommu: remove DOMAIN_ATTR_GEOMETRY
      iommu: remove DOMAIN_ATTR_NESTING
      iommu: remove iommu_set_cmd_line_dma_api and iommu_cmd_line_dma_api
      iommu: remove DOMAIN_ATTR_IO_PGTABLE_CFG
      iommu: remove iommu_domain_{get,set}_attr
      iommu/amd: Remove the unused device errata code
      iommu/amd: Remove the unused amd_iommu_get_v2_domain function
      iommu/amd: Remove a few unused exports
      iommu/amd: Move a few prototypes to include/linux/amd-iommu.h

Christophe JAILLET (1):
      iommu/vt-d: Fix an error handling path in 'intel_prepare_irq_remapping()'

Chunyan Zhang (3):
      dt-bindings: iommu: add bindings for sprd IOMMU
      iommu: add Unisoc IOMMU basic driver
      iommu/sprd: Fix parameter type warning

Colin Ian King (1):
      iommu/unisoc: Fix spelling mistake "sixe" -> "size"

Dafna Hirschfeld (1):
      iommu/mediatek: Always enable the clk on resume

Jacob Pan (4):
      iommu/vt-d: Enable write protect for supervisor SVM
      iommu/vt-d: Enable write protect propagation from guest
      iommu/vt-d: Reject unsupported page request modes
      iommu/vt-d: Calculate and set flags for handle_mm_fault

Jean-Philippe Brucker (7):
      iommu: Fix comment for struct iommu_fwspec
      iommu/arm-smmu-v3: Use device properties for pasid-num-bits
      iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVA
      iommu/vt-d: Support IOMMU_DEV_FEAT_IOPF
      uacce: Enable IOMMU_DEV_FEAT_IOPF
      iommu: Add a page fault handler
      iommu/arm-smmu-v3: Maintain a SID->device structure

Joerg Roedel (3):
      Merge tag 'arm-smmu-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into arm/smmu
      iommu/fsl-pamu: Fix uninitialized variable warning
      Merge branches 'iommu/fixes', 'arm/mediatek', 'arm/smmu', 'arm/exynos', 'unisoc', 'x86/vt-d', 'x86/amd' and 'core' into next

John Garry (4):
      iova: Add CPU hotplug handler to flush rcaches
      iommu/vt-d: Remove IOVA domain rcache flushing for CPU offlining
      iommu: Delete iommu_dma_free_cpu_cached_iovas()
      iommu: Stop exporting free_iova_fast()

Krzysztof Kozlowski (1):
      iommu/exynos: Remove unneeded local variable initialization

Kyung Min Park (1):
      iommu/vt-d: Disable SVM when ATS/PRI/PASID are not enabled in the device

Longpeng(Mike) (1):
      iommu/vt-d: Force to flush iotlb before creating superpage

Lu Baolu (14):
      iommu/vt-d: Report more information about invalidation errors
      iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry()
      iommu/vt-d: Don't set then clear private data in prq_event_thread()
      iommu/vt-d: Remove unused dma map/unmap trace events
      iommu/vt-d: Remove svm_dev_ops
      iommu/vt-d: Remove SVM_FLAG_PRIVATE_PASID
      iommu/vt-d: Remove unused function declarations
      iommu/vt-d: Make unnecessarily global functions static
      iommu/vt-d: Report right snoop capability when using FL for IOVA
      iommu/vt-d: Report the right page fault address
      iommu/vt-d: Remove WO permissions on second-level paging entries
      iommu/vt-d: Invalidate PASID cache when root/context entry changed
      iommu/vt-d: Avoid unnecessary cache flush in pasid entry teardown
      iommu/vt-d: Fix build error of pasid_enable_wpe() with !X86

Nadav Amit (1):
      iommu/amd: Page-specific invalidations for more than one page

Paul Menzel (2):
      Revert "iommu/amd: Fix performance counter initialization"
      iommu/amd: Put newline after closing bracket in warning

Qi Liu (1):
      iommu/amd: Remove duplicate check of pasids

Robin Murphy (6):
      iommu/dma: Resurrect the "forcedac" option
      iommu/iova: Add rbtree entry helper
      iommu/iova: Improve restart logic
      iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE
      iommu: Statically set module owner
      iommu: Streamline registration interface

Sai Prakash Ranjan (1):
      dt-bindings: arm-smmu: Add compatible for SC7280 SoC

Shameer Kolothum (1):
      iommu: Check dev->iommu in iommu_dev_xxx functions

Shaokun Zhang (1):
      iommu/amd: Remove duplicate check of devid

Suravee Suthikulpanit (1):
      iommu/amd: Remove performance counter pre-initialization test

Xiang Chen (2):
      iommu/arm-smmu-v3: Add a check to avoid invalid iotlb sync
      iommu: Fix a boundary issue to avoid performance drop

Yong Wu (4):
      iommu/mediatek-v1: Allow building as module
      iommu/mediatek: Allow building as module
      iommu/mediatek-v1: Avoid build fail when build as module
      iommu/mediatek-v1: Add error handle for mtk_iommu_probe

Zenghui Yu (1):
      iommu/arm-smmu-v3: Remove the unused fields for PREFETCH_CONFIG command

Zhen Lei (1):
      iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK

 Documentation/admin-guide/kernel-parameters.txt    |  15 +-
 .../devicetree/bindings/iommu/arm,smmu.yaml        |   1 +
 .../devicetree/bindings/iommu/sprd,iommu.yaml      |  57 ++
 arch/powerpc/include/asm/fsl_pamu_stash.h          |  12 +-
 arch/x86/events/amd/iommu.c                        |   1 +
 arch/x86/events/amd/iommu.h                        |  19 -
 drivers/acpi/arm64/iort.c                          |  13 +-
 drivers/gpu/drm/amd/amdkfd/kfd_iommu.c             |   4 -
 drivers/gpu/drm/msm/adreno/adreno_gpu.c            |   5 +-
 drivers/iommu/Kconfig                              |  16 +-
 drivers/iommu/Makefile                             |   3 +-
 drivers/iommu/amd/amd_iommu.h                      |   2 -
 drivers/iommu/amd/amd_iommu_types.h                |   1 -
 drivers/iommu/amd/init.c                           |  59 +-
 drivers/iommu/amd/iommu.c                          | 201 ++----
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c        | 247 +++++---
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h        |  18 +-
 drivers/iommu/arm/arm-smmu/arm-smmu.c              | 117 +---
 drivers/iommu/arm/arm-smmu/arm-smmu.h              |   2 +-
 drivers/iommu/arm/arm-smmu/qcom_iommu.c            |   5 +-
 drivers/iommu/dma-iommu.c                          |  23 +-
 drivers/iommu/exynos-iommu.c                       |   7 +-
 drivers/iommu/fsl_pamu.c                           | 293 +--------
 drivers/iommu/fsl_pamu.h                           |  12 +-
 drivers/iommu/fsl_pamu_domain.c                    | 693 ++-------------------
 drivers/iommu/fsl_pamu_domain.h                    |  46 --
 drivers/iommu/intel/dmar.c                         |  72 ++-
 drivers/iommu/intel/iommu.c                        | 233 +++----
 drivers/iommu/intel/irq_remapping.c                |   2 +-
 drivers/iommu/intel/pasid.c                        |  75 ++-
 drivers/iommu/intel/pasid.h                        |   6 +-
 drivers/iommu/intel/svm.c                          |  82 ++-
 drivers/iommu/io-pgfault.c                         | 461 ++++++++++++++
 drivers/iommu/iommu-sva-lib.h                      |  53 ++
 drivers/iommu/iommu.c                              | 161 +++--
 drivers/iommu/iova.c                               |  96 ++-
 drivers/iommu/ipmmu-vmsa.c                         |   6 +-
 drivers/iommu/msm_iommu.c                          |   5 +-
 drivers/iommu/mtk_iommu.c                          |  41 +-
 drivers/iommu/mtk_iommu_v1.c                       |  98 +--
 drivers/iommu/of_iommu.c                           |   5 -
 drivers/iommu/omap-iommu.c                         |   5 +-
 drivers/iommu/rockchip-iommu.c                     |   5 +-
 drivers/iommu/s390-iommu.c                         |   4 +-
 drivers/iommu/sprd-iommu.c                         | 575 +++++++++++++++++
 drivers/iommu/sun50i-iommu.c                       |   5 +-
 drivers/iommu/tegra-gart.c                         |   5 +-
 drivers/iommu/tegra-smmu.c                         |   5 +-
 drivers/iommu/virtio-iommu.c                       |   6 +-
 drivers/misc/uacce/uacce.c                         |  39 +-
 drivers/soc/fsl/qbman/qman_portal.c                |  55 +-
 drivers/vfio/vfio_iommu_type1.c                    |  31 +-
 drivers/vhost/vdpa.c                               |  10 +-
 include/linux/amd-iommu.h                          |  30 +-
 include/linux/cpuhotplug.h                         |   2 +-
 include/linux/dma-iommu.h                          |   7 +-
 include/linux/intel-iommu.h                        |  10 +-
 include/linux/intel-svm.h                          |  23 +-
 include/linux/io-pgtable.h                         |   4 -
 include/linux/iommu.h                              | 141 ++---
 include/linux/iova.h                               |   6 +-
 include/trace/events/intel_iommu.h                 | 120 ----
 include/uapi/linux/iommu.h                         |   3 +-
 63 files changed, 2117 insertions(+), 2242 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/iommu/sprd,iommu.yaml
 create mode 100644 drivers/iommu/io-pgfault.c
 create mode 100644 drivers/iommu/sprd-iommu.c

Please pull.

Thanks,

	Joerg

Download attachment "signature.asc" of type "application/pgp-signature" (834 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ