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: <20170712114201.GA20642@8bytes.org>
Date:   Wed, 12 Jul 2017 13:42:08 +0200
From:   Joerg Roedel <joro@...tes.org>
To:     Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     linux-kernel@...r.kernel.org, iommu@...ts.linux-foundation.org
Subject: [git pull] IOMMU Updates for Linux v4.13

Hi Linus,

Just a note before the request: This pull-request is against v4.12-rc7,
as I didn't rebase my next branch against the final v4.12. This means
that the two fixes that went into v4.12 already are also listed in the
shortlog and diffstat below.

Doing the pull-request against v4.12 blows up the diffstat, so I decided
to do the request against the last merge-base. Please let me know if I
should merge against v4.12 and re-send the request.

On a side note, there is a small and trivial merge-conflict in
Documentation/arm64/silicon-errata.txt coming with this pull-request.

With this in mind:

The following changes since commit c0bc126f97fb929b3ae02c1c62322645d70eb408:

  Linux 4.12-rc7 (2017-06-25 18:30:05 -0700)

are available in the git repository at:

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

for you to fetch changes up to 6a7086431fa18df7d03b1ed0126426c79b38dc8c:

  Merge branches 'iommu/fixes', 'arm/rockchip', 'arm/renesas', 'arm/smmu', 'arm/core', 'x86/vt-d', 'x86/amd', 's390' and 'core' into next (2017-06-28 14:45:02 +0200)

----------------------------------------------------------------
IOMMU Updates for Linux v4.13

This update comes with:

	* Support for lockless operation in the ARM io-pgtable code.
	  This is an important step to solve the scalability problems in
	  the common dma-iommu code for ARM

	* Some Errata workarounds for ARM SMMU implemenations

	* Rewrite of the deferred IO/TLB flush code in the AMD IOMMU
	  driver. The code suffered from very high flush rates, with the
	  new implementation the flush rate is down to ~1% of what it
	  was before

	* Support for amd_iommu=off when booting with kexec. Problem
	  here was that the IOMMU driver bailed out early without
	  disabling the iommu hardware, if it was enabled in the old
	  kernel

	* The Rockchip IOMMU driver is now available on ARM64

	* Align the return value of the iommu_ops->device_group
	  call-backs to not miss error values

	* Preempt-disable optimizations in the Intel VT-d and common
	  IOVA code to help Linux-RT

	* Various other small cleanups and fixes

----------------------------------------------------------------
Arvind Yadav (4):
      iommu/io-pgtable-arm-v7s: constify dummy_tlb_ops.
      iommu: arm-smmu-v3: make of_device_ids const
      iommu: arm-smmu: Handle return of iommu_device_register.
      iommu/vt-d: Constify intel_dma_ops

CQ Tang (1):
      iommu/vt-d: Helper function to query if a pasid has any active users

Geetha Sowjanya (1):
      iommu/arm-smmu-v3: Add workaround for Cavium ThunderX2 erratum #126

Joerg Roedel (23):
      iommu/amd: Ratelimit io-page-faults per device
      iommu/amd: Rip out old queue flushing code
      iommu/amd: Add per-domain flush-queue data structures
      iommu/amd: Make use of the per-domain flush queue
      iommu/amd: Add locking to per-domain flush-queue
      iommu/amd: Add flush counters to struct dma_ops_domain
      iommu/amd: Add per-domain timer to flush per-cpu queues
      iommu/amd: Remove queue_release() function
      iommu/amd: Suppress IO_PAGE_FAULTs in kdump kernel
      iommu/amd: Disable IOMMUs at boot if they are enabled
      iommu/amd: Rename free_on_init_error()
      iommu/amd: Add new init-state IOMMU_CMDLINE_DISABLED
      iommu/amd: Check for error states first in iommu_go_to_state()
      iommu/amd: Set global pointers to NULL after freeing them
      iommu/amd: Free IOMMU resources when disabled on command line
      iommu/amd: Remove amd_iommu_disabled check from amd_iommu_detect()
      iommu/amd: Free already flushed ring-buffer entries before full-check
      Merge branch 'for-joerg/arm-smmu/updates' of git://git.kernel.org/.../will/linux into arm/smmu
      iommu/s390: Use iommu_group_get_for_dev() in s390_iommu_add_device()
      iommu: Return ERR_PTR() values from device_group call-backs
      iommu/omap: Return ERR_PTR in device_group call-back
      iommu: Warn once when device_group callback returns NULL
      Merge branches 'iommu/fixes', 'arm/rockchip', 'arm/renesas', 'arm/smmu', 'arm/core', 'x86/vt-d', 'x86/amd', 's390' and 'core' into next

Linu Cherian (2):
      ACPI/IORT: Fixup SMMUv3 resource size for Cavium ThunderX2 SMMUv3 model
      iommu/arm-smmu-v3: Add workaround for Cavium ThunderX2 erratum #74

Magnus Damm (8):
      iommu/ipmmu-vmsa: Remove platform data handling
      iommu/ipmmu-vmsa: Rework interrupt code and use bitmap for context
      iommu/ipmmu-vmsa: Break out utlb parsing code
      iommu/ipmmu-vmsa: Break out domain allocation code
      iommu/ipmmu-vmsa: Add new IOMMU_DOMAIN_DMA ops
      iommu/ipmmu-vmsa: Use fwspec iommu_priv on ARM64
      iommu/ipmmu-vmsa: Drop LPAE Kconfig dependency
      iommu/ipmmu-vmsa: Fix pgsize_bitmap semicolon typo

Peter Xu (1):
      iommu/vt-d: Unwrap __get_valid_domain_for_dev()

Robert Richter (1):
      iommu/arm-smmu-v3, acpi: Add temporary Cavium SMMU-V3 IORT model number definitions

Robin Murphy (10):
      iommu/iova: Sort out rbtree limit_pfn handling
      iommu/arm-smmu: Plumb in new ACPI identifiers
      iommu/io-pgtable-arm-v7s: Check table PTEs more precisely
      iommu/io-pgtable-arm: Improve split_blk_unmap
      iommu/io-pgtable-arm-v7s: Refactor split_blk_unmap
      iommu/io-pgtable: Introduce explicit coherency
      iommu/io-pgtable-arm: Support lockless operation
      iommu/io-pgtable-arm-v7s: Support lockless operation
      iommu/arm-smmu: Remove io-pgtable spinlock
      iommu/arm-smmu-v3: Remove io-pgtable spinlock

Sebastian Andrzej Siewior (2):
      iommu/iova: Don't disable preempt around this_cpu_ptr()
      iommu/vt-d: Don't disable preemption while accessing deferred_flush()

Shaohua Li (1):
      iommu/vt-d: Correctly disable Intel IOMMU force on

Simon Xue (1):
      iommu/rockchip: Enable Rockchip IOMMU on ARM64

Sunil Goutham (1):
      iommu/arm-smmu-v3: Increase CMDQ drain timeout value

Suravee Suthikulpanit (1):
      iommu/amd: Fix interrupt remapping when disable guest_mode

Tobias Klauser (2):
      iommu/vt-d: Constify irq_domain_ops
      iommu/amd: Constify irq_domain_ops

Tom Lendacky (2):
      iommu/amd: Reduce amount of MMIO when submitting commands
      iommu/amd: Reduce delay waiting for command buffer space

Will Deacon (2):
      iommu/io-pgtable: depend on !GENERIC_ATOMIC64 when using COMPILE_TEST with LPAE
      iommu/io-pgtable-arm: Use dma_wmb() instead of wmb() when publishing table

shameer (1):
      iommu/arm-smmu-v3: Enable ACPI based HiSilicon CMD_PREFETCH quirk(erratum 161010701)

 Documentation/arm64/silicon-errata.txt             |   3 +
 .../devicetree/bindings/iommu/arm,smmu-v3.txt      |  12 +
 arch/x86/kernel/tboot.c                            |   2 +-
 drivers/acpi/arm64/iort.c                          |  83 +++-
 drivers/iommu/Kconfig                              |   6 +-
 drivers/iommu/amd_iommu.c                          | 464 +++++++++++++--------
 drivers/iommu/amd_iommu_init.c                     |  44 +-
 drivers/iommu/amd_iommu_types.h                    |   3 +
 drivers/iommu/arm-smmu-v3.c                        | 229 ++++++----
 drivers/iommu/arm-smmu.c                           |  64 +--
 drivers/iommu/dma-iommu.c                          |   2 +-
 drivers/iommu/intel-iommu.c                        |  26 +-
 drivers/iommu/intel-svm.c                          |  30 ++
 drivers/iommu/intel_irq_remapping.c                |   4 +-
 drivers/iommu/io-pgtable-arm-v7s.c                 | 183 +++++---
 drivers/iommu/io-pgtable-arm.c                     | 189 ++++++---
 drivers/iommu/io-pgtable.h                         |   6 +
 drivers/iommu/iommu.c                              |  17 +-
 drivers/iommu/iova.c                               |  30 +-
 drivers/iommu/ipmmu-vmsa.c                         | 353 +++++++++++++---
 drivers/iommu/omap-iommu.c                         |   2 +-
 drivers/iommu/s390-iommu.c                         |  15 +-
 include/linux/intel-svm.h                          |  20 +
 23 files changed, 1235 insertions(+), 552 deletions(-)

Please pull.

Thanks,

	Joerg

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ