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 for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <aDmght5YpHmJ6qZ2@8bytes.org>
Date: Fri, 30 May 2025 14:11:50 +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.dev
Subject: [git pull] IOMMU Updates for Linux v6.16

Hi Linus,

Please note that I alread sent you the fixes branch for v6.15-rc7, thus
the actual merge diff-stat you will get is different from the one below.
With that in mind:

The following changes since commit a5806cd506af5a7c19bcd596e4708b5c464bfd21:

  Linux 6.15-rc7 (2025-05-18 13:57:29 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux.git tags/iommu-updates-v6.16

for you to fetch changes up to 879b141b7cfa09763f932f15f19e9bc0bcb020d5:

  Merge branches 'fixes', 'apple/dart', 'arm/smmu/updates', 'arm/smmu/bindings', 'fsl/pamu', 'mediatek', 'renesas/ipmmu', 's390', 'intel/vt-d', 'amd/amd-vi' and 'core' into next (2025-05-23 17:14:32 +0200)

----------------------------------------------------------------
IOMMU Updates for Linux v6.16:

Including:

	- Core:
	  - Introduction of iommu-pages infrastructure to consolitate page-table
	    allocation code among hardware drivers. This is ground-work for more
	    generalization in the future.
	  - Remove IOMMU_DEV_FEAT_SVA and IOMMU_DEV_FEAT_IOPF feature flags.
	  - Convert virtio-iommu to domain_alloc_paging().
	  - KConfig cleanups.
	  - Some small fixes for possible overflows and race conditions.

	- Intel VT-d driver:
	   - Restore WO permissions on second-level paging entries.
	   - Use ida to manage domain id.
	   - Miscellaneous cleanups.

	- AMD-Vi:
	  - Make sure notifiers finish running before module unload.
	  - Add support for HTRangeIgnore feature.
	  - Allow matching ACPI HID devices without matching UIDs.

	- ARM-SMMU:
	  - SMMUv2:
	    - Recognise the compatible string for SAR2130P MDSS in the Qualcomm
	      driver, as this device requires an identity domain.
	    - Fix Adreno stall handling so that GPU debugging is more robust and
	      doesn't e.g. result in deadlock.
	  - SMMUv3:
	    - Fix ->attach_dev() error reporting for unrecognised domains.
	  - IO-pgtable:
	    - Allow clients (notably, drivers that process requests from
	      userspace) to silence warnings when mapping an already-mapped IOVA.

	- S390:
	  - Add support for additional table regions.

	- Mediatek:
	  - Add support for MT6893 MM IOMMU.

	- Some smaller fixes and improvements in various other drivers.

----------------------------------------------------------------
AngeloGioacchino Del Regno (3):
      dt-bindings: iommu: mediatek: Add binding for MT6893 MM IOMMU
      iommu/mediatek: Add support for Dimensity 1200 MT6893 MM IOMMU
      iommu/mediatek: Fix compatible typo for mediatek,mt6893-iommu-mm

Arnd Bergmann (2):
      iommu: ipmmu-vmsa: avoid Wformat-security warning
      iommu/io-pgtable-arm: dynamically allocate selftest device struct

Chen Ni (1):
      iommu: apple-dart: Remove unnecessary NULL check before free_io_pgtable_ops()

Colin Ian King (1):
      iommu/fsl_pamu: remove trailing space after \n

Connor Abbott (3):
      iommu/arm-smmu-qcom: Enable threaded IRQ for Adreno SMMUv2/MMU500
      iommu/arm-smmu: Move handing of RESUME to the context fault handler
      iommu/arm-smmu-qcom: Make set_stall work when the device is on

Dmitry Baryshkov (1):
      iommu/arm-smmu-qcom: Add SAR2130P MDSS compatible

Jason Gunthorpe (33):
      iommu/terga: Do not use struct page as the handle for as->pd memory
      iommu/tegra: Do not use struct page as the handle for pts
      iommu/pages: Remove __iommu_alloc_pages()/__iommu_free_pages()
      iommu/pages: Make iommu_put_pages_list() work with high order allocations
      iommu/pages: Remove the order argument to iommu_free_pages()
      iommu/pages: Remove iommu_free_page()
      iommu/pages: De-inline the substantial functions
      iommu/pages: Formalize the freelist API
      iommu/riscv: Convert to use struct iommu_pages_list
      iommu/amd: Convert to use struct iommu_pages_list
      iommu: Change iommu_iotlb_gather to use iommu_page_list
      iommu/pages: Remove iommu_put_pages_list_old and the _Generic
      iommu/pages: Move from struct page to struct ioptdesc and folio
      iommu/pages: Move the __GFP_HIGHMEM checks into the common code
      iommu/pages: Allow sub page sizes to be passed into the allocator
      iommu/amd: Change rlookup, irq_lookup, and alias to use kvalloc()
      iommu/amd: Use roundup_pow_two() instead of get_order()
      iommu/riscv: Update to use iommu_alloc_pages_node_lg2()
      iommu: Update various drivers to pass in lg2sz instead of order to iommu pages
      iommu/pages: Remove iommu_alloc_page/pages()
      iommu/pages: Remove iommu_alloc_page_node()
      iommu/amd: Use iommu_alloc_pages_node_sz() for the IRT
      iommu/vtd: Remove iommu_alloc_pages_node()
      iommu/arm-smmu-v3: Put iopf enablement in the domain attach path
      iommu: Remove IOMMU_DEV_FEAT_SVA
      iommu/virtio: Break out bypass identity support into a global static
      iommu: Add domain_alloc_identity()
      iommu/virtio: Move to domain_alloc_paging()
      iommu: Do not call domain_alloc() in iommu_sva_domain_alloc()
      iommu: Hide ops.domain_alloc behind CONFIG_FSL_PAMU
      iommu: Protect against overflow in iommu_pgsize()
      iommu/vt-d: Restore WO permissions on second-level paging entries
      iommu: Clear the freelist after iommu_put_pages_list()

Joerg Roedel (1):
      Merge branches 'fixes', 'apple/dart', 'arm/smmu/updates', 'arm/smmu/bindings', 'fsl/pamu', 'mediatek', 'renesas/ipmmu', 's390', 'intel/vt-d', 'amd/amd-vi' and 'core' into next

Lu Baolu (11):
      iommu/vt-d: Put iopf enablement in domain attach path
      iommufd/selftest: Put iopf enablement in domain attach path
      dmaengine: idxd: Remove unnecessary IOMMU_DEV_FEAT_IOPF
      uacce: Remove unnecessary IOMMU_DEV_FEAT_IOPF
      iommufd: Remove unnecessary IOMMU_DEV_FEAT_IOPF
      iommu: Remove iommu_dev_enable/disable_feature()
      iommu: Allow attaching static domains in iommu_attach_device_pasid()
      iommu: Cleanup comments for dev_enable/disable_feat
      iommu/vt-d: Use ida to manage domain id
      iommu/vt-d: Replace spin_lock with mutex to protect domain ida
      iommu/vt-d: Restore context entry setup order for aliased devices

Mario Limonciello (1):
      iommu/amd: Allow matching ACPI HID devices without matching UIDs

Matthew Rosato (5):
      iommu/s390: set appropriate IOTA region type
      iommu/s390: support cleanup of additional table regions
      iommu/s390: support iova_to_phys for additional table regions
      iommu/s390: support map/unmap for additional table regions
      iommu/s390: allow larger region tables

Qinxin Xia (1):
      iommu/arm-smmu-v3: Fix incorrect return in arm_smmu_attach_dev

Rob Clark (1):
      iommu/io-pgtable-arm: Add quirk to quiet WARN_ON()

Robin Murphy (3):
      iommu: Avoid introducing more races
      iommu: Split out and tidy up Arm Kconfig
      iommu: Handle yet another race around registration

Rolf Eike Beer (5):
      iommu: remove duplicate selection of DMAR_TABLE
      iommu: make inclusion of intel directory conditional
      iommu: make inclusion of amd directory conditional
      iommu: make inclusion of riscv directory conditional
      iommu: make inclusion of arm/arm-smmu-v3 directory conditional

Sairaj Kodilkar (1):
      iommu/amd: Add support for HTRangeIgnore feature

Sean Christopherson (1):
      iommu/amd: Ensure GA log notifier callbacks finish running before module unload

Tushar Dave (1):
      iommu: Skip PASID validation for devices without PASID capability

Wei Wang (2):
      iommu/vt-d: Eliminate pci_physfn() in dmar_find_matched_satc_unit()
      iommu/vt-d: Change dmar_ats_supported() to return boolean

 .../devicetree/bindings/iommu/mediatek,iommu.yaml  |   4 +
 arch/s390/include/asm/pci_dma.h                    |   3 +
 drivers/accel/amdxdna/aie2_pci.c                   |  13 +-
 drivers/dma/idxd/init.c                            |  41 +--
 drivers/iommu/Kconfig                              | 158 +---------
 drivers/iommu/Makefile                             |   6 +-
 drivers/iommu/amd/Makefile                         |   2 +-
 drivers/iommu/amd/amd_iommu.h                      |   2 +
 drivers/iommu/amd/amd_iommu_types.h                |  10 +-
 drivers/iommu/amd/init.c                           |  94 +++---
 drivers/iommu/amd/io_pgtable.c                     |  38 +--
 drivers/iommu/amd/io_pgtable_v2.c                  |  12 +-
 drivers/iommu/amd/iommu.c                          |  94 +++---
 drivers/iommu/amd/ppr.c                            |   2 +-
 drivers/iommu/apple-dart.c                         |   3 +-
 drivers/iommu/arm/Kconfig                          | 144 +++++++++
 drivers/iommu/arm/Makefile                         |   3 +-
 drivers/iommu/arm/arm-smmu-v3/Makefile             |   2 +-
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c    |  86 +----
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c        | 138 +++++----
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h        |  39 +--
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom-debug.c   |   9 +
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c         |  44 ++-
 drivers/iommu/arm/arm-smmu/arm-smmu.c              |   6 +
 drivers/iommu/dma-iommu.c                          |  11 +-
 drivers/iommu/exynos-iommu.c                       |  12 +-
 drivers/iommu/fsl_pamu_domain.c                    |   2 +-
 drivers/iommu/intel/Makefile                       |   7 +-
 drivers/iommu/intel/dmar.c                         |  14 +-
 drivers/iommu/intel/iommu.c                        | 244 ++++++---------
 drivers/iommu/intel/iommu.h                        |  62 +++-
 drivers/iommu/intel/irq_remapping.c                |  12 +-
 drivers/iommu/intel/nested.c                       |  20 +-
 drivers/iommu/intel/pasid.c                        |  13 +-
 drivers/iommu/intel/pasid.h                        |   1 -
 drivers/iommu/intel/prq.c                          |   7 +-
 drivers/iommu/intel/svm.c                          |   9 +-
 drivers/iommu/io-pgtable-arm.c                     |  58 ++--
 drivers/iommu/io-pgtable-dart.c                    |  23 +-
 drivers/iommu/iommu-pages.c                        | 119 +++++++
 drivers/iommu/iommu-pages.h                        | 195 ++++--------
 drivers/iommu/iommu-sva.c                          |  18 +-
 drivers/iommu/iommu.c                              | 150 ++++-----
 drivers/iommu/iommufd/device.c                     |  59 ++--
 drivers/iommu/iommufd/eventq.c                     |  48 +--
 drivers/iommu/iommufd/iommufd_private.h            |   6 -
 drivers/iommu/iommufd/selftest.c                   |  57 +++-
 drivers/iommu/ipmmu-vmsa.c                         |   3 +-
 drivers/iommu/mtk_iommu.c                          |  37 ++-
 drivers/iommu/riscv/Makefile                       |   2 +-
 drivers/iommu/riscv/iommu.c                        |  43 +--
 drivers/iommu/rockchip-iommu.c                     |  14 +-
 drivers/iommu/s390-iommu.c                         | 345 +++++++++++++++++++--
 drivers/iommu/sun50i-iommu.c                       |   6 +-
 drivers/iommu/tegra-smmu.c                         | 111 +++----
 drivers/iommu/virtio-iommu.c                       | 187 ++++++-----
 drivers/misc/uacce/uacce.c                         |  40 ---
 .../memory/mediatek,mt6893-memory-port.h           | 288 +++++++++++++++++
 include/linux/adreno-smmu-priv.h                   |   6 +-
 include/linux/io-pgtable.h                         |   8 +
 include/linux/iommu.h                              |  65 ++--
 61 files changed, 1884 insertions(+), 1371 deletions(-)
 create mode 100644 drivers/iommu/arm/Kconfig
 create mode 100644 drivers/iommu/iommu-pages.c
 create mode 100644 include/dt-bindings/memory/mediatek,mt6893-memory-port.h

Please pull.

Thanks,

	Joerg

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ