* [git pull] IOMMU Updates for Linux v7.3
@ 2026-08-17 15:22 Joerg Roedel
0 siblings, 0 replies; only message in thread
From: Joerg Roedel @ 2026-08-17 15:22 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Will Deacon, linux-kernel, iommu
Hi Linus,
The following changes since commit db2ddb87143519e20a95aa36c60b36107b736a58:
Linux 7.2-rc7 (2026-08-09 14:54:50 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux.git tags/iommu-updates-v7.3
for you to fetch changes up to 3c6a2bac15247bc4f28125247ff89165324612fe:
Merge branches 'arm/smmu/updates', 'arm/smmu/bindings', 'mediatek', 'qualcomm/msm', 'rockchip', 'ti/omap', 'riscv', 'intel/vt-d', 'amd/amd-vi', 'core' and 'typos' into next (2026-08-11 09:12:19 +0200)
----------------------------------------------------------------
IOMMU updates for Linux v7.3:
- ARM SMMUv2:
- Device-tree binding updates for Qualcomm Eliza, Maili, Shikra and
IPQ9650 SoCs.
- Add support for Qualcomm SM8450.
- Numerous fixes for lifetime and ordering issues found by Sashiko in
the Qualcomm driver.
- ARM SMMUv3:
- Fix interrupt type in device-tree binding example for NVIDIA CMDQV.
- Numerous fixes for issues identified by Sashiko in the NVIDIA CMDQV
driver.
- Work around TLB erratum T264-SMMU-3 on Tegra264 by repeating the
invalidation sequence.
- Add support for HAFT (hardware access flag in table entries) when
using SVA.
- Probe for 52-bit addressing with a page size smaller than 64k ('DS')
but don't do anything with it for now.
- Minor driver improvements (remove sort_nonatomic(), use
readl_relaxed_poll_timeout_atomic(), fix IOPF teardown ordering).
- Intel VT-d:
- Consolidation of complex enablement logic into a clean, priority-based
state machine.
- Support for the DMA_REMAP_OPT_OUT flag from the VT-d v5.2
specification.
- An update to cache_tag_flush_devtlb_psi() to use full-range constants
instead of modifying shared variables for CACHE_TAG_NESTING_DEVTLB.
- A fix for the UCTP context-table slot when copying root entries.
- Fixes for several pre-existing issues reported by Sashiko.
- General code cleanup and refinement.
- AMD IOMMU:
- Add SNP page-mode-0 support, enabling passthrough, v2 DMA page
tables and host SVA on supporting systems.
- Fix invalid PPR handling, COMPLETE_PPR responses and guest-mode
reporting.
- Improve Southbridge IOAPIC validation and remove the dependency on
hard-coded device IDs.
- Fix PCI-device lifetime, debugfs and diagnostic issues.
- IOMMU core and IOMMUFD:
- Restore serialization of the shared MSI-page list.
- Fix SVA-handle publication and several IOMMUFD reference and error
path leaks.
- Return the expected zero result for invalid generic page-table
translations.
- Allocate per-CPU IOVA magazines lazily to reduce memory use on
large systems.
- PCI ATS:
- Make VF support checks account for the associated PF and validate
that VF and PF Smallest Translation Unit settings agree.
- Platform drivers:
- Fix Qualcomm runtime-PM, probe unwind, fault reporting and page
table initialization races.
- Rework Rockchip state handling and fix clock, probe and stale-fault
handling.
- Fix smaller issues in the MSM and MediaTek drivers.
- Device-tree bindings:
- Add new Qualcomm SMMU compatibles, convert the OMAP IOMMU binding
to YAML, and fix the Tegra264 CMDQV interrupt example.
- Various smaller cleanups, documentation fixes and a Rust IOMMU
safety/readability improvement.
----------------------------------------------------------------
Akari Tsuyukusa (1):
iommu/mediatek-v1: Fix off-by-one in MT2701_LARB_NR_MAX
Akhil P Oommen (1):
dt-bindings: arm-smmu: Document GPU SMMU for Eliza SoC
Andrew Jones (1):
iommu/dma: Restore locking around msi_page_list
Ashish Mhetre (4):
dt-bindings: iommu: Fix interrupt type in example
iommu/arm-smmu-v3: Add CFGI/TLBI-repeat workaround
iommu/arm-smmu-v3-iommufd: Report CFGI/TLBI-repeat erratum
iommu/arm-smmu-v3: Enable CFGI/TLBI-repeat workaround on Tegra264
Bhargav Joshi (1):
dt-bindings: iommu: ti,omap-iommu: Convert to DT schema
Bibek Kumar Patro (1):
dt-bindings: arm-smmu: Document GPU SMMU for Shikra SoC
Desnes Nunes (1):
iommu/vt-d: Fix UCTP context table slot when copying root entries
Dmitry Antipov (1):
iommu/vt-d: Use kstrtoint_from_user() in dmar_perf_latency_write()
Esteban Urrutia (1):
iommu/arm-smmu-qcom: Add SM8450 MDSS compatible
Guanghui Feng (1):
iommu/vt-d: Fix CACHE_TAG_NESTING_DEVTLB polluting shared variables in flush loop
Haoxiang Li (1):
iommu/qcom: Remove sysfs device on probe failure path
Jiaxing Hu (2):
iommu/rockchip: Take all DT clocks
iommu/rockchip: Clear stale page faults before enabling stall
Jingyi Wang (1):
dt-bindings: arm-smmu: qcom: Add compatible for Maili SoC
Joerg Roedel (1):
Merge branches 'arm/smmu/updates', 'arm/smmu/bindings', 'mediatek', 'qualcomm/msm', 'rockchip', 'ti/omap', 'riscv', 'intel/vt-d', 'amd/amd-vi', 'core' and 'typos' into next
Kathiravan Thirumoorthy (1):
dt-bindings: arm-smmu: qcom: add compatible for IPQ9650 SoC
Kevin Tian (9):
iommu/vt-d: Fix no_iommu to disable platform opt-in
iommu/vt-d: Force requesting ACS when tboot is enabled
iommu/vt-d: Remove dead code when CONFIG_INTEL_IOMMU is not set
iommu/vt-d: Consolidate dmar policy management and force_on logic
iommu/vt-d: Use dmar_can_force_on() for platform opt-in
iommu/vt-d: Call dmar_can_force_on() for tboot opt-in
iommu/vt-d: Remove the 'force_on' variable
iommu/vt-d: Remove dmar_disabled
iommu/vt-d: Support the new DMA_REMAP_OPT_OUT flag bit
Kuan-Wei Chiu (1):
iommu/arm-smmu-v3: Replace sort_nonatomic() with sort()
Li RongQing (2):
iommu/amd: Fix undefined behavior in devid_write debugfs function
iommu/vt-d: Use logical OR operator for privilege mode check
Logan Odell (1):
iommu/iova: Move CPU magazine init to first insert
Lu Baolu (5):
iommu/vt-d: Cache max domain ID to avoid redundant calculation
iommu/vt-d: Clear Present bit before tearing down copied context entry
iommu/vt-d: Fix iopf_refcount leak on RID domain replacement
iommu/vt-d: Tear down scalable-mode context on probe failure
iommu/vt-d: Flush context cache with correct SID when tearing down aliases
Mukesh Ojha (6):
iommu/qcom: Fix inverted fault report check in qcom_iommu_fault()
iommu/qcom: Use devm_pm_runtime_enable() in qcom_iommu_device_probe()
iommu/qcom: Check pm_runtime_resume_and_get() return in probe
iommu/qcom: Fix pgtbl_ops leak in qcom_iommu_init_domain() error path
iommu/qcom: Publish pgtbl_ops before releasing init_mutex
iommu/qcom: Enable clocks before hardware access in qcom_iommu_ctx_probe()
Nicolin Chen (13):
iommu/arm-smmu-v3: Declare eats_s1chk and eats_trans as host-endian u64
iommu/arm-smmu-v3: Factor out CMDQ batch force-sync conditions
iommu/tegra241-cmdqv: Publish an LVCMDQ only after it is fully initialized
iommu/tegra241-cmdqv: Synchronize the error ISR against VINTF (de)init
iommu/tegra241-cmdqv: Harden error-map index handling in the error ISR
iommu/tegra241-cmdqv: Don't run the error ISR before probe sets up vintfs
iommu/tegra241-cmdqv: Don't fall back to a freed smmu after devm_krealloc()
iommu/tegra241-cmdqv: Free the error IRQ before tearing down VINTFs
iommu/tegra241-cmdqv: Reject a vSID wider than the SID_MATCH field
iommu/tegra241-cmdqv: Require exactly one Stream ID for a vSID
iommu/tegra241-cmdqv: Fix VINTF0 leak on the init-failure path
iommu/tegra241-cmdqv: Rate-limit the error ISR's log message
iommu/arm-smmu-v3: Support IDR5.DS and widen the TLBI SCALE field
Nicolás Antinori (1):
rust: iommu: replace core::mem::zeroed with Zeroable::zeroed
Pan Chuang (1):
iommu: arm: Remove redundant dev_err()/dev_err_probe()
Pengpeng Hou (1):
iommu/msm: Limit the per-master Machine ID list
Pranjal Shrivastava (5):
PCI/ATS: Ensure pci_ats_supported() is PF-aware for VFs
PCI/ATS: Validate STU for VFs in pci_prepare_ats()
iommu/arm-smmu-v3: Standardize ATS enablement failure reporting
iommu/vt-d: Fail probe on ATS configuration failure
iommu/arm-smmu-v3: Convert to use atomic poll timeout
Robin Murphy (2):
arm64: Add override for MMFR1.HAFDBS
iommu/arm-smmu-v3: Add HAFT support for SVA
Shameer Kolothum (2):
iommu/arm-smmu-v3: Manage teardown with devm
iommu/tegra241-cmdqv: Fix CMD_SYNC use-after-free on teardown
Shuai Xue (5):
iommu/amd: Put PCI device after handling PPR faults
iommu/sva: Set handle->dev before the SVA handle is visible
iommufd: Avoid locking internal accesses during unmap
iommufd: Release current IOAS on xa_store() failure
iommupt: Return zero for invalid iova_to_phys() ranges
Simon Xue (1):
iommu/rockchip: Drop global rk_ops in favor of per-device ops
Uwe Kleine-König (The Capable Hub) (1):
iommu/riscv: Drop superfluous zeros in pci_device_id array
Vasant Hegde (6):
iommu/amd: Fix incorrect device ID in invalid PASID error message
iommu/amd: Introduce PPR_TAG_LAST_PAGE() macro
iommu/amd: Fix missing CMD_COMPLETE_PPR response for invalid PPR requests
iommu/amd: Rate limit INVALID_PPR_REQUEST error logging
iommu/amd: Fix GN bit setting in COMPLETE_PPR_REQUEST command
iommu/amd: Add SNP page mode 0 support
Vladimir Zapolskiy (1):
iommu/msm: Return -ENOMEM on memory allocation failure in probe
Wei Wang (3):
iommu/amd: Prevent SB IOAPIC from overriding IVRS validation errors
iommu/amd: Fix false positive in SB IOAPIC IVRS validation
iommu/amd: Dynamically verify Southbridge IOAPIC via PCI config space
Weimin Xiong (1):
iommu/msm: Unwind probe state on registration failure
ZhaoJinming (2):
iommu/rockchip: Fix silent probe success when all MMU resources fail
iommu/vt-d: Fix copied_tables bitmap leak on error in copy_translation_tables
xiongweimin (6):
iommu/vt-d: Fix spelling of "guarantees" in comment
iommu: Fix possessive "its" in group remove kdoc
iova: Fix spelling of "reserved" in comment
iommu/arm-smmu-v3: Fix grammar in comment
iommu/mtk: Fix spelling of correspondence in comment
iommu/amd: Fix grammar and typos in comments
Documentation/admin-guide/kernel-parameters.txt | 3 +
Documentation/arch/arm64/silicon-errata.rst | 2 +
.../devicetree/bindings/iommu/arm,smmu.yaml | 8 +
.../bindings/iommu/nvidia,tegra264-cmdqv.yaml | 2 +-
.../devicetree/bindings/iommu/ti,omap-iommu.txt | 59 ------
.../devicetree/bindings/iommu/ti,omap-iommu.yaml | 114 +++++++++++
arch/arm64/kernel/pi/idreg-override.c | 2 +
drivers/iommu/amd/amd_iommu_types.h | 9 +-
drivers/iommu/amd/debugfs.c | 12 +-
drivers/iommu/amd/init.c | 99 ++++++---
drivers/iommu/amd/iommu.c | 75 +++++--
drivers/iommu/amd/ppr.c | 12 +-
.../iommu/arm/arm-smmu-v3/arm-smmu-v3-iommufd.c | 7 +-
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 24 ++-
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 188 +++++++++++++----
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 13 +-
drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c | 226 ++++++++++++++-------
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 1 +
drivers/iommu/arm/arm-smmu/arm-smmu.c | 9 +-
drivers/iommu/arm/arm-smmu/qcom_iommu.c | 39 ++--
drivers/iommu/dma-iommu.c | 13 ++
drivers/iommu/generic_pt/iommu_pt.h | 2 +-
drivers/iommu/intel/cache.c | 5 +-
drivers/iommu/intel/debugfs.c | 16 +-
drivers/iommu/intel/dmar.c | 98 ++++++++-
drivers/iommu/intel/iommu.c | 154 ++++++++------
drivers/iommu/intel/iommu.h | 67 ++++--
drivers/iommu/intel/pasid.c | 9 +-
drivers/iommu/intel/prq.c | 2 +-
drivers/iommu/intel/svm.c | 2 +-
drivers/iommu/iommu-sva.c | 2 +-
drivers/iommu/iommu.c | 4 +-
drivers/iommu/iommufd/device.c | 4 +-
drivers/iommu/iommufd/ioas.c | 2 +
drivers/iommu/iova.c | 31 +--
drivers/iommu/msm_iommu.c | 15 +-
drivers/iommu/mtk_iommu.c | 2 +-
drivers/iommu/mtk_iommu_v1.c | 2 +-
drivers/iommu/riscv/iommu-pci.c | 6 +-
drivers/iommu/rockchip-iommu.c | 117 +++++------
drivers/pci/ats.c | 13 +-
include/linux/dmar.h | 1 +
include/uapi/linux/iommufd.h | 17 +-
rust/kernel/iommu/pgtable.rs | 3 +-
44 files changed, 1027 insertions(+), 464 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/iommu/ti,omap-iommu.txt
create mode 100644 Documentation/devicetree/bindings/iommu/ti,omap-iommu.yaml
Please pull.
Thanks,
Joerg
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-17 15:22 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-17 15:22 [git pull] IOMMU Updates for Linux v7.3 Joerg Roedel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).